1# SPDX-License-Identifier: GPL-2.0 2 3# We want to map these types to `isize`/`usize` manually, instead of 4# define them as `int`/`long` depending on platform bitwidth. 5--blocklist-type __kernel_s?size_t 6--blocklist-type __kernel_ptrdiff_t 7 8--opaque-type xregs_state 9--opaque-type desc_struct 10--opaque-type arch_lbr_state 11--opaque-type local_apic 12 13# Packed type cannot transitively contain a `#[repr(align)]` type. 14--opaque-type alt_instr 15--opaque-type x86_msi_data 16--opaque-type x86_msi_addr_lo 17 18# If SMP is disabled, `arch_spinlock_t` is defined as a ZST which triggers a Rust 19# warning. We don't need to peek into it anyway. 20--opaque-type spinlock 21 22# `seccomp`'s comment gets understood as a doctest 23--no-doc-comments 24 25# These functions use the `__preserve_most` calling convention, which neither bindgen 26# nor Rust currently understand, and which Clang currently declares to be unstable. 27--blocklist-function __list_.*_report 28 29# These constants are sometimes not recognized by bindgen depending on config. 30# We use const helpers to aid bindgen, to avoid conflicts when constants are 31# recognized, block generation of the non-helper constants. 32--blocklist-item ARCH_SLAB_MINALIGN 33--blocklist-item ARCH_KMALLOC_MINALIGN 34--blocklist-item VM_MERGEABLE 35--blocklist-item VM_READ 36--blocklist-item VM_WRITE 37--blocklist-item VM_EXEC 38--blocklist-item VM_SHARED 39--blocklist-item VM_MAYREAD 40--blocklist-item VM_MAYWRITE 41--blocklist-item VM_MAYEXEC 42--blocklist-item VM_MAYEXEC 43--blocklist-item VM_PFNMAP 44--blocklist-item VM_IO 45--blocklist-item VM_DONTCOPY 46--blocklist-item VM_DONTEXPAND 47--blocklist-item VM_LOCKONFAULT 48--blocklist-item VM_ACCOUNT 49--blocklist-item VM_NORESERVE 50--blocklist-item VM_HUGETLB 51--blocklist-item VM_SYNC 52--blocklist-item VM_ARCH_1 53--blocklist-item VM_WIPEONFORK 54--blocklist-item VM_DONTDUMP 55--blocklist-item VM_SOFTDIRTY 56--blocklist-item VM_MIXEDMAP 57--blocklist-item VM_HUGEPAGE 58--blocklist-item VM_NOHUGEPAGE 59 60# Structs should implement `Zeroable` when all of their fields do. 61--with-derive-custom-struct .*=MaybeZeroable 62--with-derive-custom-union .*=MaybeZeroable 63