Date: Sun, 28 May 2006 07:20:22 GMT From: Yar Tikhiy <yar@comp.chem.msu.su> To: freebsd-bugs@FreeBSD.org Subject: Re: bin/98005: loader corrupts other files when rewriting nextboot.conf Message-ID: <200605280720.k4S7KM45099759@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/98005; it has been noted by GNATS. From: Yar Tikhiy <yar@comp.chem.msu.su> To: Ian Dowse <iedowse@iedowse.com> Cc: FreeBSD-gnats-submit@FreeBSD.org Subject: Re: bin/98005: loader corrupts other files when rewriting nextboot.conf Date: Sun, 28 May 2006 11:03:49 +0400 On Sat, May 27, 2006 at 01:05:01PM +0100, Ian Dowse wrote: > In message <200605271037.k4RAbtYw063346@comp.chem.msu.su>, Yar Tikhiy writes: > > When nextboot is in effect, loader(8) writes the modified > > contents of the nextboot.conf file, or whatever nextboot_conf > > is set to, to an incorrect location on the disk. The > > location overwritten is in the block after the one actually > > belonging to the nextboot.conf file. > > > > This problem is likely to be caused by an off-by-one bug in > > the stand-alone FS access library used by loader(8). > > You could try the following (I haven't tested it), but it's pretty > obvious how the bug happened if you compare bd_write() with the > bd_read() function that it was copied from. Looks like the author > of bd_write() was more interested in writing a little song in the > comments than writing to the correct part of the disk ;-) Your patch seems to work, thanks! I'll give it more thorough testing today by using nextboot routinely. > The bug probably wasn't noticed originally because it only affected > the LBA access case. Indeed, my FreeBSD slice lies above the 1023rd cylinder. -- Yar
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200605280720.k4S7KM45099759>