linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: Andrew Morton <akpm@linux-foundation.org>
To: Miklos Szeredi <miklos@szeredi.hu>
Cc: peterz@infradead.org, linux-kernel@vger.kernel.org,
	linux-fsdevel@vger.kernel.org, linux-mm@kvack.org
Subject: Re: [patch 3/8] mm: rotate_reclaimable_page() cleanup
Date: Tue, 18 Mar 2008 09:45:41 -0700	[thread overview]
Message-ID: <20080318094541.7f19bfe4.akpm@linux-foundation.org> (raw)
In-Reply-To: <E1JbaQk-0005iw-67@pomaz-ex.szeredi.hu>

On Tue, 18 Mar 2008 12:56:34 +0100 Miklos Szeredi <miklos@szeredi.hu> wrote:

> > > -int rotate_reclaimable_page(struct page *page)
> > > +void  rotate_reclaimable_page(struct page *page)
> > >  {
> > > -	struct pagevec *pvec;
> > > -	unsigned long flags;
> > > -
> > > -	if (PageLocked(page))
> > > -		return 1;
> > > -	if (PageDirty(page))
> > > -		return 1;
> > > -	if (PageActive(page))
> > > -		return 1;
> > > -	if (!PageLRU(page))
> > > -		return 1;
> > 
> > Might be me, but I find the above easier to read than

Me too, but (believe it or not) sometimes I will eschew comment ;)

> > > +	if (!PageLocked(page) && !PageDirty(page) && !PageActive(page) &&
> > > +	    PageLRU(page)) {
> > >  
> 
> Matter of taste, returning from a middle of a function is generally to
> be avoided (unless not).

Avoiding multiple returns is more than a matter of taste: the practice is a
source of code bloat, resource leaks and locking errors.

But we do do it quite commonly at the start of the function when checking the
arguments, before the function has actually altered anything.


--
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: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>

  reply	other threads:[~2008-03-18 16:45 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-03-17 19:19 [patch 0/8] fuse: writable mmap + batched write Miklos Szeredi
2008-03-17 19:19 ` [patch 1/8] mm: bdi: export bdi_writeout_inc() Miklos Szeredi, Miklos Szeredi
2008-03-18 11:27   ` Peter Zijlstra
2008-03-18 11:46     ` Miklos Szeredi
2008-03-17 19:19 ` [patch 2/8] mm: Add NR_WRITEBACK_TEMP counter Miklos Szeredi, Miklos Szeredi
2008-03-18  5:05   ` Andrew Morton
2008-03-17 19:19 ` [patch 3/8] mm: rotate_reclaimable_page() cleanup Miklos Szeredi, Miklos Szeredi
2008-03-18 11:31   ` Peter Zijlstra
2008-03-18 11:56     ` Miklos Szeredi
2008-03-18 16:45       ` Andrew Morton [this message]
2008-03-17 19:19 ` [patch 4/8] mm: allow not updating BDI stats in end_page_writeback() Miklos Szeredi, Miklos Szeredi
2008-03-18  5:04   ` Andrew Morton
2008-03-18  8:11     ` Miklos Szeredi
2008-03-18  8:18       ` Andrew Morton
2008-03-18 11:33   ` Peter Zijlstra
2008-03-18 11:59     ` Miklos Szeredi
2008-03-18 12:29       ` Peter Zijlstra
2008-03-18 12:51         ` Miklos Szeredi
2008-03-18 13:08           ` Peter Zijlstra
2008-03-18 13:58             ` Miklos Szeredi
2008-03-18 13:59               ` Peter Zijlstra
2008-03-18 15:53                 ` Miklos Szeredi
2008-03-18 16:49                   ` Andrew Morton
2008-03-17 19:19 ` [patch 5/8] fuse: support writable mmap Miklos Szeredi, Miklos Szeredi
2008-03-17 19:19 ` [patch 6/8] fuse: clean up setting i_size in write Miklos Szeredi, Miklos Szeredi
2008-03-18  5:08   ` Andrew Morton
2008-03-18  8:16     ` Miklos Szeredi
2008-03-17 19:19 ` [patch 7/8] fuse: implement perform_write Miklos Szeredi, Nick Piggin
2008-03-17 19:19 ` [patch 8/8] fuse: update file size on short read Miklos Szeredi, Miklos Szeredi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20080318094541.7f19bfe4.akpm@linux-foundation.org \
    --to=akpm@linux-foundation.org \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=miklos@szeredi.hu \
    --cc=peterz@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).