- 30 Mar, 2021 1 commit
-
-
Christian Ehrhardt authored
In certain cases (e.g. toolchain changes) the size of the created EFI blob can end up triggering a rounding down which breaks the build. Example: debian/util/geniso src/bin-combined/ipxe.iso src/bin-i386-pcbios/ipxe.lkrn \ src/bin-x86_64-efi/ipxe.efi ... ++ stat -c %s src/bin-x86_64-efi/ipxe.efi + blocks=896 + mkfs.msdos -C src/bin-combined/iso.dir.uayAjK/efi.img 896 + mmd -i src/bin-combined/iso.dir.uayAjK/efi.img ::efi + mmd -i src/bin-combined/iso.dir.uayAjK/efi.img ::efi/boot + mcopy -o -i src/bin-combined/iso.dir.uayAjK/efi.img \ src/bin-x86_64-efi/ipxe.efi ::efi/boot/bootx64.efi Disk full This is due to: echo $(($(stat -c %s "$EFI") / 1024)) 872 echo $(($(stat -c %s "$EFI") / 1024 + 55)) 927 echo $(((($(stat -c %s "$EFI") / 1024 + 55)/32*32))) 896 <- Rounds DOWN This is due to size+55 => 927 being "just below" the next 32 iteration which would be at 928. In many cases that works fine (I don't know how the +55 was invented, I guess that is for headers). But in some cases it caps too much eventualily ending up in a too small image file. Rounding up (in bash) usually is "N+1/divisor". Therefore if add +1 before the rounding for 32 we'd avoid the issue. I compared the resulting ISO size with former (Ubuntu) builds and it was still well within the range of past builds (869,947,948 - now 884). Signed-off-by:
Christian Ehrhardt <christian.ehrhardt@canonical.com>
-
- 25 Feb, 2020 2 commits
-
-
Bastian Blank authored
-
Bastian Blank authored
-
- 02 Jan, 2020 4 commits
-
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
- 19 Dec, 2019 2 commits
-
-
Bastian Blank authored
-
Bastian Blank authored
-
- 14 Dec, 2019 7 commits
-
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
- 09 Feb, 2019 8 commits
-
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
Patch-Name: util-elf2efi-GNU_SOURCE.patch
-
Bastian Blank authored
-
Bastian Blank authored
-
Bastian Blank authored
Conflicts: src/drivers/infiniband/linda.c
-
- 25 Jan, 2019 1 commit
-
-
Michael Brown authored
Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
- 21 Jan, 2019 3 commits
-
-
Petr Borsodi authored
The Option::ROM module recognizes and checks EFI header of image. The disrom.pl utility dumps this header if is present. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
Petr Borsodi authored
The Option::ROM module now compares the Code Type in the PCIR header to 0x00 (PC-AT) in order to check the presence of other header types (PnP, UNDI, iPXE, etc). The validity of these headers are checked not only by offset, but by range and signature checks also. The image checksum and initial size also depends on Code Type. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
Michael Brown authored
GCC 9 warns that abs() may truncate its signed long argument. Fix by using labs() instead. Reported-by:
Martin Liška <mliska@suse.cz> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
- 15 Jan, 2019 3 commits
-
-
Aaron Young authored
Fix strcmp() and strncmp() to return proper standard positive/negative values for unequal strings. Current implementation is backwards (i.e. the functions are returning negative when should be positive and vice-versa). Currently all consumers of these functions only check the return value for ==0 or !=0 and so we can safely change the implementation without breaking things. Signed-off-by:
Aaron Young <Aaron.Young@oracle.com> Modified-by:
Michael Brown <mcb30@ipxe.org> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
Ignat Korchagin authored
Current (simplified): 1. InstallMultipleProtocolInterfaces if err goto err_install_protocol_interface; 2. OpenProtocol(efi_nii_protocol_guid) if err goto err_open_nii; 3. OpenProtocol(efi_nii31_protocol_guid) if err goto err_open_nii31; 4. efi_child_add if err goto err_efi_child_add; ... err_efi_child_add: CloseProtocol(efi_nii_protocol_guid) <= should be efi_nii31_protocol_guid err_open_nii: <= should be err_open_nii31 CloseProtocol(efi_nii31_protocol_guid) <= should be efi_nii_protocol_guid err_open_nii31: <= should be err_open_nii UninstallMultipleProtocolInterfaces Signed-off-by:Ignat Korchagin <ignat@cloudflare.com> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
Petr Borsodi authored
PCI Configuration Space contains fields prog-if at the offset 0x09, sub-class at the offset 0x0a and base-class at the offset 0x0b (it respects little endian). PCIR structure uses these fields in the same order. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
- 17 Sep, 2018 1 commit
-
-
Christian Hesse authored
Starting from binutils 2.31.0 (commit bd7ab16b) x86-64 assembler generates R_X86_64_PLT32 instead of R_X86_64_PC32. Acked-by:
John Jolly <jjolly@suse.com> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
- 26 Aug, 2018 1 commit
-
-
Martin Habets authored
The first adapters in this family are X2522-10, X2522-25, X2541 and X2542. These no longer use PCI BAR 0 for I/O, but use that for memory. In other words, BAR 2 on SFN8xxx adapters now becomes BAR 0. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
- 17 Jul, 2018 2 commits
-
-
Michael Brown authored
Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
Michael Brown authored
Devices that support jumbo frames will currently default to the largest possible MTU. This assumption is valid for virtual adapters such as virtio-net, where the MTU must have been configured by a system administrator, but is unsafe in the general case of a physical adapter. Default to the standard Ethernet MTU, unless explicitly overridden either by the driver or via the ${netX/mtu} setting. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
- 09 Jul, 2018 1 commit
-
-
Michael Brown authored
Avoid calling rndis_halt() and rndis->op->close() twice if the call to register_netdev() fails. Reported-by:
Roman Kagan <rkagan@virtuozzo.com> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
- 08 Jul, 2018 1 commit
-
-
Michael Brown authored
Some versions of gcc seem to silently accept an attempt to disable an unrecognised warning (e.g. via -Wno-stringop-truncation) but will then report the unrecognised warning if any other error occurs during the build, resulting in a potentially misleading error message. Avoid this potential confusion by using the positive-form tests in order to determine the workaround CFLAGS. Signed-off-by:Michael Brown <mcb30@ipxe.org>
-
- 07 Jul, 2018 3 commits
-
-
Roman Kagan authored
The definition of version_response channel message in Linux doesn't include version field, so the upcoming VMBus implementation in QEMU doesn't set it either. Neither Windows nor Linux had any problem with this. The check against this field is redundant because the message is the response to initiate_contact message containing the specific version requested, so the response with version_supported=true is unambiguous. Drop this check and don't rely on the field to be present in the message. Signed-off-by:
Roman Kagan <rkagan@virtuozzo.com> Modified-by:
Michael Brown <mcb30@ipxe.org> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
Roman Kagan authored
register_netdev expects ->hw_addr and ->ll_addr to be already filled, so move it towards the end of register_rndis, after the respective fields have been successfully queried from the underlying device. Signed-off-by:
Roman Kagan <rkagan@virtuozzo.com> Modified-by:
Michael Brown <mcb30@ipxe.org> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-
Rob Taglang authored
Modified-by:
Michael Brown <mcb30@ipxe.org> Signed-off-by:
Michael Brown <mcb30@ipxe.org>
-