github / github/codeql

Unable to create database on latest Linux kernel

Ouverte
#20,978 11 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
bug C++ question
Langage dominant
CodeQL
Étoiles
10.1k
Forks
2.1k
Merge moyen
2 j 15 h
PR mergées (30 j)
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!

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
c, linux
Domaine
devtools, operating-systems
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Active
Clarté
À clarifier
Accessibilité débutants
45/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.