Date: Wed, 23 Sep 2015 17:21:00 -0600 From: John Nielsen <lists@jnielsen.net> To: =?utf-8?Q?Edward_Tomasz_Napiera=C5=82a?= <trasz@freebsd.org> Cc: freebsd-current Current <freebsd-current@freebsd.org>, aoyama@peach.ne.jp, Yonas Yanfa <yonas@fizk.net> Subject: Re: Add isboot iSCSI boot driver to FreeBSD Message-ID: <404EF3F8-B8CB-4703-90AF-11FBA1CD2A7F@jnielsen.net> In-Reply-To: <20150923212520.GA7390@brick> References: <56025EEE.50404@fizk.net> <5B296016-F14D-48A9-8DC6-0D8EA28AE891@jnielsen.net> <20150923212520.GA7390@brick>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sep 23, 2015, at 3:25 PM, Edward Tomasz Napiera=C5=82a = <trasz@freebsd.org> wrote: > On 0923T0916, John Nielsen wrote: >> On Sep 23, 2015, at 2:12 AM, Yonas Yanfa <yonas@fizk.net> wrote: >>=20 >>> isboot is a iSCSI boot driver written by Daisuke Aoyama that allows = you to boot your root partition using iSCSI. >> [,,,] >>> This was first announced way back in June, 2010: >>>=20 >>> = https://lists.freebsd.org/pipermail/freebsd-scsi/2010-June/004425.html >>>=20 >>> I've tested the current version (v0.2.10) and it works with FreeBSD = 10.2 booting a ZFS on root installation: >>>=20 >>> http://www.peach.ne.jp/archives/isboot/isboot-0.2.10.tar.gz >>>=20 >>> I've used iSCSI boot with Ubuntu Server for a while and it's been = very useful. I'm looking forward to FreeBSD having the same capability = built-in. >>=20 >> +1. I have used this module in the past and it is extremely useful. = Thanks for the pointer, I wasn=E2=80=99t aware it had been updated for = FreeBSD 10.x so recently. I=E2=80=99ve also wondered why this is not = part of FreeBSD by default. >>=20 >> Aoyama-san, do you have any objection to this code being included in = FreeBSD? If not, can you formally assign it a BSD or other friendly = license? Thank you again for the work! >>=20 >> Trasz (or anyone), is there other work to support iSCSI booting = and/or IBFT on FreeBSD? Anything else isboot might conflict with? Any = problems with integrating the code or with the code itself? >=20 > The basic problem with isboot is that it only works with the old iSCSI > initiator, which is now marked obsolete. AFAIK there is no ready = solution > that works with the new one - however, it should be possible to use = upcoming > reroot support to achieve this: boot with a temporary rootfs, mounted = from > a ramdisk preloaded by loader(8), setup an iSCSI session, and then = replace > the temporary rootfs with the real one, mounted over iSCSI. Ah, thank you for clarifying. I forgot that 10.x still supports the old = initiator. The reroot approach sounds interesting but less straightforward. The = beauty of isboot is that the kernel=E2=80=94loaded from a normal root = disk that happens to be iSCSI-connected=E2=80=94knows how to = re-establish its network and iSCSI connections just from the information = in the iSCSI Boot Firmware Table, i.e. native iSCSI booting. I=E2=80=99d = love to see the same approach continued with the new initiator. I = suspect that a new implementation could re-use all of the IBFT code and = most of the networking code, but I don=E2=80=99t know how hard the = remaining pieces would be. I may have a chance to look in to it but a = kernel programmer I am not, sadly. I think a =E2=80=9Cnative=E2=80=9D iSCSI reroot approach could be = feasible at some point; for me that would mean that the loader could = load the kernel and a standard-ish (or easily auto-generated) mfsroot = from the iSCSI volume seamlessly, then something in the mfsroot parses = the IBFT and sets up the network and iSCSI connections before switching = root. JN
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?404EF3F8-B8CB-4703-90AF-11FBA1CD2A7F>