Skip to content

Unable to create database on latest Linux kernel #20978

@ftyghome

Description

@ftyghome

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!

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions