forked from u-root/u-root
-
-
Notifications
You must be signed in to change notification settings - Fork 0
[pull] main from u-root:main #119
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
pull
wants to merge
186
commits into
devnw:main
Choose a base branch
from
u-root:main
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
cmd.connection() in "netcat.go" rejects SOCKET_TYPE_UNIX when SSLConfig.Enabled or SSLConfig.VerifyTrust is set. Therefore, checking for (SSLConfig.Enabled or SSLConfig.VerifyTrust) under SOCKET_TYPE_UNIX in cmd.setupListener() in "listen.go" can only yield false. Remove this dead check. Best viewed with "git show -U5". Signed-off-by: Laszlo Ersek <[email protected]>
…ource In a subsequent patch, I'll rewrite SSLOptions.GenerateTLSConfiguration(). So that hunks of the old and the new function not be interleaved in that patch, move the current code verbatim to a new source file, temporarily. Best viewed with "git show --no-renames --color-moved=zebra". Signed-off-by: Laszlo Ersek <[email protected]>
GenerateTLSConfiguration() currently works identically in client mode and server mode. This is wrong for several reasons: (1) "--ssl-verify" only makes sense in client mode (neither nmap's ncat, nor u-root's netcat, support client authentication in server mode). Ignore "-ssl-verify" in server mode. (This is also what nmap's ncat does.) (2) "--ssl-trustfile" only makes sense if "--ssl-verify" is in effect; ignore "--ssl-trustfile" otherwise. (3) "--ssl-cert" and "--ssl-key" are indeed required in server mode, but they should be possible to omit in client mode; make them optional in client mode. Note that, if these options are set in client mode, an interfacing *netcat* server still does not authenticate the client; however, a *different* SSL server could try to authenticate the client. (4) "--ssl-servername" only makes sense in client mode; ignore it in server mode. Add 39 unit tests for covering every *path* (not just every branch) in GenerateTLSConfiguration(). Signed-off-by: Laszlo Ersek <[email protected]>
Enable the netcatVM() helper function to take any number of trailing "uimage.Modifier" arguments. This is a pure refactoring; no observable change. Best viewed with "git show -b -W". Signed-off-by: Laszlo Ersek <[email protected]>
Demonstrate certificate validation and data transfer. Signed-off-by: Laszlo Ersek <[email protected]>
Remove unimplemented features. Signed-off-by: Jens Drenhaus <[email protected]>
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.37.0 to 0.38.0. - [Commits](golang/net@v0.37.0...v0.38.0) --- updated-dependencies: - dependency-name: golang.org/x/net dependency-version: 0.38.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <[email protected]>
when context will be cancelled cleanup will be executed in a loop, this probably never happens because context is context.Background(), but I think its better to exit function anyway. Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
SMBIOSBase returns base address and size of header. Since SMBIOSBase might return either base address SMBIOS2 or SMBIO3, we need a way to distinguish the actual version of SMBIOS. Introudce a new method to get SMBIO3 header size. This method allows caller to compare the size of header to figure out the SMBIOS version. Signed-off-by: Ajan Zhong <[email protected]>
According to EDK2 UPL implementation, SMBIOS3 info can be provided by device tree info only. Add SMBIOS3 child node in reserved memory node to provide SMBIOS3 info. Signed-off-by: Ajan Zhong <[email protected]>
In previous implementation of universalpayload.Load() method, execution will be handed over to Universal Payload directly. In this case, warning messages need to be printed inside universalpayload package in case we succeed to load and boot Universal Payload. In order to keep universalpayload package without any warning printed, separate universalpayload.Load() method to Load() and Exec(), then any warning messages can be retrieved from return value of Load() method, and print warning messages out of universalpayload package before caller invokes Exec() method. Signed-off-by: Ajan Zhong <[email protected]>
Returns any warning message produced during universalpayload package loading Universal Paylaod binary to kexec, then kexec prints warning messages. This logic ensures universalpayload package never prints message when it succees to load Universal Payload binary. Signed-off-by: Ajan Zhong <[email protected]>
Add test case to cover constructing SMBIOS3 node in Device Tree. Signed-off-by: Ajan Zhong <[email protected]>
Signed-off-by: Siarhiej Siemianczuk <[email protected]>
Signed-off-by: Daniel Lublin <[email protected]>
CONFIG_NET_CLS_U32=y is necessary for the upcoming "tc" integration test. Signed-off-by: Laszlo Ersek <[email protected]>
Start using the kernels with CONFIG_NET_CLS_U32=y, from commit f0e05c3 (".circleci/images: enable the tc-u32 filter type in kernel configs", 2025-04-25). (I visited https://ghcr.io/u-root/u-root/test-kernel-amd64 https://ghcr.io/u-root/u-root/test-kernel-arm https://ghcr.io/u-root/u-root/test-kernel-arm64 with my browser, and grabbed the digests of the most recently built images that were tagged as "main".) Signed-off-by: Laszlo Ersek <[email protected]>
Non-root qdiscs have classes for parents, which are identified by class IDs, not by flat integers. Fix the qdisc args parser. Signed-off-by: Laszlo Ersek <[email protected]>
Deduplicate the fmt.Fprintf call. Signed-off-by: Laszlo Ersek <[email protected]>
The output changes, for example, from TestDev2 htb TestDev2 sfq TestDev2 sfq TestDev2 sfq to TestDev2 qdisc htb 1: root TestDev2 qdisc sfq 30: parent 1:30 TestDev2 qdisc sfq 10: parent 1:10 TestDev2 qdisc sfq 20: parent 1:20 Signed-off-by: Laszlo Ersek <[email protected]>
The output changes, for example, from TestDev2 qdisc htb 1: root to TestDev2 qdisc htb 1: root r2q 10 default 0x30 direct_qlen 1000 Signed-off-by: Laszlo Ersek <[email protected]>
https://github.com/mvdan/gofumpt Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Bumps [form-data](https://github.com/form-data/form-data) from 4.0.0 to 4.0.4. - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md) - [Commits](form-data/form-data@v4.0.0...v4.0.4) --- updated-dependencies: - dependency-name: form-data dependency-version: 4.0.4 dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]>
During integration test, we have to specify GOARM=5 to run vmtest locally [1], GOARM=7 always run into initramfs crash. This issue is caused by floating point support on different ARM architectures. ARMv5 supports software floating point only, when GOARM=5 enabled, go build utilizes software FP solution to build initramfs. When GOARM=7 is enabled, hardware FP instruction will be used to build initramfs, in this case, we need to initialize FP related registers in kernel to ensure hardware FP instruction from user level initramfs can be invoked with correct environment. [1]:https://github.com/u-root/u-root/blob/main/.github/workflows/tests.yml#L38 Signed-off-by: Ajan Zhong <[email protected]>
Due to ARM kernel configuration update to support GOARM=7 for hardware Floating Point support, update ARM kernel image hash. Signed-off-by: Ajan Zhong <[email protected]>
With commit #8710979 merged, there is no limitation on ARM architecture verison for QEMU instance now. Signed-off-by: Ajan Zhong <[email protected]>
Signed-off-by: Ronald G Minnich <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Andrey Nering <[email protected]>
Signed-off-by: Ronald G Minnich <[email protected]>
The long argument capability was not even being used. Signed-off-by: Ronald G Minnich <[email protected]>
We had a guiding principle in u-root not to depend on a shell. The tftp test is a complex shell script, that is basically undebuggable. Remove this shell script. It sets a bad precedent. I realize there is one other shell-based test left, the fork bomb test; I will try to remove the dependency there as well. Signed-off-by: Ronald G. Minnich <[email protected]>
Signed-off-by: Ronald G Minnich <[email protected]>
With luck, the tests cover all cases. Pflag Normalize is more powerful than this replacement code, but not enough better to keep using it. Signed-off-by: Ronald G Minnich <[email protected]>
There may be references to the baseboard table we want to remove. This allows us to remove all instances in other baseboard tables or group association tables. Signed-off-by: Andrew Sun <[email protected]>
kernel modules are allowed to run thier initialization code in parallel, and for modules that take a long time (e.g. probing hardware, etc.), we can noticably reduce boot times by loading modules in parallel. We want to avoid calling loadModule() for the same dep multiple times as the kernel will return EEXIST for the duplicate module load (plus the wasted cycles loading a duplicate image). Adds a concurrent-safe parallelProbeDep() loading implementation, and updates ProbeOptions() to load dependency modules in parallel. Probe() and ProbeOptions() themselves remain concurrent-unsafe. Fixes #3424 Signed-off-by: Khazhismel Kumykov <[email protected]>
Export new Prober type holding known module state (depMap) & probing options, and new concurrent-safe Prober.Probe method for loading one module and its dependencies. Fixes #3424 Signed-off-by: Khazhismel Kumykov <[email protected]>
In many situations the fixed lines at the top of the menu come out somewhat messy because the end of line does not include a Carriage Return. Add one. In the worst case there will be two if there is another added by the output system. Signed-off-by: jelischer <[email protected]>
use term for all menu output All menu contents need to take the same path so as to not get re-ordered. Signed-off-by: jelischer <[email protected]>
This reverts commit c9a322d. Signed-off-by: Ajan Zhong <[email protected]>
This reverts commit c3217ac. Signed-off-by: Ajan Zhong <[email protected]>
System memory information has been provided in DTB, there is no need to provide system memory info again in handoff blocks. Remove system memory info in handoff block reduces the foot print of UPL solution, since in large scale server, there will be plenty of system memory regions. Signed-off-by: Ajan Zhong <[email protected]>
This allowed for the Go runtime futexes to work on an Armv7 target, MDM9625. Without 32bit time compat, the Go runtime crashes and prints: ``` futexwakeup addr=0x547a08 returned -38 SIGSEGV: segmentation violation PC=0x55e04 m=2 sigcode=1 addr=0x1006 goroutine 0 gp=0x14025a8 m=2 mp=0x142c808 [idle]: runtime.futexwakeup(0x547a08, 0x1) runtime/os_linux.go:100 +0x6c fp=0x1445f94 sp=0x1445f68 pc=0x55e04 ... ``` Full message: https://gist.github.com/orangecms/d7a8a59ec9dc28b74a20da09ff2db3ec Coming from here: https://github.com/golang/go/blob/339c903a75c3fe936fb4ed6c355d15e6081d6af3/src/runtime/os_linux.go#L97 Note: -38 means ENOSYS. 32bit time compat is not (yet) mentioned in the Go minimum requirements: https://go.dev/wiki/MinimumRequirements From Linux `arch/Kconfig`: config COMPAT_32BIT_TIME bool "Provide system calls for 32-bit time_t" default !64BIT || COMPAT help This enables 32 bit time_t support in addition to 64 bit time_t support. This is relevant on all 32-bit architectures, and 64-bit architectures as part of compat syscall handling. For reference, in Linux, there is a second `SYSCALL_DEFINE6` under the 32bit time compat condition: https://github.com/torvalds/linux/blob/8f5ae30d69d7543eee0d70083daf4de8fe15d585/kernel/futex/syscalls.c#L491 Signed-off-by: Daniel Maslowski <[email protected]>
Also, reword variables->options. Signed-off-by: Daniel Maslowski <[email protected]>
This leads the reader toward the configs that we provide. Signed-off-by: Daniel Maslowski <[email protected]>
This is very old code, which I guess none of us ever noticed. /proc/pid/cmdline has embedded NULLs, which need to be changed to space. Signed-off-by: Ronald G Minnich <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.1)
Can you help keep this open source service alive? 💖 Please sponsor : )