grub-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] zfs module update


From: Toomas Soome
Subject: [PATCH] zfs module update
Date: Tue, 14 Apr 2015 02:17:43 +0300

hi!

this is the major update to grub2 zfs module; the work is based on Oracle code 
drops from Solaris 11, and Illumos.
I am including here two separate patch sets, first is zfs itself, second one is 
update to allow embedding.

supports:
- all current OpenZFS features
- Solaris 11 zpool versions (including reading encrypted datasets)
- can recognise and boot all pool configurations with exception that log device 
is not inspected (thats something to be investigated in future, while this code 
does not mind log device, its still probably not good idea to actually have 
one).
- pool is readable as long as there is enough parity to reconstruct data from
- supports multiple vdevs
- supports both mirror and raidz
- supports bootloader embedding as long as it will fit to 3.5MB space reserved 
for bootblock.
- using negative cache for non-zfs devices

limitations: 
- no writes. at all. never will be;)
- actual pool configuration is limited by disks visibility for grub, and that 
depends on actual system. if grub can see 4 disks, that will set the limit.
- browsing encryped datasets by tree levels is not supported, full path needs 
to be used; as writing the encrypred datasets is possible only with solaris 11 
and it has its own grub implementation, I just left encryption support as is, 
at least for now.
- mount cache code is there but not enabled; enabling it did trigger artefacts 
with grub graphical menu, reasons yet unknown - so far all checks with libumem 
for memory usage and integrity have been all OK.

tests done: booting with different zpool configurations, single disk, mirror, 
raidz, multiple vdev, 512B and 4096B sector sizes, missing disks (zpool offline 
and physically removed), tests are performed on illumos and unknown amount of 
linux systems - this code is already used by debian grub2 packages.

the embedding support adds zfs GPT partition tag to allow grub to be embedded 
directly to zfs partition, without the need for BIOS boot partition. If BIOS 
boot partition exists, it will be used. This functionality is already 
implemented in Illumos (with legacy grub), so, there is no reason not to 
support his with grub 2 as well. 

as zfs update is pretty large, i include it compressed…

rgds,
toomas


Attachment: 0001-ZFS-update-to-latest-features.patch.gz
Description: GNU Zip compressed data

Attachment: 0002-added-support-for-zfs-embedding.patch
Description: Binary data



reply via email to

[Prev in Thread] Current Thread [Next in Thread]