Messages in this thread | | | Date | Sun, 9 Jul 2000 18:21:46 +0200 | From | Andries Brouwer <> | Subject | Re: linux-2.4.0 breaks grub install into partition |
| |
On Sat, Jul 08, 2000 at 02:50:10PM +0200, Torsten Duwe wrote:
> here's a problem we've stumbled across testing the 2.4.0 pre-kernels: > installing grub (0.5.94 if that should matter) into the boot block of a > partition mounted r/w no longer works; it flawlessly used to in 2.2.x . > > A little investigation using strace and friends shows that grub does its > proper job, finds the right spots and writes there. The write to the > partition boot block though is somehow discarded, but no error is returned. > > Linux kernel people be informed that grub uses the whole-disk device > (e.g. /dev/hda) to do its job,
Yes, there are some coherency problems various places.
The sequence mkswap; swapon fails for certain kernels, unless mkswap does fsync(DEV).
Linux does not guarantee coherency between hda and hda1. For example, cfdisk will show filesystem labels. If one showed a label (accessed by cfdisk via /dev/hda) and then changed it (via /dev/hda1) and then used cfdisk again, the old contents would be shown. Here a BLKFLSBUF helped.
Sometimes the result of fdisk disappears - one uses fdisk, rechecks with a new fdisk call that all is really well, reboots, and finds the old partition table. I am not sure what precisely happens. Perhaps a dirty (super)block written back, destroying fdisk's changes.
Anyway, whole disk access is a bit suspect in Linux. The BLKFLSBUF and sync() kludges help a little but still do not guarantee correct operation.
Andries
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |