All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andreas Dilger <adilger@turbolabs.com>
To: Marcelo Tosatti <marcelo@conectiva.com.br>
Cc: Andrew Morton <akpm@zip.com.au>,
	Linus Torvalds <torvalds@transmeta.com>,
	lkml <linux-kernel@vger.kernel.org>
Subject: Re: [patch] smarter atime updates
Date: Fri, 30 Nov 2001 14:52:23 -0700	[thread overview]
Message-ID: <20011130145223.Q15936@lynx.no> (raw)
In-Reply-To: <3C072279.D346CD09@zip.com.au> <Pine.LNX.4.21.0111301344330.17515-100000@freak.distro.conectiva>
In-Reply-To: <Pine.LNX.4.21.0111301344330.17515-100000@freak.distro.conectiva>; from marcelo@conectiva.com.br on Fri, Nov 30, 2001 at 01:44:42PM -0200

On Nov 30, 2001  13:44 -0200, Marcelo Tosatti wrote:
> Now are you sure this can't break anything ? 

What fun would that be, if you couldn't follow in Linus' footsteps?
People would get complacent if things didn't break now and again ;-).

Anyways, you never want to put a change that is not a specific bug
fix in a -rc patch anyways.  Save it for a -pre patch, where you expect
at least some testing before it is released.

> On Thu, 29 Nov 2001, Andrew Morton wrote:
> > mark_inode_dirty() is quite expensive for journalling filesystems,
> > and we're calling it a lot more than we need to.
> > 
> > --- linux-2.4.17-pre1/fs/inode.c	Mon Nov 26 11:52:07 2001
> > +++ linux-akpm/fs/inode.c	Thu Nov 29 21:53:02 2001
> > @@ -1187,6 +1187,8 @@ void __init inode_init(unsigned long mem
> >   
> >  void update_atime (struct inode *inode)
> >  {
> > +	if (inode->i_atime == CURRENT_TIME)
> > +		return;
> >  	if ( IS_NOATIME (inode) ) return;
> >  	if ( IS_NODIRATIME (inode) && S_ISDIR (inode->i_mode) ) return;
> >  	if ( IS_RDONLY (inode) ) return;
> > 
> > 
> > with this patch, the time to read a 10 meg file with 10 million
> > read()s falls from 38 seconds (ext3), 39 seconds (reiserfs) and
> > 11.6 seconds (ext2) down to 10.5 seconds.

Well, just doing a code check of the update_atime() and UPDATE_ATIME()
users, and they are all in readlink(), follow_link(), open_namei(),
and various fs _readdir() codes.  None of them (AFAICS) depend on the
mark_inode_dirty() as a side-effect.  This means it should be safe.

Cheers, Andreas
--
Andreas Dilger
http://sourceforge.net/projects/ext2resize/
http://www-mddsp.enel.ucalgary.ca/People/adilger/


  parent reply	other threads:[~2001-11-30 21:53 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-11-30  6:08 [patch] smarter atime updates Andrew Morton
2001-11-30  9:45 ` OGAWA Hirofumi
2001-11-30  9:56   ` Andrew Morton
2001-11-30 10:40     ` OGAWA Hirofumi
2001-11-30 22:34   ` H. Peter Anvin
2001-11-30 15:44 ` Marcelo Tosatti
2001-11-30 17:29   ` Chris Mason
2001-11-30 20:03   ` Robert Love
2001-11-30 21:52   ` Andreas Dilger [this message]
2001-11-30 21:50     ` Linus Torvalds
2001-11-30 22:30       ` Simon Kirby
2001-11-30 23:31         ` H. Peter Anvin
2001-12-01  9:22   ` Hans Reiser

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=20011130145223.Q15936@lynx.no \
    --to=adilger@turbolabs.com \
    --cc=akpm@zip.com.au \
    --cc=linux-kernel@vger.kernel.org \
    --cc=marcelo@conectiva.com.br \
    --cc=torvalds@transmeta.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.