Linus Torvalds writes: (Summary) and sadly, we should probably disable the locking ones by default
too, because while they *work*, sparse only handles static cases, and
we have way too many dynamically conditional cases that are outside
the scope of what sparse does.
the scope of what sparse does.
It would probably be good to disable things that are fundamentally hard to fix, and aim for a clean sparse build, and maybe people would start using it at least for user pointer checking where it really does work.
work.
Of course, even there it depends on pointers _statically_ being user pointers, but happily we do largely follow that rule.
the scope of what sparse does.
It would probably be good to disable things that are fundamentally hard to fix, and aim for a clean sparse build, and maybe people would start using it at least for user pointer checking where it really does work.
work.
Of course, even there it depends on pointers _statically_ being user pointers, but happily we do largely follow that rule.