On Tue, Oct 15, 2013 at 11:48:49PM -0600, Chris Murphy wrote: > > On Oct 15, 2013, at 2:54 PM, Dave Chinner <david@xxxxxxxxxxxxx> > wrote: > > > On Tue, Oct 15, 2013 at 01:33:19PM -0700, Christoph Hellwig > > wrote: > >> Hi Paulo, > >> > >> just wondering what the state of the xfs support for syslinux > >> is? I talked to Peter at Linuxcon and he thought it's merged, > >> but looking at the kernel.org tree I can't find the support. > >> > >> Also when looking over your branches I noticed that you're > >> using a free sector in the first filesystem block to store the > >> bootloader. If we want to go down that route we need to make > >> sure to reserve this sector, otherwise it might get taken up by > >> newly added metadata. > > > > It's also worth pointing out that there's no guarantee that > > there's a free sector in the first filesystem block. It's only > > by luck that there's free sectors on the default config (512 > > byte sector, 4 sector sized AG headers, 4k filesystem block). If > > we have <= 2k filesystem block there are no free "pad" sectors > > that can be used, 4k sectors mean no free sectors either, etc. > > > > Much better would be to create a sector sized file and use > > fiemap to get the disk address of the block and feed that into > > the bootloader. That works for all filesystems without needing > > to know anything about the underlying filesystem > > structures…… > > I'm curious how that would work. > > The minimum bit of code for GRUB or extlinux is a lot bigger than > 4KB. A basic self-generated GRUB configuration file is 5.6KB; for > extlinux a basic one I have is 518 bytes. The minimum code needed > to find the configuration file is ~26KB for GRUB's core.img, and > ~34KB for extlinux's ldlinux.sys. Size isn't an issue - fiemap can give you all the blocks that the file spans if you need to create a sector map for a larger file. > So are both of you referring to the < 440 bytes of bootstrap code > that goes in either the MBR or VBR, whose job is to find core.img > or ldlinux.sys and blindly load them? I'm refering to what ever you are writing into the pad sectors in the first filesystem block. I don't know what you are putting there, but I doubt that is a file that you set up in the filesystem namespace... Perhaps you should have a quick look at how LILO prepares the maps of the files it needs to load? 'strace lilo' is very informative, and demonstrates exectly how to map files for a boot loader without needing any knowledge of the layout of the underlying filesytem.... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs