<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openslx-ng/ipxe.git/src/include, branch v0.9.8</title>
<subtitle>Fork of ipxe; additional commands and features</subtitle>
<id>https://git.openslx.org/openslx-ng/ipxe.git/atom/src/include?h=v0.9.8</id>
<link rel='self' href='https://git.openslx.org/openslx-ng/ipxe.git/atom/src/include?h=v0.9.8'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/'/>
<updated>2009-10-14T01:06:23+00:00</updated>
<entry>
<title>[pci] Add generic configuration space backup/restore facility</title>
<updated>2009-10-14T01:06:23+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-10-14T01:06:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=4175b778c277c87980266c854139b7f93b5564d9'/>
<id>urn:sha1:4175b778c277c87980266c854139b7f93b5564d9</id>
<content type='text'>
Some devices can only be reset via a mechanism that also resets the
card's PCI core, thus necessitating a backup and restore of all or
part of the PCI configuration space across a reset.
</content>
</entry>
<entry>
<title>[job] Add missing job_progress() interface method</title>
<updated>2009-08-31T18:33:05+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-31T18:33:05+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=0fc13add3196216cb440fbcee136903263a82f3f'/>
<id>urn:sha1:0fc13add3196216cb440fbcee136903263a82f3f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[802.11] Support multicast hashing</title>
<updated>2009-08-11T23:54:29+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-11T23:40:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=a7290a970c0d4e28600c29c12d8fa486c5a82b97'/>
<id>urn:sha1:a7290a970c0d4e28600c29c12d8fa486c5a82b97</id>
<content type='text'>
802.11 multicast hashing is the same as standard Ethernet hashing, so
just expose and use eth_mc_hash().

Signed-off-by: Joshua Oreman &lt;oremanj@rwcr.net&gt;
</content>
</entry>
<entry>
<title>[dhcp] Fall back to using the hardware address to populate the chaddr field</title>
<updated>2009-08-11T23:27:08+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-11T22:44:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=444d5550a70fef7735ed1821a0e6f8410f0e03ef'/>
<id>urn:sha1:444d5550a70fef7735ed1821a0e6f8410f0e03ef</id>
<content type='text'>
For IPoIB, the chaddr field is too small (16 bytes) to contain the
20-byte IPoIB link-layer address.  RFC4390 mandates that we should
pass an empty chaddr field and rely on the DHCP client identifier
instead.  This has many problems, not least of which is that a client
identifier containing an IPoIB link-layer address is not very useful
from the point of view of creating DHCP reservations, since the QPN
component is assigned at runtime and may vary between boots.

Leave the DHCP client identifier as-is, to avoid breaking existing
setups as far as possible, but expose the real hardware address (the
port GUID) via the DHCP chaddr field, using the broadcast flag to
instruct the DHCP server not to use this chaddr value as a link-layer
address.

This makes it possible (at least with ISC dhcpd) to create DHCP
reservations using host declarations such as:

    host duckling {
        fixed-address 10.252.252.99;
        hardware unknown-32 00:02:c9:02:00:25:a1:b5;
    }
</content>
</entry>
<entry>
<title>[netdevice] Allow the hardware and link-layer addresses to differ in size</title>
<updated>2009-08-11T23:23:38+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-11T22:40:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=4eab5bc8ca6b66dc965cf188dd4577ad19c5b879'/>
<id>urn:sha1:4eab5bc8ca6b66dc965cf188dd4577ad19c5b879</id>
<content type='text'>
IPoIB has a 20-byte link-layer address, of which only eight bytes
represent anything relating to a "hardware address".

The PXE and EFI SNP APIs expect the permanent address to be the same
size as the link-layer address, so fill in the "permanent address"
field with the initial link layer address (as generated by
register_netdev() based upon the real hardware address).
</content>
</entry>
<entry>
<title>[netdevice] Separate out the concept of hardware and link-layer addresses</title>
<updated>2009-08-11T23:19:14+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-11T19:19:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=37a0aab4ff2c86f4d109d4cd479535be97d07a94'/>
<id>urn:sha1:37a0aab4ff2c86f4d109d4cd479535be97d07a94</id>
<content type='text'>
The hardware address is an intrinsic property of the hardware, while
the link-layer address can be changed at runtime.  This separation is
exposed via APIs such as PXE and EFI, but is currently elided by gPXE.

Expose the hardware and link-layer addresses as separate properties
within a net device.  Drivers should now fill in hw_addr, which will
be used to initialise ll_addr at the time of calling
register_netdev().
</content>
</entry>
<entry>
<title>[infiniband] Disambiguate CM connection rejection reasons</title>
<updated>2009-08-10T21:31:55+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-09T20:00:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=0ff5c456cb1ad38c3300a214799478101a3540a6'/>
<id>urn:sha1:0ff5c456cb1ad38c3300a214799478101a3540a6</id>
<content type='text'>
There is diagnostic value in being able to disambiguate between the
various reasons why an IB CM has rejected a connection attempt.  In
particular, reason 8 "invalid service ID" can be used to identify an
incorrect SRP service_id root-path component, and reason 28 "consumer
reject" corresponds to a genuine SRP login rejection IU, which can be
passed up to the SRP layer.

For rejection reasons other than "consumer reject", we should not pass
through the private data, since it is most likely generated by the CM
without any protocol-specific knowledge.
</content>
</entry>
<entry>
<title>[infiniband] Allow SRP reconnection attempts even after reporting failures</title>
<updated>2009-08-10T21:30:56+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-10T01:20:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=965a0f7a75ef0011062413a6fa62ab6404e0b1ea'/>
<id>urn:sha1:965a0f7a75ef0011062413a6fa62ab6404e0b1ea</id>
<content type='text'>
With iSCSI, connection attempts are expensive; it may take many
seconds to determine that a connection will fail.  SRP connection
attempts are much less expensive, so we may as well avoid the
"optimisation" of declaring a state of permanent failure after a
certain number of attempts.  This allows a gPXE SRP initiator to
resume operations after an arbitrary amount of SRP target downtime.
</content>
</entry>
<entry>
<title>[infiniband] Add support for SRP over Infiniband</title>
<updated>2009-08-10T21:27:33+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-07-17T21:11:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=0c30dc6bc5f26e7011ddfcda34d7adac653464cf'/>
<id>urn:sha1:0c30dc6bc5f26e7011ddfcda34d7adac653464cf</id>
<content type='text'>
SRP is the SCSI RDMA Protocol.  It allows for a method of SAN booting
whereby the target is responsible for reading and writing data using
Remote DMA directly to the initiator's memory.  The software initiator
merely sends and receives SCSI commands; it never has to touch the
actual data.
</content>
</entry>
<entry>
<title>[infiniband] Add last_opened_ibdev(), analogous to last_opened_netdev()</title>
<updated>2009-08-10T21:25:57+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2009-08-10T10:47:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=8de49af0d25b5695f6dcb5db77a142d2fb708f3f'/>
<id>urn:sha1:8de49af0d25b5695f6dcb5db77a142d2fb708f3f</id>
<content type='text'>
The minimal-surprise behaviour, when no explicit SRP initiator device
is specified, will probably be to use the most recently opened
Infiniband device.  This matches our behaviour with using the most
recently opened net device for PXE, iSCSI, AoE, NBI, etc.
</content>
</entry>
</feed>
