Commit e884a8a
committed
firewire: core: call FCP address handlers outside RCU read-side critical section
The former commit added reference counting to ensure safe invocations of
address handlers. Unlike the exclusive-region address handlers, all FCP
address handlers should be called on receiving an FCP request.
This commit uses the part of kernel stack to collect address handlers up
to 4 within the section, then invoke them outside of the section.
Reference counting ensures that each handler remains valid and safe to
call.
Lifting the limitation of supporting only 4 handlers is left for next
work.
Link: https://lore.kernel.org/r/20250803122015.236493-4-o-takashi@sakamocchi.jp
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>1 parent e8cf687 commit e884a8a
1 file changed
+19
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
950 | 950 | | |
951 | 951 | | |
952 | 952 | | |
| 953 | + | |
| 954 | + | |
| 955 | + | |
953 | 956 | | |
954 | 957 | | |
955 | 958 | | |
956 | 959 | | |
957 | 960 | | |
958 | | - | |
959 | | - | |
| 961 | + | |
| 962 | + | |
| 963 | + | |
960 | 964 | | |
961 | 965 | | |
962 | 966 | | |
| |||
977 | 981 | | |
978 | 982 | | |
979 | 983 | | |
| 984 | + | |
| 985 | + | |
980 | 986 | | |
981 | 987 | | |
982 | 988 | | |
983 | 989 | | |
984 | | - | |
985 | | - | |
986 | | - | |
987 | | - | |
| 990 | + | |
| 991 | + | |
| 992 | + | |
988 | 993 | | |
989 | 994 | | |
990 | 995 | | |
991 | 996 | | |
| 997 | + | |
| 998 | + | |
| 999 | + | |
| 1000 | + | |
| 1001 | + | |
| 1002 | + | |
| 1003 | + | |
| 1004 | + | |
992 | 1005 | | |
993 | 1006 | | |
994 | 1007 | | |
| |||
0 commit comments