Re: tracking down disk spinups.

From: Rob Landley
Date: Tue May 15 2007 - 00:49:27 EST


On Monday 14 May 2007 4:46 pm, Dave Jones wrote:
> On Mon, May 14, 2007 at 04:28:35PM -0400, Rob Landley wrote:
> > On Monday 14 May 2007 2:57 pm, Dave Jones wrote:
> > > Why did the kernel ignore what I told it to do ?
> > > I'm sure it thinks it knows better than me for a reason, but
> > > I'd like to know what it is.
> >
> > Remount doesn't switch filesystem drivers, it tells the existing
filesystem
> > driver to accept new flags and/or a new option string.
>
> yes, I had misinterpreted what 'remount' did. I thought behind the scenes
> it actually did a umount/mount.

I implemented the BusyBox mount command last year. (Well, rewrote three times
until just about none of the old code was left.) Getting remount to work
right is a monster headache. (The new flags _replace_ the old flags, not
delta against them, so you have to parse /etc/mtab (or /proc/mounts), read
the old flags out of that, mask them yourself, and supply them back in. And
of course, not all of them are flags, some remain strings, but you can't keep
strings you turned into flags because the driver will barf that it's an
unrecognized string option... Headache. And don't get me started on vfat
spitting back string options from /proc/mounts that are THE DEFAULT VALUES...
Grrr. I'll stop now.)

You can always umount/mount yourself.

> > To switch drivers you have to umount the old sucker and mount the new
one.
> > (The idea of handing off consistent cache data from one mounted
filesystem
> > driver to another... Ouch.)
>
> a umount would purge the cache, but that's irrelevant given it doesn't
> work that way.
>
> Anyways, I rebooted after s/ext3/ext2/ on my fstab, and found things
> hadn't really got any more obvious what was going on.
> Instead of 'kjournald' writing stuff out, now it's 'pdflush'.
>
> *has sudden brainwave*
>
> Ahh, it's doing atime updates. Duh.

I had to add MS_SILENT (1<<15) to the default mount options for busybox
(because otherwise the kernel got log message diarrhea). I was seriously
tempted to add MS_NOATIME to that, but didn't.

I should write up a good "mount" spec, from the kernel's point of view.
(There isn't one. I looked.)

Rob
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/