On 2/25/20 12:23 AM, Willy Tarreau wrote: > As indicated in commit 2e90ca6 ("floppy: check FDC index for errors > before assigning it") there are some surprising effects in the floppy > driver due to some macros referencing global or local variables while > at first glance being inoffensive. > > This patchset aims at removing these macros and replacing all of their > occurrences by the equivalent code. Most of the work was done under > Coccinelle's assistance, and it was verified that the resulting binary > code is exactly the same as the original one. > > The aim is not to make the driver prettier, as Linus mentioned it's > already not pretty. It only aims at making potential bugs more visible, > given almost all latest changes to this driver were fixes for out-of- > bounds and similar bugs. > > As a side effect, some lines got longer, causing checkpatch to complain > a bit, but I preferred to let it complain as I didn't want to break them > apart as I'm already seeing the trap of going too far here. > > The patches are broken by macro (or sets of macros when relevant) so > that each of them remains reviewable. > > I can possibly go a bit further in the cleanup but I haven't used > floppies for a few years now and am not interested in doing too much > on this driver by lack of use cases. For patches 1-10. [x] eye checked the changes [x] bloat-o-meter and .s diff show no real changes [x] tested that kernel builds after every patch [x] floppy targeted fuzzing with kasan+ubsan reveals no *new* issues (required mainly to test the previous patch) If Linus has no objections (regarding his review) I would prefer to accept 1-10 patches rather to resend them again. They seems complete to me as the first step. I've placed the patches here: https://github.com/evdenis/linux-floppy/commits/floppy-next Thanks, Denis