<feed xmlns='http://www.w3.org/2005/Atom'>
<title>openslx-ng/ipxe.git/src/arch/x86/interface, branch master</title>
<subtitle>Fork of ipxe; additional commands and features</subtitle>
<id>https://git.openslx.org/openslx-ng/ipxe.git/atom/src/arch/x86/interface?h=master</id>
<link rel='self' href='https://git.openslx.org/openslx-ng/ipxe.git/atom/src/arch/x86/interface?h=master'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/'/>
<updated>2019-01-25T14:53:43+00:00</updated>
<entry>
<title>[init] Show startup and shutdown function names in debug messages</title>
<updated>2019-01-25T14:53:43+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2019-01-25T14:53:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=36a4c85f911c85f5ab183331ff74d125f9a9ed32'/>
<id>urn:sha1:36a4c85f911c85f5ab183331ff74d125f9a9ed32</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[librm] Ensure that inline code symbols are unique</title>
<updated>2018-03-21T15:00:53+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2018-03-21T14:47:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=bc85368cdd311fe68ffcf251e7e8e90c14f8a9dc'/>
<id>urn:sha1:bc85368cdd311fe68ffcf251e7e8e90c14f8a9dc</id>
<content type='text'>
Commit 6149e0a ("[librm] Provide symbols for inline code placed into
other sections") may cause build failures due to duplicate label names
if the compiler chooses to duplicate inline assembly code.

Fix by using the "%=" special format string to include a
guaranteed-unique number within the label name.

The "%=" will be expanded only if constraints exist for the inline
assembly.  This fix therefore requires that all REAL_CODE() fragments
use a (possibly empty) constraint list.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[time] Add support for the ACPI power management timer</title>
<updated>2018-03-20T15:26:49+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2018-03-20T15:26:49+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=3ec2079ce2078ff67c1f857eaf29293586bb5497'/>
<id>urn:sha1:3ec2079ce2078ff67c1f857eaf29293586bb5497</id>
<content type='text'>
Allow the ACPI power management timer to be used if enabled via
TIMER_ACPI in config/timer.h.  This provides an alternative timer on
systems where the standard 8254 PIT is unavailable or unreliable.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[acpi] Make acpi_find_rsdt() a per-platform method</title>
<updated>2017-05-23T17:34:39+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-05-22T18:27:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=933e6dadc0b415b26c7c0752423e8284164945e0'/>
<id>urn:sha1:933e6dadc0b415b26c7c0752423e8284164945e0</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[block] Provide sandev_read() and sandev_write() as global symbols</title>
<updated>2017-04-26T19:15:39+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-04-26T19:00:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=dd976cb50d842b9ba30a5b6413134fdefa9e864d'/>
<id>urn:sha1:dd976cb50d842b9ba30a5b6413134fdefa9e864d</id>
<content type='text'>
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[block] Allow use of a non-default EFI SAN boot filename</title>
<updated>2017-04-12T14:58:05+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-04-12T14:03:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=84d406ccf48c8808b0bb30d526b758e4b58cacc8'/>
<id>urn:sha1:84d406ccf48c8808b0bb30d526b758e4b58cacc8</id>
<content type='text'>
Some older operating systems (e.g. RHEL6) use a non-default filename
on the root disk and rely on setting an EFI variable to point to the
bootloader.  This does not work when performing a SAN boot on a
machine where the EFI variable is not present.

Fix by allowing a non-default filename to be specified via the
"sanboot --filename" option or the "san-filename" setting.  For
example:

  sanboot --filename \efi\redhat\grub.efi \
          iscsi:192.168.0.1::::iqn.2010-04.org.ipxe.demo:rhel6

or

  option ipxe.san-filename code 188 = string;
  option ipxe.san-filename "\\efi\\redhat\\grub.efi";
  option root-path "iscsi:192.168.0.1::::iqn.2010-04.org.ipxe.demo:rhel6";

Originally-implemented-by: Vishvananda Ishaya Abrams &lt;vish.ishaya@oracle.com&gt;
Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[block] Describe all SAN devices via ACPI tables</title>
<updated>2017-03-28T16:12:48+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-03-27T15:20:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=7cfdd769aac76d605aa31146c69ba518b194bea7'/>
<id>urn:sha1:7cfdd769aac76d605aa31146c69ba518b194bea7</id>
<content type='text'>
Describe all SAN devices via ACPI tables such as the iBFT.  For tables
that can describe only a single device (i.e. the aBFT and sBFT), one
table is installed per device.  For multi-device tables (i.e. the
iBFT), all devices are described in a single table.

An underlying SAN device connection may be closed at the time that we
need to construct an ACPI table.  We therefore introduce the concept
of an "ACPI descriptor" which enables the SAN boot code to maintain an
opaque pointer to the underlying object, and an "ACPI model" which can
build tables from a list of such descriptors.  This separates the
lifecycles of ACPI descriptions from the lifecycles of the block
device interfaces, and allows for construction of the ACPI tables even
if the block device interface has been closed.

For a multipath SAN device, iPXE will wait until sufficient
information is available to describe all devices but will not wait for
all paths to connect successfully.  For example: with a multipath
iSCSI boot iPXE will wait until at least one path has become available
and name resolution has completed on all other paths.  We do this
since the iBFT has to include IP addresses rather than DNS names.  We
will commence booting without waiting for the inactive paths to either
become available or close; this avoids unnecessary boot delays.

Note that the Linux kernel will refuse to accept an iBFT with more
than two NIC or target structures.  We therefore describe only the
NICs that are actually required in order to reach the described
targets.  Any iBFT with at most two targets is therefore guaranteed to
describe at most two NICs.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[int13con] Avoid overwriting random portions of SAN boot disks</title>
<updated>2017-03-27T07:50:59+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-03-27T07:50:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=c73af29fe206dda55a72119b6b29c5628aa09ed1'/>
<id>urn:sha1:c73af29fe206dda55a72119b6b29c5628aa09ed1</id>
<content type='text'>
The INT13 console type (CONSOLE_INT13) autodetects at initialisation
time a magic partition to be used for logging iPXE console output.  If
the INT13 drive number mapping is subsequently changed (e.g. because
iPXE was used to perform a SAN boot), then the console logging output
will be written to the incorrect disk.

Fix by recording the INT13 vector at initialisation time, and using
this original vector to emulate INT13 calls for all subsequent
accesses.  This should be robust against drive remapping performed
either by ourselves or by another bootloader (e.g. a chainloaded
undionly.kpxe which then performs a SAN boot).

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[int13] Improve geometry guessing for unaligned partitions</title>
<updated>2017-03-26T18:03:50+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-03-26T18:03:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=ebceb8ad8a5c3ad58ecbe513174c3620592d5976'/>
<id>urn:sha1:ebceb8ad8a5c3ad58ecbe513174c3620592d5976</id>
<content type='text'>
Some partition tables have partitions that are not aligned to a
cylinder boundary, which confuses the current geometry guessing logic.

Enhance the existing logic to ensure that we never reduce our guesses
for the number of heads or sectors per track, and add extra logic to
calculate the exact number of sectors per track if we find a partition
that starts within cylinder zero.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
<entry>
<title>[block] Add basic multipath support</title>
<updated>2017-03-26T13:06:02+00:00</updated>
<author>
<name>Michael Brown</name>
</author>
<published>2017-03-26T12:12:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/openslx-ng/ipxe.git/commit/?id=bb5a54b79a414082d0b39d478a8b3332c56d68e5'/>
<id>urn:sha1:bb5a54b79a414082d0b39d478a8b3332c56d68e5</id>
<content type='text'>
Add basic support for multipath block devices.  The "sanboot" and
"sanhook" commands now accept a list of SAN URIs.  We open all URIs
concurrently.  The first connection to become available for issuing
block device commands is marked as the active path and used for all
subsequent commands; all other connections are then closed.  Whenever
the active path fails, we reopen all URIs and repeat the process.

Signed-off-by: Michael Brown &lt;mcb30@ipxe.org&gt;
</content>
</entry>
</feed>
