> Then just drop the fget_light() 'optimisation' and always take a reference
> (atomic on f_count) regardless of single-thread or not. Instead of dirtying
> f_light, just do the straightforward thing and be with it.
>
> (that is : fget_light() = fget() = no more keeping fput_needed everywhere, and
> convoluted things in some dark sides of the kernel.
And it makes things rather slower for a lot of single threaded applications
on modern systems. Yes, fget_light can be done much more cleanly, but please
don't go around ripping out optimizations just because.