----- Original Message -----
From: John Baldwin <jhb@freebsd.org>
To: rank1seeker@gmail.com
Cc: hackers@freebsd.org
Date: Mon, 26 Mar 2012 16:29:58 -0400
Subject: Re: BUG: REL 9.0 - 'boot0cfg' fails with providers of non 512 byte sectorsize
> On Monday, March 26, 2012 2:02:53 pm rank1seeker@gmail.com wrote:
> > ----- Original Message -----
> > From: John Baldwin <jhb@freebsd.org>
> > To: freebsd-hackers@freebsd.org
> > Cc: rank1seeker@gmail.com, hackers@freebsd.org
> > Date: Mon, 26 Mar 2012 10:17:41 -0400
> > Subject: Re: BUG: REL 9.0 - 'boot0cfg' fails with providers of non 512 byte
> sectorsize
> >
> > > On Sunday, March 25, 2012 11:05:06 am rank1seeker@gmail.com wrote:
> > > > I've created a vnode image (md0) with sectorsizes of 8192 and 4096
> > > >
> > > > After installing MBR's bootcode '/boot/boot0', in provider 'md0' I did:
> > > > # boot0cfg -o noupdate -m 0xc md0
> > > > boot0cfg: read /dev/md0: Invalid argument
> > > > # boot0cfg -v md0
> > > > boot0cfg: read /dev/md0: Invalid argument
> > > >
> > > > If custom sectorsize isn't specifed(512 bytes), then both above CMDs
> will
> > > work.
> > >
> > > MBR bootstraps (such as boot0) assume a 512 byte sector. They won't boot
> > > correctly on media with a different sector size. So even if you "fixed"
> > > boot0cfg, you wouldn't have a bootable system.
> > >
> > > --
> > > John Baldwin
> > >
> >
> >
> > Is it so?
> > This is also true for '/boot/mbr' file?
>
> Yes.
So If in above image with custom sector size (4k for 4k HDD) with slices and bsdlabels and world + kernel
If I would 'dd' it to BIOS bassed PC and then power on, it wouldn't boot?!
>
> > Well, majority of PC's are still BIOS bassed so MBR scheme is still around
> and there are also now HDD's with 4b sector sizes and SSD's with 4b and 8k
> sector sizes.
> >
> > So how does things work in those cases, without GPT?
>
> The BIOS still emulates 512 byte sectors.
>
In above example sector has a size of 4k
MBR of 512 bytes is written to it, so there are empyt 3,5k of sector 0.
What happens upon power on?
Domagoj Smoli