: Some BUGs and deadlocks fixes and a bit of concomitant cleanups.
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest8 patches 2 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/8 | : Do not call free_netdev for already registered device.drivers/ | +9 | 0 replies | |
| 2/8 | : Don't create bondings with % in their names.drivers/ | +4 | 0 replies | |
| 3/8 | : Merge two calls to dev_alloc_name.drivers/ | +4 | 0 replies | |
| 4/8 | : Remove redundant argument from bond_create.drivers/ drivers/ drivers/ | +4 | 0 replies | |
| 5/8 | : Lost semaphores unlock in one of bonding_store_bonds error paths.drivers/ | +5 | 0 replies | |
| 6/8 | : Relax unneeded _safe lists iterations.drivers/ drivers/ | +17 | 0 replies | |
| 7/8 | : Remove unneeded list_empty checks.drivers/ | +0 | 0 replies | |
| 8/8 | : Deadlock between bonding_store_bonds and bond_destroy_sysfs.drivers/ | +4 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/8][BONDING]: Some BUGs and deadlocks fixes and a bit of concomitant cleanups.
Hi Jay, Dave.
While looking at the bonding driver I found four bugs visible with the unaided eye. Here are the fixes, but I also cleaned up some places, I just couldn't come by. If you consider those cleanups to be for next merge window, just kick me and I'll resubmit this set without them.
Found BUGs summary:
1. Bad error path in bond_create - the registered device should not be released with free_netdev;
2. Specifying the 'bond%d' name when creating a new device results in a new device with literally 'bond%d' name, not bond<digit> like for other drivers;
3. Lost unlock of rtnl and bonding_rwsem in bonding_store_bonds;
4. Deadlock between bonding_store_bonds and bond_destroy_sysfs on module unload.
The clean ups are
1. Minor alloc_netdev consolidation after fix #2
2. Redundant 3rd argument for bond_create;
3. Unneeded _safe list iterations in some places;
4. Unneeded list_empty checks in some places.
Details in patches.