github / github/codeql

Unable to create database on latest Linux kernel

Open
#20,978 11 comments 0 reactions 0 assignees View on GitHub
bug C++ question
Dominant language
CodeQL
Stars
10.1k
Forks
2.1k
Avg merge
2d 15h
Merged PRs (30d)
141

Description

**Description of the issue**

I'm attempting to analyze the Linux kernel using CodeQL, but I'm encountering errors during database creation.

**Steps to reproduce:**

1. Clone the latest Linux kernel repository
2. Run: `codeql database create db --language c`
3. CodeQL correctly detects it as a Linux kernel and starts the autobuild process
4. The build completes defconfig and compiles the kernel successfully

**Problem:**

The trace output contains numerous "identifier 'asm' is undefined" errors, such as:

```
[E 15:16:45 4019640] Warning[extractor-c++]: In construct_text_message: "./include/linux/sched/signal.h", line 278: error: identifier "asm" is undefined
WARN_ON(sig->flags & SIGNAL_GROUP_EXIT);
^

"./include/linux/mm_types.h", line 1362: error: identifier "asm" is undefined
set_mask_bits(bitmap, mask, bits);
^

"./arch/x86/include/asm/pgtable.h", line 741: error: identifier "asm" is undefined
WARN_ON_ONCE((pgprot_val(pgprot) & (_PAGE_DIRTY | _PAGE_RW)) ==
^
```

Additionally, the resulting database is highly incomplete and contains very little information, making it unusable for analysis.

**Environment tested:**

- Ubuntu 24.04 and Arch Linux
- Latest CodeQL and version from June 2024

I would greatly appreciate any guidance on what might be causing this issue. Thank you very much for your time!

Contributor guide

Open the contributing guide

Research direction

Start by reproducing `codeql database create db --language c` on the latest Linux kernel and inspect the extractor trace, especially the reported errors in `include/linux/sched/signal.h`, `include/linux/mm_types.h`, and `arch/x86/include/asm/pgtable.h`. Compare behavior on Ubuntu 24.04 and Arch Linux with the latest CodeQL versions; done means database creation completes without the `asm` errors and produces usable analysis data.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, linux
Domain
devtools, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.