From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: MIME-Version: 1.0 In-Reply-To: References: <1474570415-14938-1-git-send-email-mawilcox@linuxonhyperv.com> <1474570415-14938-3-git-send-email-mawilcox@linuxonhyperv.com> From: Cedric Blancher Date: Sun, 25 Sep 2016 21:40:58 +0200 Message-ID: Subject: Re: [PATCH 2/2] radix-tree: Fix optimisation problem To: Linus Torvalds Cc: Ross Zwisler , Matthew Wilcox , Konstantin Khlebnikov , Andrew Morton , "Kirill A. Shutemov" , linux-fsdevel , Linux MM , Linux Kernel Mailing List , Matthew Wilcox Content-Type: text/plain; charset=UTF-8 Sender: owner-linux-mm@kvack.org List-ID: LGTM, except that #define is_sibling_entry should be IS_SIBLING_ENTRY Ced On 25 September 2016 at 21:04, Linus Torvalds wrote: > On Sun, Sep 25, 2016 at 11:04 AM, Linus Torvalds > 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 [https://plus.google.com/u/0/+CedricBlancher/] Institute Pasteur -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@kvack.org. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: email@kvack.org