RE: [PATCH v6 2/6] drm/i915/gvt: OpRegion support for GVT-g

From: Chen, Xiaoguang
Date: Wed May 31 2017 - 02:45:54 EST




>-----Original Message-----
>From: Zhenyu Wang [mailto:zhenyuw@xxxxxxxxxxxxxxx]
>Sent: Wednesday, May 31, 2017 2:30 PM
>To: Chen, Xiaoguang <xiaoguang.chen@xxxxxxxxx>
>Cc: Tian, Kevin <kevin.tian@xxxxxxxxx>; intel-gfx@xxxxxxxxxxxxxxxxxxxxx; linux-
>kernel@xxxxxxxxxxxxxxx; chris@xxxxxxxxxxxxxxxxxx; alex.williamson@xxxxxxxxxx;
>kraxel@xxxxxxxxxx; Niu, Bing <bing.niu@xxxxxxxxx>; intel-gvt-
>dev@xxxxxxxxxxxxxxxxxxxxx; Wang, Zhi A <zhi.a.wang@xxxxxxxxx>; Lv, Zhiyuan
><zhiyuan.lv@xxxxxxxxx>
>Subject: Re: [PATCH v6 2/6] drm/i915/gvt: OpRegion support for GVT-g
>
>On 2017.05.31 06:22:28 +0000, Chen, Xiaoguang wrote:
>> >> @@ -467,6 +555,15 @@ static int intel_vgpu_create(struct kobject
>> >> *kobj,
>> >struct mdev_device *mdev)
>> >> vgpu->vdev.mdev = mdev;
>> >> mdev_set_drvdata(mdev, vgpu);
>> >>
>> >> + ret = intel_vgpu_reg_init_opregion(vgpu);
>> >> + if (ret) {
>> >> + gvt_vgpu_err("create OpRegion failed\n");
>> >> + goto out;
>> >> + }
>> >
>> >Still need to handle error path for created vgpu.
>> Just checked the code, if initialize the opregion failed we should first release
>vfio/mdev releated work(maybe call intel_vgpu_release function) and then
>destroy the vgpu. Will update in the next version.
>>
>
>Better to init opregion inside of create vgpu and do proper error handling there
>too.
Then we must add a new entry in intel_gvt_mpt interface something like "create_opregion".

>
>--
>Open Source Technology Center, Intel ltd.
>
>$gpg --keyserver wwwkeys.pgp.net --recv-keys 4D781827