File site/docs/build/index.md changed (mode: 100644) (index 396ebd0..2e56a89) |
... |
... |
libreboot from the available source code. |
25 |
25 |
The following document describes how `lbmk` works, and how you can make changes |
The following document describes how `lbmk` works, and how you can make changes |
26 |
26 |
to it: [libreboot maintenance manual](../maintain/) |
to it: [libreboot maintenance manual](../maintain/) |
27 |
27 |
|
|
28 |
|
Release status |
|
29 |
|
============== |
|
30 |
|
|
|
31 |
|
Information about status will be reported during builds; if a board is |
|
32 |
|
marked as stable, the build proceeds without further input. If the board is |
|
33 |
|
marked anything other, a warning appears asking if you wish to proceed; to |
|
34 |
|
disable these warnings, do this before building (not recommended): |
|
35 |
|
|
|
36 |
|
export LBMK_STATUS=n |
|
37 |
|
|
|
38 |
|
In Libreboot, we specify: `stable`, `unstable`, `broken` or `untested`. |
|
39 |
|
The "unstable" marking means that the board boots mostly/entirely reliably |
|
40 |
|
annd should be safe to use, but may have a few issues, but nothing which would, |
|
41 |
|
for example, cause safety issues e.g. thermal, data reliability etc. |
|
42 |
|
|
|
43 |
|
The `broken` setting means that a given board will likely brick if flashed. |
|
44 |
|
The `untested` setting means untested. |
|
45 |
|
|
|
46 |
|
Release status is always set with regards to the current lbmk revision, on |
|
47 |
|
the theory that the current revision is being used to generate a full release. |
|
48 |
|
|
|
49 |
28 |
Multi-threaded builds |
Multi-threaded builds |
50 |
29 |
===================== |
===================== |
51 |
30 |
|
|
52 |
31 |
Libreboot's build system defaults to a single build thread, but you can change |
Libreboot's build system defaults to a single build thread, but you can change |
53 |
32 |
it by doing e.g. |
it by doing e.g. |
54 |
33 |
|
|
55 |
|
export LBMK_THREADS=4 |
|
|
34 |
|
export XBMK_THREADS=4 |
56 |
35 |
|
|
57 |
36 |
This would make lbmk run on 4 threads. |
This would make lbmk run on 4 threads. |
58 |
37 |
|
|
|
38 |
|
More specifically: when compiling source trees via `script/trees`, `-jTHREADS` |
|
39 |
|
is passed, where THREADS is the number of threads. This is also set when running |
|
40 |
|
xz commands for compression, using the `-t` option. |
|
41 |
|
|
59 |
42 |
Environmental variables |
Environmental variables |
60 |
43 |
======================= |
======================= |
61 |
44 |
|
|
File site/docs/install/index.md changed (mode: 100644) (index 41bdee6..b7c1a1e) |
... |
... |
with `seabios_` at the start of the file name, and `grubfirst` at the end; |
31 |
31 |
these place a bootorder file in CBFS, so that SeaBIOS loads GRUB first, but |
these place a bootorder file in CBFS, so that SeaBIOS loads GRUB first, but |
32 |
32 |
you can still press ESC to bring up the SeaBIOS boot select menu. |
you can still press ESC to bring up the SeaBIOS boot select menu. |
33 |
33 |
|
|
34 |
|
The error above, in the linked bug report, occurs on `grub_free()` |
|
35 |
|
or `grub_realloc()` and could be caused by anything in GRUB; the user tested |
|
36 |
|
on memtest86plus and got no errors, and SeaBIOS works; BIOS GRUB (from a distro) |
|
37 |
|
also works, where GRUB doesn't need as many drivers; we suspect this may be |
|
38 |
|
a use-after-free in a GRUB driver, or otherwise something writing to heap memory |
|
39 |
|
wrongly. The bug is not yet known, only the symptom (the fatal error message). |
|
|
34 |
|
*This warning applies to Libreboot 20240504 and other recent releases.* |
|
35 |
|
|
|
36 |
|
**We have since fully mitigated this bug**; SeaBIOS is now the primary payload on |
|
37 |
|
all boards, with GRUB still available in the boot select menu, and we have |
|
38 |
|
identified that it was caused by the xHCI driver which has since been removed |
|
39 |
|
for the affected machines(machines which don't have xHCI anyway, but they |
|
40 |
|
touch code that does run on the given machines). The xHCI support works fine |
|
41 |
|
on some newer machines and will be re-added there by making GRUB multi-tree, |
|
42 |
|
so that different boards can use different versions of GRUB. This will be done, |
|
43 |
|
and present in the next Libreboot release after 20240504, in addition to fixing |
|
44 |
|
the actual bug itself. **For now, there are no problems!** |
40 |
45 |
|
|
41 |
46 |
Libreboot releases after 20240504 will *only* (on x86) contain ROM images where |
Libreboot releases after 20240504 will *only* (on x86) contain ROM images where |
42 |
47 |
SeaBIOS is the first payload, without disabling the SeaBIOS menu (no `grubonly`). You'll still be able to use GRUB, either by pressing ESC for the boot |
SeaBIOS is the first payload, without disabling the SeaBIOS menu (no `grubonly`). You'll still be able to use GRUB, either by pressing ESC for the boot |