> -----Original Message----- > From: Dexuan Cui > Sent: Tuesday, May 22, 2018 8:18 PM > To: Lorenzo Pieralisi <[email protected]>; Bjorn Helgaas > <[email protected]>; [email protected]; KY Srinivasan > <[email protected]>; Stephen Hemminger <[email protected]>; > [email protected]; [email protected]; [email protected] > Cc: [email protected]; [email protected]; > Haiyang Zhang <[email protected]>; [email protected]; > [email protected] > Subject: [PATCH] PCI: hv: Fix a __local_bh_enable_ip warning in > hv_compose_msi_msg() > > > Commit de0aa7b2f97d ("PCI: hv: Fix 2 hang issues in hv_compose_msi_msg()") > uses local_bh_disable()/enable(), because hv_pci_onchannelcallback() can also > run in tasklet context as the channel event callback. > > With CONFIG_PROVE_LOCKING=y in the latest mainline, or old kernels that > don't have commit f71b74bca637 ("irq/softirqs: Use lockdep to assert IRQs are > disabled/enabled"), it turns out can we trigger a warning at the beginning of > __local_bh_enable_ip(), because the upper layer irq code can call > hv_compose_msi_msg() with local irqs disabled. > > Let's fix the warning by switching to local_irq_save()/restore(). This is not > an > issue because hv_pci_onchannelcallback() is not slow, and it not a hot path. > > Fixes: de0aa7b2f97d ("PCI: hv: Fix 2 hang issues in hv_compose_msi_msg()") > Signed-off-by: Dexuan Cui <[email protected]> > Cc: <[email protected]> > Cc: Stephen Hemminger <[email protected]> > Cc: K. Y. Srinivasan <[email protected]> > ---
Reviewed-by: Haiyang Zhang <[email protected]> Thanks you. _______________________________________________ devel mailing list [email protected] http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel
