Message ID | 20230729013535.1070024-30-seanjc@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/gvt: KVM: KVMGT fixes and page-track cleanups | expand |
On 7/29/2023 4:35 AM, Sean Christopherson wrote: > Open code gpa_to_gfn() in kvmgt_page_track_write() and drop KVMGT's > dependency on kvm_host.h, i.e. include only kvm_page_track.h. KVMGT > assumes "gfn == gpa >> PAGE_SHIFT" all over the place, including a few > lines below in the same function with the same gpa, i.e. there's no > reason to use KVM's helper for this one case. > > No functional change intended. > > Reviewed-by: Yan Zhao <yan.y.zhao@intel.com> > Tested-by: Yongwei Ma <yongwei.ma@intel.com> > Signed-off-by: Sean Christopherson <seanjc@google.com> > --- > drivers/gpu/drm/i915/gvt/gvt.h | 3 ++- > drivers/gpu/drm/i915/gvt/kvmgt.c | 2 +- > 2 files changed, 3 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/gvt/gvt.h b/drivers/gpu/drm/i915/gvt/gvt.h > index 2d65800d8e93..53a0a42a50db 100644 > --- a/drivers/gpu/drm/i915/gvt/gvt.h > +++ b/drivers/gpu/drm/i915/gvt/gvt.h > @@ -34,10 +34,11 @@ > #define _GVT_H_ > > #include <uapi/linux/pci_regs.h> > -#include <linux/kvm_host.h> > #include <linux/vfio.h> > #include <linux/mdev.h> > > +#include <asm/kvm_page_track.h> > + > #include "i915_drv.h" > #include "intel_gvt.h" > > diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c > index eb50997dd369..aaed3969f204 100644 > --- a/drivers/gpu/drm/i915/gvt/kvmgt.c > +++ b/drivers/gpu/drm/i915/gvt/kvmgt.c > @@ -1585,7 +1585,7 @@ static void kvmgt_page_track_write(gpa_t gpa, const u8 *val, int len, > > mutex_lock(&info->vgpu_lock); > > - if (kvmgt_gfn_is_write_protected(info, gpa_to_gfn(gpa))) > + if (kvmgt_gfn_is_write_protected(info, gpa >> PAGE_SHIFT)) > intel_vgpu_page_track_handler(info, gpa, > (void *)val, len); > Reviewed-by: Zhi Wang <zhi.a.wang@intel.com>
diff --git a/drivers/gpu/drm/i915/gvt/gvt.h b/drivers/gpu/drm/i915/gvt/gvt.h index 2d65800d8e93..53a0a42a50db 100644 --- a/drivers/gpu/drm/i915/gvt/gvt.h +++ b/drivers/gpu/drm/i915/gvt/gvt.h @@ -34,10 +34,11 @@ #define _GVT_H_ #include <uapi/linux/pci_regs.h> -#include <linux/kvm_host.h> #include <linux/vfio.h> #include <linux/mdev.h> +#include <asm/kvm_page_track.h> + #include "i915_drv.h" #include "intel_gvt.h" diff --git a/drivers/gpu/drm/i915/gvt/kvmgt.c b/drivers/gpu/drm/i915/gvt/kvmgt.c index eb50997dd369..aaed3969f204 100644 --- a/drivers/gpu/drm/i915/gvt/kvmgt.c +++ b/drivers/gpu/drm/i915/gvt/kvmgt.c @@ -1585,7 +1585,7 @@ static void kvmgt_page_track_write(gpa_t gpa, const u8 *val, int len, mutex_lock(&info->vgpu_lock); - if (kvmgt_gfn_is_write_protected(info, gpa_to_gfn(gpa))) + if (kvmgt_gfn_is_write_protected(info, gpa >> PAGE_SHIFT)) intel_vgpu_page_track_handler(info, gpa, (void *)val, len);