[review request] zfsboot/zfsloader: support accessing filesystems within a pool

John Baldwin jhb at freebsd.org
Wed Apr 18 17:48:10 UTC 2012


On Wednesday, April 18, 2012 11:00:18 am Andriy Gapon wrote:
> on 18/04/2012 17:40 Ian Lepore said the following:
> > On Wed, 2012-04-18 at 17:36 +0300, Andriy Gapon wrote:
> >> on 18/04/2012 17:22 Ian Lepore said the following:
> >>> YES!  A size field (preferably as the first field in the struct) along
> >>> with a flag to indicate that it's a new-style boot info struct that
> >>> starts with a size field, will allow future changes without a lot of
> >>> drama.  It can allow code that has to deal with the struct without
> >>> interpretting it (such as trampoline code that has to copy it to a new
> >>> stack or memory area as part of loading the kernel) to be immune to
> >>> future changes.
> >>
> >> Yeah, placing the new field at front would immediately break compatibility and
> >> even access to the flags field :-)
> >>
> > 
> > Code would only assume the new field was at the front of the struct if
> > the new flag is set, otherwise it would use the historical struct
> > layout.
> 
> Right, but where the flag would reside?
> And how the older code that is not aware of the new flag would cope with the new
> layout?

I think the size should be appended to the end of the current structure.
However, it will buy us more flexibility in the future.

-- 
John Baldwin


More information about the freebsd-hackers mailing list