On Wed, Jan 25, 2017 at 02:04:56PM +0800, Weinan Li wrote: > Host maintian the hardware's forcewake state, guest don't need and also > can't control it. Although vgpu_read/write bypass forcewake_get/put in MMIO > read/write, but still have separate path called by > "intel_uncore_forcewake_get/put" and > "intel_uncore_forcewake_get/put__locked". Unnecessary MMIO access in guest > waste much CPU cost. Since we full virtualize the MMIO, just ignore the > forcewake get/put in low level. This patch is doing multiple things as you are altering a couple of independent paths at the same time (fw control and mmio funcs). > static void > +vgpu_fw_domains_get(struct drm_i915_private *dev_priv, > + enum forcewake_domains fw_domains) > +{ > + /* Guest driver doesn't need to takes care forcewake. */; > +} > + > +static void > +vgpu_fw_domains_put(struct drm_i915_private *dev_priv, > + enum forcewake_domains fw_domains) > +{ > + /* Guest driver doesn't need to takes care forcewake. */; > +} Or just 1 vgpu_fw_domains_nop() -Chris -- Chris Wilson, Intel Open Source Technology Centre _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx