[ipxe-devel] SRP booting linux, SRP volume with ISO stops seeing itself

james harvey jamespharvey20 at gmail.com
Sun Jul 17 10:09:12 UTC 2016


I'm picking up this project again.  Wanted to make sure such a tool
hadn't been written since January.

Also, am I correctly understanding the sBFT documentation, that there
is always exactly 1 SCSI Subtable and 1 SRP Subtable, and either 0 or
1 IB Subtables?

If there's always 1 SCSI Subtable and always 1 SRP Subtable, I'm
confused why there's an offset to those since at that point I'm not
seeing anything variable length.

On Wed, Jan 27, 2016 at 7:17 PM, Michael Brown <mcb30 at ipxe.org> wrote:
> On 08/01/16 02:19, james harvey wrote:
>>
>> Before I keep going down the hole, let me make sure my plan isn't
>> futile.  I want to make a diskless system, by having iPXE in my
>> InfiniBand card's ROM, and being able to boot an Arch Linux Live ISO
>> (custom built with srp kernel modules) exported as a SRP volume backed
>> by the ISO, and install on other SRP volumes which are backed by LVM
>> volumes.
>>
>> I have a real general idea of how the iPXE to kernel handoff works,
>> through the iBFT (iSCSI Boot Firmware Table.)  Since I'm using SRP
>> rather than iSCSI, is the iBFT still used?  If not, how does the SRP
>> connection get handed off, with all the variables needed for an SRP
>> connection?
>
>
> There is an SRP boot firmware table constructed (the sBFT).  This is
> nominally documented at
>
>   http://ipxe.org/srp/sbft
>
> However, I'm not aware of any Linux userspace tools that are capable of
> parsing that structure.  It should be fairly easy to create such a tool,
> which would scan base memory for the sBFT signature, verify the checksum,
> extract the fields, and then write the relevant values into sysfs to
> initiate the connection.
>
> I thought I had written such a tool back in 2009, but all I can find
> relating to it is the proposal document.  It seems to have been an abandoned
> project back then.
>
> Michael



More information about the ipxe-devel mailing list