freebsd-dev/sys
Allan Jude dbfcf648a3 Increase EFI boot file size frok 128k to 384k
generate_fat.sh does the following:
- create an 800kb zero-filled file
- create an md device backed by this file
- format the device fat12
- mount the filesystem
- create the EFI ESP directory structure
- create the EFI boot file (BOOTx64 for amd64, BOOTaa64 for aarch64, etc)
- Adds a marker to the beginning of the file, and pad it to 384kb
- 384kb was chosen as it is less than half of 800kb, thus allowing
  users to keep a backup of their older boot file in the small partition
- Unmount the filesystem
- Scan the image and find the offset where the marker was inserted
- The process requires root, to make image generation easier, images for
  each architecture are pregenerated, compressed with xz, and checked
  into svn.

The Makefile that generates boot1.efifat does the following:
- Ensure the compiled boot1.efi file is no larger than the generated image
- Decompress the template created by generate-fat.sh
- dd the contents of boot1.efi into boot1.efifat starting at the offset
  where the marker is found. This allows any file less than the maximum
  size to be written into the fat filesystem without having to mount it,
  so no root privileges are required.

Later work by imp and myself makes bsdinstall create a 200mb fat16 instead
of using this process, but it is retained to make image generation easier.

Submitted by:	Eric McCorkle (original version)
Reviewed by:	emaste, tsoome, Eric McCorkle
MFC after:	1 month
Differential Revision:	https://reviews.freebsd.org/D9680
2017-09-13 17:00:02 +00:00
..
amd64 Add MMCCAM-enabled kernel config for IMX6, reduce debug noice in MMCCAM kernels 2017-09-13 10:56:02 +00:00
arm Defer attaching and probing iicbus and its children until interrupts are 2017-09-13 16:54:27 +00:00
arm64 Add MMCCAM-enabled kernel config for arm64 2017-09-11 19:07:42 +00:00
boot Increase EFI boot file size frok 128k to 384k 2017-09-13 17:00:02 +00:00
bsm Commit the 64-bit inode project. 2017-05-23 09:29:05 +00:00
cam cam iosched: Limit the quanta default to hz if it's below 200 2017-09-12 23:46:33 +00:00
cddl slightly simplify zfs_vptocnp 2017-09-13 07:09:58 +00:00
compat Only search the scope ID in ip6_find_dev() for IPv6 addresses which 2017-09-09 12:50:12 +00:00
conf Jenkins i386 LINT build uses NOTES to generate its LINT kernel config. 2017-09-13 03:56:03 +00:00
contrib The diff is the initial submission of Cavium Liquidio 2350/2360 10/25G 2017-09-12 23:36:58 +00:00
crypto aesni: quiet -Wcast-qual 2017-08-16 22:54:35 +00:00
ddb Rename mkdumpheader() and group EKCD functions in kern_shutdown.c. 2017-08-18 04:04:09 +00:00
dev Defer attaching and probing iicbus and its children until interrupts are 2017-09-13 16:54:27 +00:00
fs Style. 2017-08-28 21:04:56 +00:00
gdb
geom Fix information leak in geli(8) integrity mode 2017-09-09 01:41:01 +00:00
gnu Update DTS files from Linux 4.12 2017-07-09 13:53:32 +00:00
i386 Revert r323087 2017-09-01 17:03:48 +00:00
isa Use better hard-coded defaults for the cursor shape, and remove nearby 2017-08-19 19:33:16 +00:00
kern Fix two issues with not ready data in sockets (read: sendfile) 2017-09-13 16:47:23 +00:00
kgssapi
libkern x86/crc32_sse42.c: quiet unused function warning 2017-08-11 17:05:31 +00:00
mips Deorbit catman. The tradeoff of disk for performance has long since tipped 2017-09-13 16:35:16 +00:00
modules Don't (try to) build lio(4) if the SOURCELESS_UCODE is set. 2017-09-13 15:17:35 +00:00
net Roll up iflib commits from github. This pulls in most of the work done 2017-09-13 01:18:42 +00:00
net80211 net80211: fix a typo (premable -> preamble). 2017-08-27 22:13:03 +00:00
netgraph Check return value from soaccept(). 2017-06-14 16:13:20 +00:00
netinet Export the UDP encapsualation port and the path state. 2017-09-12 21:08:50 +00:00
netinet6 Fix a locking issue found by Coverity scanning the usrsctp library. 2017-09-09 20:51:54 +00:00
netipsec Fix possible double releasing for SA reference. 2017-09-01 11:51:07 +00:00
netpfil pf_get_sport(): Prevent possible endless loop when searching for an unused nat port 2017-08-08 21:09:26 +00:00
netsmb
nfs Improve FHA locality control for NFS read/write requests. 2017-07-31 15:23:19 +00:00
nfsclient
nfsserver
nlm Commit the 64-bit inode project. 2017-05-23 09:29:05 +00:00
ofed Remove unsafe access to the LinuxKPI file structure from ibcore. 2017-09-09 06:34:20 +00:00
opencrypto Use const with some read-only buffers in opencrypto APIs. 2017-05-09 18:28:42 +00:00
powerpc Fix riscv and powerpc compilation after r323329. 2017-09-09 05:56:04 +00:00
riscv Fix riscv and powerpc compilation after r323329. 2017-09-09 05:56:04 +00:00
rpc Listening sockets improvements. 2017-06-08 21:30:34 +00:00
security Sprinkle __read_frequently on few obvious places. 2017-09-06 20:33:33 +00:00
sparc64 Revert r323087 2017-09-01 17:03:48 +00:00
sys Roll up iflib commits from github. This pulls in most of the work done 2017-09-13 01:18:42 +00:00
teken Fix syscons escape sequence for setting the local cursor type. This sequence 2017-08-18 15:40:40 +00:00
tests style(9): sort headers 2017-05-09 05:08:47 +00:00
tools make.conf: Add the possibility to use another DTC 2017-06-17 23:34:53 +00:00
ufs The new fsck recovery information to enable it to find backup 2017-09-04 20:19:36 +00:00
vm Fix a logic error in the item size calculation for internal UMA zones. 2017-09-13 15:44:54 +00:00
x86 MCA: Rename AMD MISC bits/masks 2017-09-11 20:42:07 +00:00
xdr * limit size of buffers to RPC_MAXDATASIZE 2017-06-01 06:12:25 +00:00
xen
Makefile Remove glimpse make target added in r181432 2017-05-22 15:53:30 +00:00