IrDA locking fixes for 2.5.X on the way...

Jean Tourrilhes (jt@bougret.hpl.hp.com)
Thu, 29 Aug 2002 15:46:58 -0700


Hi Linus,

The next few e-mails will contain the "trivial" patches
necessary to get rid of "save_flags(flags);cli();" in the IrDA
stack. I guess you were right, I only needed to add a few spinlocks
left and right.
I would like those patches to go quickly in 2.5.X, because
they cover lot's of code, so any other changes to the IrDA stack is
likely to make those patches not apply. That's also the reason why I
separated the ALI fixes, as some wanabe IrDA hackers are playing with
it (and creating compile errors).
The patches go in TWO phases. The first 3 patches are
independant and fixes things needed by the locking fixes. The
remaining 4 patches are also independant but depend on the 3 previous
patches. Patches done and tested on 2.5.32.
I've got still other patches in my patch queue, and I'll send
that to Jeff in a few weeks.

Regards,

Jean

--------------------------------------------------------
[FEATURE] : Add a new feature to the IrDA stack
[CORRECT] : Fix to have the correct/expected behaviour
[CRITICA] : Fix potential kernel crash

ir252_hashbin_fixes-4.diff :
--------------------------
o [CRITICA] Remove correct IAS Attribute/Object even if name is dup'ed
o [CORRECT] Make irqueue 64 bit compliant (__u32 -> long)
o [FEATURE] Don't use random handle for IrLMP handle, use self
Remove dependancy on random generator in stack init

ir252_lap_unique_saddr.diff :
---------------------------
o [CORRECT] Make sure LAP address is sane, which mean not NULL,
not BROADCAST and not already in use by another link.

ir255_nsc_speed-4.diff :
----------------------
o [FEATURE] Cleanly change speed back to 9600bps
o [CORRECT] Change speed under spinlock/irq disabled
o [CORRECT] Make sure interrupt handlers don't mess irq mask
o [CORRECT] Don't change speed if we haven't fully finished to Tx

ir252_hashbin_locking_fixes-4.diff :
----------------------------------
o [FEATURE] New hashbin locking scheme for irqueue
o [FEATURE] Get rid of old broken hashbin locking schemes
o [FEATURE] Lock hasbins while enumerating it in various places
o [CORRECT] Remove all remaining "save_flags(flags);cli();"
o [CORRECT] Fix two "return with spinlock" found by Stanford checker

ir252_ircomm_locking_fixes-4.diff :
---------------------------------
o [FEATURE] Do the hashbin locking fixes for IrCOMM and IrLAN
o [CORRECT] Remove all "save_flags(flags);cli();" in IrCOMM/IrLAN
o [CORRECT] Fix other locking issues in IrCOMM

ir252_drivers_locking_fixes-3.diff :
----------------------------------
o [CORRECT] Remove all "save_flags(flags);cli();" in IrDA driver
o [FEATURE] Rework broken locking in irport
o [FEATURE] Finish locking cleanup in nsc-ircc
o [FEATURE] Improve locking in smc-ircc & w83977af_ir

ir252_ali_locking_fixes-3.diff :
------------------------------
o [CORRECT] Remove all "save_flags(flags);cli();" in IrDA ali driver
o [CORRECT] Fix stupid compilation error
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/