On Thu, Aug 15, 2019 at 09:05:25PM +0200, Michal Hocko wrote: > This is what you claim and I am saying that fs_reclaim is about a > restricted reclaim context and it is an ugly hack. It has proven to > report false positives. Maybe it can be extended to a generic reclaim. > I haven't tried that. Do not aim to try it.
Okay, great, I think this has been very helpful, at least for me, thanks. I did not know fs_reclaim was so problematic, or the special cases about OOM 'reclaim'. On this patch, I have no general objection to enforcing drivers to be non-blocking, I'd just like to see it done with the existing lockdep can't sleep detection rather than inventing some new debugging for it. I understand this means the debugging requires lockdep enabled and will not run in production, but I'm of the view that is OK and in line with general kernel practice. The last detail is I'm still unclear what a GFP flags a blockable invalidate_range_start() should use. Is GFP_KERNEL OK? Lockdep has complained on that in past due to fs_reclaim - how do you know if it is a false positive? Thanks again, Jason