github / github/codeql

preload tracer sets errno

Open
#13,894 4 comments 0 reactions 0 assignees View on GitHub
question
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.