Merge tag 'drm-intel-next-2024-02-27-1' of git://anongit.freedesktop.org/drm/drm...
[sfrench/cifs-2.6.git] / drivers / gpu / drm / i915 / gvt / interrupt.c
index 27bd04053239aa45eb730b6296a24e2a232c7f03..336d079c420793a0a752f52a8fe211f721fe72a7 100644 (file)
@@ -421,7 +421,7 @@ static void init_irq_map(struct intel_gvt_irq *irq)
 #define MSI_CAP_DATA(offset) (offset + 8)
 #define MSI_CAP_EN 0x1
 
-static int inject_virtual_interrupt(struct intel_vgpu *vgpu)
+static void inject_virtual_interrupt(struct intel_vgpu *vgpu)
 {
        unsigned long offset = vgpu->gvt->device_info.msi_cap_offset;
        u16 control, data;
@@ -433,10 +433,10 @@ static int inject_virtual_interrupt(struct intel_vgpu *vgpu)
 
        /* Do not generate MSI if MSIEN is disabled */
        if (!(control & MSI_CAP_EN))
-               return 0;
+               return;
 
        if (WARN(control & GENMASK(15, 1), "only support one MSI format\n"))
-               return -EINVAL;
+               return;
 
        trace_inject_msi(vgpu->id, addr, data);
 
@@ -450,10 +450,9 @@ static int inject_virtual_interrupt(struct intel_vgpu *vgpu)
         * returned and don't inject interrupt into guest.
         */
        if (!test_bit(INTEL_VGPU_STATUS_ATTACHED, vgpu->status))
-               return -ESRCH;
-       if (vgpu->msi_trigger && eventfd_signal(vgpu->msi_trigger, 1) != 1)
-               return -EFAULT;
-       return 0;
+               return;
+       if (vgpu->msi_trigger)
+               eventfd_signal(vgpu->msi_trigger);
 }
 
 static void propagate_event(struct intel_gvt_irq *irq,