preload tracer sets errno
- Dominant language
- CodeQL
- Stars
- 10.1k
- Forks
- 2.1k
- Avg merge
- 2d 15h
- Merged PRs (30d)
- 141
Description
**Description of the issue**
The library that gets preloaded by the `preload_tracer` sets the `errno` to `EINVAL`
This seems to be a similar issue to https://github.com/rizsotto/Bear/issues/469 and prevents the Linux kernel from being able to compile fully due to the use of errno here:
https://github.com/torvalds/linux/blob/f6a691685962637e53371788fe2a72b171aedc68/scripts/kallsyms.c#L134
```
[2023-08-05 17:56:22] [build-stdout] CC init/version-timestamp.o
[2023-08-05 17:56:22] [build-stdout] LD .tmp_vmlinux.kallsyms1
[2023-08-05 17:56:23] [build-stdout] NM .tmp_vmlinux.kallsyms1.syms
[2023-08-05 17:56:23] [build-stdout] KSYMS .tmp_vmlinux.kallsyms1.S
[2023-08-05 17:56:23] [build-stderr] read_symbol: Invalid argument
[2023-08-05 17:56:23] [build-stderr] make[2]: *** [scripts/Makefile.vmlinux:36: vmlinux] Error 1
[2023-08-05 17:56:23] [build-stderr] make[1]: *** [/home/user/linux/Makefile:1238: vmlinux] Error 2
[2023-08-05 17:56:23] [build-stderr] make: *** [Makefile:234: __sub-make] Error 2
```
Contributor guide
Research direction
Read the preload_tracer implementation and the referenced scripts/kallsyms.c line 134, then reproduce the Linux kernel build failure shown in the report. Trace where the preloaded library changes errno and verify completion by confirming that the kernel build no longer reports “read_symbol: Invalid argument”.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, linux
- Domain
- operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100