From mboxrd@z Thu Jan 1 00:00:00 1970 From: Borislav Petkov Subject: Re: [PATCH 1/2] fs: optimize mpage_readpage() Date: Fri, 4 Jun 2010 12:18:48 +0200 Message-ID: <20100604101848.GA6367@a1.tnic> References: <1275095926-18345-1-git-send-email-xiaosuo@gmail.com> <20100529121019.GA25092@liondog.tnic> <20100604071906.GC31073@ZenIV.linux.org.uk> <20100604081322.GA31027@liondog.tnic> <20100604083031.GE31073@ZenIV.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Cc: Changli Gao , linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org To: Al Viro Return-path: Content-Disposition: inline In-Reply-To: <20100604083031.GE31073@ZenIV.linux.org.uk> Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org From: Al Viro Date: Fri, Jun 04, 2010 at 09:30:31AM +0100 > On Fri, Jun 04, 2010 at 10:13:22AM +0200, Borislav Petkov wrote: > > > > > - bio = do_mpage_readpage(bio, page, 1, &last_block_in_bio, > > > > > + bio = do_mpage_readpage(NULL, page, 1, &last_block_in_bio, > > > Right, the uninitialized warning above happens when you remove the NULL > > assignment, i.e. > > > > struct bio *bio; > > > > ... > > > > bio = do_mpage_readpage(bio, ...) > > WTF? His patch does *NOT* leave you with bio = do_mpage_readpage(bio, ...), > it replaces that with bio = do_mpage_readpage(NULL, ...). > > Which variant has produced a warning? > > > But(!), in the mpage_readpage(), bio _absolutely_ has to be NULL because > > it is checked if being so later in do_mpage_readpage(), so this one is a > > complete different story. > > > > To cut a long story short, you're correct, gcc is b0rked when warning > > about passing addresses of variables to functions which only write to > > them. > > To make it even shorter, you've misapplied the patch. Correct? Yes. -- Regards/Gruss, Boris.