Messages in this thread | | | Subject | Re: [PATCH 00/11] scsi: libsas: Remove in_interrupt() check | From | John Garry <> | Date | Tue, 22 Dec 2020 12:54:58 +0000 |
| |
On 22/12/2020 12:30, Jason Yan wrote: >> return event; >> >> >> So default for phy->ha->event_thres is 32, and I can't imagine that > > The default value is 1024.
Ah, 32 is the minimum allowed set via sysfs.
> >> anyone has ever reconfigured this via sysfs or even required a value >> that large. Maybe Jason (cc'ed) knows better. It's an arbitrary value >> to say that the PHY is malfunctioning. I do note that there is the >> circular path sas_alloc_event() -> sas_notify_phy_event() -> >> sas_alloc_event() there also. >> >> Anyway, if the 32x event memories were per-allocated, maybe there is a >> clean method to manage this memory, which even works in atomic >> context, so we could avoid this rework (ignoring the context bugs you >> reported for a moment). I do also note that the sas_event_cache size >> is not huge. >> > > Pre-allocated memory is an option.(Which we have tried at the very > beginnig by Wang Yijing.)
Right, I remember this, but I think the concern was having a proper method to manage this pre-allocated memory then. And same problem now.
> > Or directly use GFP_ATOMIC is maybe better than passing flags from lldds. >
I think that if we don't really need this, then should not use it.
Thanks, John
| |