Re: [PATCH v2 0/4] firewire: core: call address handlers ouside RCU read-side critical section
Takashi Sakamoto <[email protected]> Mon, 11 Aug 2025 22:28:17 +0900
| Newsgroups | gmane.linux.kernel.firewire.devel,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
On Sun, Aug 03, 2025 at 09:20:11PM +0900, Takashi Sakamoto wrote: > Hi, > > This is an updated version of my previous patchset[1]. > > In the earlier version, XArray was used to collect FCP address handlers. > However, in typical system, only a few handlers are registered, and > using XArray for this purpose was unnecessarily complex and inefficient. > A simpler and faster approach is more appropriate here. > > In this v2 patchset, the kernel stack is used initially to store up to 4 > handlers. If more than 4 handlers are registered in the system, a buffer > is dynamically allocated from the kernel heap. > > [1] https://lore.kernel.org/lkml/[email protected]/ > > Takashi Sakamoto (4): > firewire: core: use reference counting to invoke address handlers > safely > firewire: core: call handler for exclusive regions outside RCU > read-side critical section > firewire: core: call FCP address handlers outside RCU read-side > critical section > firewire: core: reallocate buffer for FCP address handlers when more > than 4 are registered > > drivers/firewire/core-transaction.c | 91 +++++++++++++++++++++++++---- > include/linux/firewire.h | 4 ++ > 2 files changed, 85 insertions(+), 10 deletions(-) > > > base-commit: 7061835997daba9e73c723c85bd70bc4c44aef77 Applied to for-linus branch. Thanks Takashi Sakamoto