LGTM, except that #define is_sibling_entry should be IS_SIBLING_ENTRY Ced On 25 September 2016 at 21:04, Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: > On Sun, Sep 25, 2016 at 11:04 AM, Linus Torvalds > <torvalds@xxxxxxxxxxxxxxxxxxxx> wrote: >> >> The more I look at that particular piece of code, the less I like it. It's >> buggy shit. It needs to be rewritten entirely too actually check for sibling >> entries, not that ad-hoc arithmetic crap. > > Here's my attempt at cleaning the mess up. > > I'm not claiming it's perfect, but I think it's better. It gets rid of > the ad-hoc arithmetic in radix_tree_descend(), and just makes all that > be inside the is_sibling_entry() logic instead. Which got renamed and > made to actually return the main sibling. So now there is at least > only *one* piece of code that does that range comparison, and I don't > think there is any huge need to explain what's going on, because the > "magic" is unconditional. > > Willy? > > Linus -- Cedric Blancher <cedric.blancher@xxxxxxxxx> [https://plus.google.com/u/0/+CedricBlancher/] Institute Pasteur -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>