On Fri, Aug 25, 2023 at 09:59:23AM +0200, David Hildenbrand wrote: > Especially, we do have bigger ->huge_fault changes coming up: > > https://lkml.kernel.org/r/20230818202335.2739663-1-willy@xxxxxxxxxxxxx > > If the driver is not in the tree, people don't care. > > You really should try upstreaming that driver. > > > So this patch here adds complexity (which I don't like) in order to keep an > OOT driver working -- possibly for a short time. I'm tempted to say "please > fix your driver to not use huge faults in that scenario, it is no longer > supported". > > But I'm just about to vanish for 1.5 week into vacation :) > > @Willy, what are your thoughts? Fundamentally there was a bad assumption with the original patch -- it assumed that the only reason to support ->huge_fault was for DAX, and that's not true. It's just that the only drivers in-tree which support ->huge_fault do so in order to support DAX. Keeping a driver out of tree is always a risky and costly proposition. It will continue to be broken by core kernel changes, particularly if/when it does unusual things. I think the complexity is entirely on us. I think there's a simpler way to handle the problem, but I'd start by turning all of this "admin and app get to control when THP are used" nonsense into no-ops.