From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with archive (Exim 4.43) id 1Oe7mJ-0006pD-Ss for mharc-grub-devel@gnu.org; Wed, 28 Jul 2010 10:38:39 -0400 Received: from [140.186.70.92] (port=49633 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oe7mG-0006nd-85 for grub-devel@gnu.org; Wed, 28 Jul 2010 10:38:37 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Oe7mE-00087l-1j for grub-devel@gnu.org; Wed, 28 Jul 2010 10:38:36 -0400 Received: from mail-fx0-f41.google.com ([209.85.161.41]:41078) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Oe7mD-00087J-Qe for grub-devel@gnu.org; Wed, 28 Jul 2010 10:38:34 -0400 Received: by fxm20 with SMTP id 20so1404658fxm.0 for ; Wed, 28 Jul 2010 07:38:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:subject:references:in-reply-to :x-enigmail-version:content-type; bh=Ni5SugskgEqgbOdbDpVTx6p4O9CQF71fAr6JhHEEBqs=; b=AkKTs0SL2DVccHAXxYr8ue46aB3CKprEyImSaBrvq4lJ+34yv8eZTmkYzdm6wydTEl e8o/MKPo+K3ae7N5sHeiyGVK662K4pqDD2t/umuOYxGiAKxr9z3d/H4f8ZZ7FbMRQ9wM ZI4MTFLHa27EmtNY+aOW37TT0VKtCILoQrtJI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:subject:references :in-reply-to:x-enigmail-version:content-type; b=VOWvllGt/neUfpbfx1sRBXSJJCxDJeOKl7snQamZOP7CAWSauQBVk2g5Qg9tegm0dH RFbfZ+aoapiYaNr3b8JMOaIZQweOMz17Rj9XPyfU2SZelbNHWEz/d8aahtSdKE8hp6fb kd1PZnr2uLSi2H78n8casVMn/Jec5G4jDvcBw= Received: by 10.223.103.80 with SMTP id j16mr10019290fao.100.1280327912169; Wed, 28 Jul 2010 07:38:32 -0700 (PDT) Received: from debian.bg45.phnet (vpn-global-165-dhcp.ethz.ch [129.132.211.165]) by mx.google.com with ESMTPS id h8sm2600196faj.38.2010.07.28.07.38.30 (version=TLSv1/SSLv3 cipher=RC4-MD5); Wed, 28 Jul 2010 07:38:30 -0700 (PDT) Message-ID: <4C5040DF.7070707@gmail.com> Date: Wed, 28 Jul 2010 17:38:23 +0300 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.10) Gecko/20100620 Icedove/3.0.5 MIME-Version: 1.0 To: grub-devel@gnu.org References: <4C476C56.3070106@gmail.com> In-Reply-To: X-Enigmail-Version: 1.0.1 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enigE371DCF9B3D05C22611684CE" X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Subject: Re: ZFS on Debian GNU/kFreeBSD X-BeenThere: grub-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: The development of GNU GRUB List-Id: The development of GNU GRUB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 28 Jul 2010 14:38:37 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigE371DCF9B3D05C22611684CE Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable On 07/23/2010 02:53 PM, Robert Millan wrote: > The problem I see with current zfs.mod is that it integrates with GRUB = using > the "filesystem model", i.e. each pool has one > backend (the storage device) and one frontend (the filesystem). > > But ZFS is different in both ends: each pool can use N storage devices > and provide M filesystems. In the current representation this yields > two problems > for GRUB: > > - zpools where more than one device is essential (i.e. not just > mirror like RAID1) > aren't accessible. > > =20 They are simply not implemented yet. When it will be you'll have to just access any underlying device and other devices will be autoscanned. > - To allow more more than one filesystem in a zpool, filesystems are > selected in > a special manner, e.g.: > (hd0)/@/ > (hd0)/foo@/ > This collides with an assumption consistently made by GRUB utilities= > and scripts: that you can construct a GRUB path by combining the res= ult > of make_path_relative_to_its_root() (known at install time) with the= device > that contains this filesystem (usually known at run time). > > =20 This syntax is the one that reflects the real structure of ZFS. OS often needs some kind of tricks which warp the reality and show it in a way which is the best in achieving many OS goals. GRUB goals are much simpler and such warping would only complicate the design. One example of this is using ()/ instead of mount points. It results in more difficulty in userland tools but there we can manage complexity easier since we have all the usual tools. > My impression is representing ZFS as a filesystem is doable, but not > the best fit. > ZFS is much more like what GRUB calls an "abstraction" (RAID or LVM). I= n fact > if you take LVM interface: > > grub> ls > (hd0) (hd1) > grub> insmod lvm > grub> ls > (hd0) (hd1) (foo) (bar) > > the only difference for ZFS is that (foo) and (bar) are provided direct= ly as > filesystems (like pxe.mod does) instead of block devices for GRUB to pr= obe. > > =20 It was the way I originally did it but it turned out that ZFS is goot at representing tree-like structure of subvolumes, it may have thousands of subvolumes and snapshots. Trying to "ls" it would be useless. Handling tree-like structure in devices is possible but probably not necessary, just for ZFS. > So my intention is to readjust zfs.mod to follow this interface. Aside > from enabling > multi-device pools, this will also make it much easier to support ZFS > in the install > utilities and scripts later. > > Comments / objections / suggestions? > > =20 I don't think that the design needs changes but I'm open to discussion. > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel > > =20 --=20 Regards Vladimir '=CF=86-coder/phcoder' Serbinenko --------------enigE371DCF9B3D05C22611684CE Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iF4EAREKAAYFAkxQQN8ACgkQNak7dOguQgkvzQD/VdJwvvhOWEOMt4vGNEm40wMn koCARWse1rUAr8dnyZEA+waLnc/DhxfXc8dvlXE9oRk/oh0xI7vIi0Obxi5A3uPG =2d07 -----END PGP SIGNATURE----- --------------enigE371DCF9B3D05C22611684CE--