ROSE: Misc fixes
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest7 patches 11 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/7 | NET: ROSE: Fix race in SIOCRSSL2CALL ioctl accessing userspace.net/ | +4 | 0 replies | |
| 2/7 | NET: ROSE: Factor our common code from functions.net/ | +18 | 0 replies | |
| 3/7 | NET: ROSE: Protect rose_callsign with a spinlockinclude/ net/ net/ | +17 | 4 replies | |
| 4/7 | NET: ROSE: Make neighbour->use atomicinclude/ net/ net/ +2 more | +31 | 0 replies | |
| 5/7 | NET: ROSE: Make rose_neigh_no atomic.net/ | +3 | 1 reply | |
| 6/7 | NET: ROSE: Move return statements hidden behind an if to their own linenet/ net/ | +7 | 0 replies | |
| 7/7 | NET: ROSE: Fix formatting.include/ | +1 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/7] ROSE: Misc fixes
DaveM's recent email regarding a crash triggered by the attempt to send IP over rose prompted me to review the ROSE code again. I found four race conditions and from what Bernard writes in a recent email about wrong rose_neighbour->use counters one of these fixes may actually be a practical problem.
- Patch [1/7] fixes a race that is unlikely to hit in a typical system and even if so the result would be a very small number of packets attempted to be sent to the wrong destination.
- Patch [2/7] is a cleanup preparing for [3/7]
- Patch [3/7] fixes the kernel side of the rose_callsign access race by protecting it with a spinlock.
- Patch [4/7] makes struct rose_neigh member use an atomic_t. This was noticed by code review but hopefully fixes the mismatching use counter recently reported by Bernard Pidoux.
- Patch [5/7] converts rose_neigh_no into an atomic_t. Previously there was a race condition which may have resulted in multiple rose_route structures using the same rose_neigh_no value and rose_neigh_no being incremented by fewer than the number of racing accesses.
- Patch [6/7] and [7/7] fix some coding style issues.
Test reports would be apreciated.
Thanks,
Ralf
Ralf Baechle (7):
NET: ROSE: Fix race in SIOCRSSL2CALL ioctl accessing userspace.
NET: ROSE: Factor our common code from functions.
NET: ROSE: Protect rose_callsign with a spinlock
NET: ROSE: Make neighbour->use atomic
NET: ROSE: Make rose_neigh_no atomic.
NET: ROSE: Move return statements hidden behind an if to their own line
NET: ROSE: Fix formatting.
include/net/rose.h | 7 +++++-- net/rose/af_rose.c | 30 +++++++++++++++++++++--------- net/rose/rose_in.c | 13 +++++++------ net/rose/rose_link.c | 38 ++++++++++++++++++++++++-------------- net/rose/rose_route.c | 32 +++++++++++++++++--------------- net/rose/rose_subr.c | 3 ++- net/rose/rose_timer.c | 3 ++- 7 files changed, 78 insertions(+), 48 deletions(-)
Signature · 1 line
1.7.4.4