Re: [PATCH v2 04/19] scsi: mvsas: Pass gfp_t flags to libsas event notifiers

2021-01-12 Thread Ahmed S. Darwish
On Tue, Jan 12, 2021 at 03:46:42PM +, Christoph Hellwig wrote: > > } else if (mwq->handler & EXP_BRCT_CHG) { > > phy->phy_event &= ~EXP_BRCT_CHG; > > - sas_notify_port_event(sas_phy, PORTE_BROADCAST_RCVD); > > + sas_notify_port_event_gfp(sas_phy, PORTE_BROADC

Re: [PATCH v2 04/19] scsi: mvsas: Pass gfp_t flags to libsas event notifiers

2021-01-12 Thread Christoph Hellwig
> } else if (mwq->handler & EXP_BRCT_CHG) { > phy->phy_event &= ~EXP_BRCT_CHG; > - sas_notify_port_event(sas_phy, PORTE_BROADCAST_RCVD); > + sas_notify_port_event_gfp(sas_phy, PORTE_BROADCAST_RCVD, > GFP_ATOMIC); Please don't add pointless lines > 80 ch

[PATCH v2 04/19] scsi: mvsas: Pass gfp_t flags to libsas event notifiers

2021-01-12 Thread Ahmed S. Darwish
mvsas calls the non _gfp version of the libsas event notifiers API, leading to the buggy call chains below: mvsas/mv_sas.c: mvs_work_queue() [process context] spin_lock_irqsave(mvs_info::lock, ) -> libsas/sas_event.c: sas_notify_phy_event() -> sas_alloc_event() -> in_interrup