Showing preview only (2,749K chars total). Download the full file or copy to clipboard to get everything.
Repository: eeriedusk/knockles
Branch: master
Commit: 821d5c7e48a2
Files: 11
Total size: 2.6 MB
Directory structure:
gitextract_i041z4ml/
├── .gitignore
├── .gitmodules
├── LICENSE
├── README.md
└── src/
├── Makefile
├── bin/
│ └── .gitkeep
├── knockles.bpf.c
├── knockles.c
├── knockles_event.h
├── knuckknock.py
└── vmlinux.h
================================================
FILE CONTENTS
================================================
================================================
FILE: .gitignore
================================================
bin/knockles
.output/
.vscode/
================================================
FILE: .gitmodules
================================================
[submodule "libbpf"]
path = libbpf
url = https://github.com/libbpf/libbpf/
================================================
FILE: LICENSE
================================================
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
================================================
FILE: README.md
================================================
> **Warning**
> This git repository was meant to be a small (and fun) demonstration of what can be done with eBPF. It was clearly over-engineered as it was not developped nor optimized for any kind of use.
# Knockles - eBPF Port Knocking Tool 🚪🐝
Knockles, is a port knocking tool based on [eBPF](https://ebpf.io/what-is-ebpf) 🐝.
It allows to remotely open a TCP connection while being completely invisible to port scanners.
- A single SYN request is sent on an opened || closed port 📨 📫
- It carries an OTP for authentication so you can be the only one to open a port 🔐
- Once authentified, a random (HMAC based) port is opened for a TCP connection 🎲
- Then, the port is closed as soon as a connection has been established 🚪
## Server configuration
> Modify the following macros/variables
```
./knockles/src/knockles.bpf.c
```
- `PORT`: Port monitored for knocks *[default: `80`]*
```
./knockles/src/knockles.c
```
- `HMAC_DURATION`: Time range between two different OTP (in seconds) *[default: `30`]*
- `LISTENING_DURATION`: Timeout of the opened port if no connection occurs (in seconds) *[default: `30`]*
- `SECRET`: HMAC secret key *[default: `MY_SECRET_KEY`]*
## Server compilation
### Requirements
#### Debian
```bash
sudo apt install git make pkg-config libelf-dev clang-11 libc6-dev-i386 bpftool libssl-dev -y
pip install scapy
```
#### Ubuntu
```bash
sudo apt install git make pkg-config libelf-dev clang-11 libc6-dev-i386 linux-tools-common linux-tools-$(uname -r) libssl-dev -y
pip install scapy
```
### Build
```bash
cd ./knockles/src
make
```
## Usage
### Server side
```text
Usage: ./knockles [OPTION]...
eBPF port knocking tool - Server.
--help display this help and exit
--daemon run program as daemon
```
### Client side
```text
usage: knuckknock.py [-h] -s KEY -t TIME -d IP -p PORT
eBPF port knocking tool - Client.
optional arguments:
-h, --help show this help message and exit
-s KEY , --secret KEY
HMAC secret key
-t TIME, --time TIME generated HMAC duration
-d IP, --dst IP destination IP address
-p PORT, --port PORT monitored port
```
================================================
FILE: src/Makefile
================================================
# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)
OUTPUT := .output
CLANG ?= clang-11
LLVM_STRIP ?= llvm-strip-11
BPFTOOL ?= /usr/sbin/bpftool
LIBBPF_SRC := $(abspath ../libbpf/src)
LIBBPF_OBJ := $(abspath $(OUTPUT)/libbpf.a)
INCLUDES := -I$(OUTPUT)
CFLAGS := -g -Wall
ARCH := $(shell uname -m | sed 's/x86_64/x86/')
APPS = knockles
# Get Clang's default includes on this system. We'll explicitly add these dirs
# to the includes list when compiling with `-target bpf` because otherwise some
# architecture-specific dirs will be "missing" on some architectures/distros -
# headers such as asm/types.h, asm/byteorder.h, asm/socket.h, asm/sockios.h,
# sys/cdefs.h etc. might be missing.
#
# Use '-idirafter': Don't interfere with include mechanics except where the
# build would have failed anyways.
CLANG_BPF_SYS_INCLUDES = $(shell $(CLANG) -v -E - </dev/null 2>&1 \
| sed -n '/<...> search starts here:/,/End of search list./{ s| \(/.*\)|-idirafter \1|p }')
ifeq ($(V),1)
Q =
msg =
else
Q = @
msg = @printf ' %-8s %s%s\n' \
"$(1)" \
"$(patsubst $(abspath $(OUTPUT))/%,%,$(2))" \
"$(if $(3), $(3))";
MAKEFLAGS += --no-print-directory
endif
.PHONY: all
all: $(APPS)
.PHONY: clean
clean:
$(call msg,CLEAN)
$(Q)rm -rf $(OUTPUT) $(APPS)
$(Q)cd bin && rm -f $(APPS) $(HELPERS)
$(OUTPUT) $(OUTPUT)/libbpf:
$(call msg,MKDIR,$@)
$(Q)mkdir -p $@
# Build libbpf
$(LIBBPF_OBJ): $(wildcard $(LIBBPF_SRC)/*.[ch] $(LIBBPF_SRC)/Makefile) | $(OUTPUT)/libbpf
$(call msg,LIB,$@)
$(Q)$(MAKE) -C $(LIBBPF_SRC) BUILD_STATIC_ONLY=1 \
OBJDIR=$(dir $@)/libbpf DESTDIR=$(dir $@) \
INCLUDEDIR= LIBDIR= UAPIDIR= \
install
# Build BPF code
$(OUTPUT)/%.bpf.o: %.bpf.c $(LIBBPF_OBJ) $(wildcard %.h) vmlinux.h | $(OUTPUT)
$(call msg,BPF,$@)
$(Q)$(CLANG) -g -O2 -target bpf -D__TARGET_ARCH_$(ARCH) $(INCLUDES) $(CLANG_BPF_SYS_INCLUDES) -c $(filter %.c,$^) -o $@
$(Q)$(LLVM_STRIP) -g $@ # strip useless DWARF info
# Generate BPF skeletons
$(OUTPUT)/%.skel.h: $(OUTPUT)/%.bpf.o | $(OUTPUT)
$(call msg,GEN-SKEL,$@)
$(Q)$(BPFTOOL) gen skeleton $< > $@
# Build user-space code
$(patsubst %,$(OUTPUT)/%.o,$(APPS)): %.o: %.skel.h
$(OUTPUT)/%.o: %.c $(wildcard %.h) | $(OUTPUT)
$(call msg,CC,$@)
$(Q)$(CC) $(CFLAGS) $(INCLUDES) -c $(filter %.c,$^) -o $@
# Build application binary
$(APPS): %: $(OUTPUT)/%.o $(LIBBPF_OBJ) | $(OUTPUT)
$(call msg,BINARY,$@)
$(Q)$(CC) $(CFLAGS) $^ -l:libz.a -l:libelf.a -l:libcrypto.a -l:libdl.a -Wl,--whole-archive -lpthread -Wl,--no-whole-archive --static -o bin/$@
# Build helpers
$(HELPERS):
$(call msg,BINARY,$@)
$(Q)$(CC) $(CFLAGS) $@.c -o bin/$@
# delete failed targets
.DELETE_ON_ERROR:
# keep intermediate (.skel.h, .bpf.o, etc) targets
.SECONDARY:
================================================
FILE: src/bin/.gitkeep
================================================
================================================
FILE: src/knockles.bpf.c
================================================
#include "vmlinux.h"
#include "knockles_event.h"
#include <bpf/bpf_helpers.h>
#include <bpf/bpf_tracing.h>
#include <bpf/bpf_core_read.h>
#define PORT 80
char LICENSE[] SEC("license") = "Dual BSD/GPL";
/****************************************************/
/*!
* \brief Ring buffer map use to send event
* to the userland program
*/
struct {
__uint(type, BPF_MAP_TYPE_RINGBUF);
__uint(max_entries, 1);
} rb SEC(".maps");
struct netif_receive_skb_format{
unsigned long long h;
void *skbaddr;
unsigned int len;
};
SEC("tp/net/netif_receive_skb")
int trace_net_netif_receive_skb(struct netif_receive_skb_format *ctx){
struct sk_buff *skb = ctx->skbaddr;
unsigned char *head;
u16 transport_header, dst;
struct tcphdr tcp_hdr;
bpf_probe_read(&head, sizeof(unsigned char *), &skb->head);
bpf_probe_read(&transport_header, sizeof(u16), &skb->transport_header);
bpf_probe_read(&tcp_hdr, sizeof(tcp_hdr), (struct tcphdr *)(head+transport_header));
dst = ((tcp_hdr.dest & 0xff) << 8) | (tcp_hdr.dest >> 8);
if(dst != PORT) return 0;
if(tcp_hdr.syn != 1) return 0;
u16 network_header;
struct iphdr ip_hdr;
bpf_probe_read(&network_header, sizeof(u16), &skb->network_header);
bpf_probe_read(&ip_hdr, sizeof(ip_hdr), (struct iphdr *)(head+network_header));
event_t* event;
event = bpf_ringbuf_reserve(&rb, sizeof(event_t), 0);
if(!event) return 0;
event->id = (uint16_t) ((ip_hdr.id & 0xff) << 8) | (ip_hdr.id >> 8);
event->seq = (uint32_t) __builtin_bswap32(tcp_hdr.seq);
event->win = (uint16_t) ((tcp_hdr.window & 0xff) << 8) | (tcp_hdr.window >> 8);
bpf_ringbuf_submit(event, 0);
return 0;
};
================================================
FILE: src/knockles.c
================================================
#include <argp.h>
#include <unistd.h>
#include <stdio.h>
#include <signal.h>
#include <fcntl.h>
#include <sys/stat.h>
#include <sys/resource.h>
#include <openssl/evp.h>
#include <openssl/hmac.h>
#include <time.h>
#include <stdint.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include "knockles_event.h"
#include "knockles.skel.h"
#define HMAC_DURATION 30
#define LISTENING_DURATION 30
static char SECRET[] = "MY_SECRET_KEY";
static int SECRET_SIZE = sizeof(SECRET);
/****************************************************/
/*!
* \brief Use to maintain state when the program
* is use in interactive mode
*/
static volatile sig_atomic_t exiting;
/****************************************************/
/*!
* \brief Signal hanlder
*/
void sig_int(int signo){
exiting = 1;
}
/****************************************************/
/*!
* \brief Display LibBPF logs
*/
static int libbpf_print_fn(enum libbpf_print_level level, const char *format, va_list args){
return vfprintf(stderr, format, args);
}
/****************************************************/
/*!
* \brief HMAC generation and comparison
*/
static uint16_t hmac_cmp(event_t *e){
unsigned char clear[sizeof(uint64_t)], enc[16];
unsigned int l_enc;
uint64_t timestamp = time(NULL)/HMAC_DURATION;
for(int i=0;i<sizeof(timestamp);i++){
clear[i] = timestamp&0xFF;
timestamp >>= 8;
}
HMAC(EVP_md5(), SECRET, SECRET_SIZE, clear, sizeof(clear), enc, &l_enc);
unsigned char rcv[8];
uint16_t id = e->id;
uint32_t seq = e->seq;
uint16_t win = e->win;
for(int i=0;i<sizeof(rcv);i++){
if(i<2){
rcv[i] = id&0xFF;
id >>= 8;
}
else if(i<6){
rcv[i] = seq&0xFF;
seq >>= 8;
}
else{
rcv[i] = win&0xFF;
win >>= 8;
}
}
if(memcmp((char *)enc, (char *)rcv, sizeof(rcv))) return 1;
uint16_t port = (((uint16_t)(enc[9]))<<8)|enc[8];
return port;
}
/****************************************************/
/*!
* \brief Socket handler
*/
static int sock_handler(uint16_t port){
int s, c;
struct sockaddr_in serv, client;
struct timeval timeout = {
.tv_sec = LISTENING_DURATION
};
fd_set readfds;
socklen_t l_client = sizeof(client);
s = socket(AF_INET, SOCK_STREAM, 0);
if(s == -1) return 1;
serv.sin_family = AF_INET;
serv.sin_addr.s_addr = htonl(INADDR_ANY);
serv.sin_port = htons(port);
if ((bind(s, (struct sockaddr *)&serv, sizeof(serv))) != 0) return 1;
if ((listen(s, 1)) != 0) return 1;
FD_ZERO(&readfds);
FD_SET(s, &readfds);
if(!select(s+1, &readfds, 0, 0, &timeout)){
close(s);
return 1;
}
c = accept(s, (struct sockaddr *)&client, &l_client);
close(s);
if(c<0)return 1;
return 0;
}
/****************************************************/
/*!
* \brief Event handler, debugging mode
*/
static int handle_event_dbg(void *ctx, void *data, size_t data_sz){
event_t *e = data;
uint16_t port = hmac_cmp(e);
printf("%-15u | %-15u | %-15u | ", (unsigned int)e->id, (unsigned int)e->seq, (unsigned int)e->win);
if(port<=1024){
printf("%-15s | %-15s | %-15s\n","FAIL","N/A","N/A");
return 0;
};
printf("%-15s | %-15u | %-15s\n", "VALID", (unsigned int)port, "OPEN");
if(sock_handler(port)){
printf("%-15u | %-15u | %-15u | %-15s | %-15u | %-15s\n", (unsigned int)e->id, (unsigned int)e->seq, (unsigned int)e->win, "VALID", (unsigned int)port, "CLOSED");
}
else{
printf("%-15u | %-15u | %-15u | %-15s | %-15u | %-15s\n", (unsigned int)e->id, (unsigned int)e->seq, (unsigned int)e->win, "VALID", (unsigned int)port, "CONNECTED");
}
return 0;
}
/****************************************************/
/*!
* \brief Event handler
*/
static int handle_event(void *ctx, void *data, size_t data_sz){
event_t *e = data;
uint16_t port = hmac_cmp(e);
if(port<=1024)return 0;
if(sock_handler(port)) return 0;
return 0;
}
/****************************************************/
/*!
* \brief Continue the program as a daemon
*/
static void start_daemon(void){
pid_t child = fork();
if (child < 0) exit(child);
if (child > 0) exit(0);
setsid();
child = fork();
if (child < 0) exit(child);
if (child > 0) exit(0);
umask(0);
close(0);
close(1);
close(2);
int fd_0 = open("/dev/null", O_RDWR);
if (fd_0 != 0) exit(1);
int fd_1 = dup(fd_0);
if (fd_1 != 1) exit(1);
int fd_2 = dup(fd_0);
if (fd_2 != 2) exit(1);
}
/****************************************************/
int main(int argc, char *argv[]){
struct ring_buffer *rb = NULL;
struct knockles_bpf *skel;
int err;
char dmn_flag[] = "--daemon";
char hlp_flag[] = "--help";
int dmn_mode = 0;
// Parse arguments
if(argc>1){
for(int i=1;i<argc;i++){
if(strncmp(argv[i], dmn_flag, sizeof(dmn_flag)) == 0) dmn_mode = 1;
if(strncmp(argv[i], hlp_flag, sizeof(hlp_flag)) == 0){
printf("Usage: ./knockles [OPTION]...\n");
printf("eBPF port knocking tool - Server.\n");
printf(" --help display this help and exit\n");
printf(" --daemon run program as daemon\n\n");
exit(0);
}
}
}
if(!dmn_mode) libbpf_set_print(libbpf_print_fn);
struct rlimit rlim = {
.rlim_cur = RLIM_INFINITY,
.rlim_max = RLIM_INFINITY,
};
setrlimit(RLIMIT_MEMLOCK, &rlim);
signal(SIGINT, sig_int);
signal(SIGTERM, sig_int);
// Open BPF application
skel = knockles_bpf__open();
if (!skel){
fprintf(stderr, "Failed to open BPF program: %s\n", strerror(errno));
return 1;
}
// Attach tracepoint handler
err = knockles_bpf__load(skel);
if (err){
fprintf(stderr, "Failed to load BPF program: %s\n", strerror(errno));
goto cleanup;
}
// Attach tracepoint handler
err = knockles_bpf__attach(skel);
if (err){
fprintf(stderr, "Failed to attach BPF program: %s\n", strerror(errno));
goto cleanup;
}
rb = ring_buffer__new(bpf_map__fd(skel->maps.rb), handle_event, NULL, NULL);
// Set up ring buffer
if(dmn_mode){
rb = ring_buffer__new(bpf_map__fd(skel->maps.rb), handle_event, NULL, NULL);
}
else{
rb = ring_buffer__new(bpf_map__fd(skel->maps.rb), handle_event_dbg, NULL, NULL);
}
if (!rb){
err = -1;
fprintf(stderr, "Failed to create ring buffer\n");
goto cleanup;
}
// Display user readable events
if(!dmn_mode){
printf("\n\e[1meBPF Port Knocking Tool.\e[0m\n\n");
printf("%-15s | %-15s | %-15s | %-15s | %-15s | %-15s\n", "ID", "SEQ", "WIN", "HMAC", "PORT", "STATUS");
printf("%-15s | %-15s | %-15s | %-15s | %-15s | %-15s\n", "-", "-", "-", "-", "-", "-");
}
if(dmn_mode){
start_daemon();
}
while (!exiting){
err = ring_buffer__poll(rb, 100);
if (err == -EINTR){
err = 0;
break;
}
if (err < 0){
printf("Error polling perf buffer: %d\n", err);
break;
}
}
cleanup:
knockles_bpf__destroy(skel);
return -err;
}
================================================
FILE: src/knockles_event.h
================================================
#ifndef __KNOCKLES_EVENT_H__
#define __KNOCKLES_EVENT_H__
/****************************************************/
/*!
* \brief Event share between CO-RE code and userland
*/
typedef struct _event_t{
uint16_t id;
uint32_t seq;
uint16_t win;
} event_t;
#endif
================================================
FILE: src/knuckknock.py
================================================
#!/usr/bin/env python3
from scapy.layers.inet import IP, TCP
from scapy.sendrecv import send
from time import time
import hmac, hashlib
import argparse
p = argparse.ArgumentParser(description='eBPF port knocking tool - Client.', formatter_class=argparse.RawTextHelpFormatter)
p.add_argument('-s', '--secret', metavar='KEY ', type=str, help='HMAC secret key', required=True)
p.add_argument('-t', '--time', metavar='TIME', type=int, help='generated HMAC duration', required=True)
p.add_argument('-d', '--dst', metavar='IP', type=str, help='destination IP address', required=True)
p.add_argument('-p', '--port', metavar='PORT', type=str, help='monitored port', required=True)
args = p.parse_args()
timestamp = int(time()//args.time)
h = hmac.new(args.secret.encode(), int.to_bytes(timestamp, 8, byteorder='little'), hashlib.md5)
h = h.digest()
id = int.from_bytes(h[0:2], byteorder='little')
seq = int.from_bytes(h[2:6], byteorder='little')
win = int.from_bytes(h[6:8], byteorder='little')
tcp_port = int.from_bytes(h[8:10], byteorder='little')
print(tcp_port)
syn = TCP(dport=int(args.port), flags='S', seq=seq, window=win)
ip = IP(dst=args.dst, id=id)
send(ip/syn, verbose=False)
================================================
FILE: src/vmlinux.h
================================================
#ifndef __VMLINUX_H__
#define __VMLINUX_H__
#ifndef BPF_NO_PRESERVE_ACCESS_INDEX
#pragma clang attribute push (__attribute__((preserve_access_index)), apply_to = record)
#endif
typedef signed char __s8;
typedef unsigned char __u8;
typedef short int __s16;
typedef short unsigned int __u16;
typedef int __s32;
typedef unsigned int __u32;
typedef long long int __s64;
typedef long long unsigned int __u64;
typedef __s8 s8;
typedef __u8 u8;
typedef __s16 s16;
typedef __u16 u16;
typedef __s32 s32;
typedef __u32 u32;
typedef __s64 s64;
typedef __u64 u64;
enum {
false = 0,
true = 1,
};
typedef long int __kernel_long_t;
typedef long unsigned int __kernel_ulong_t;
typedef int __kernel_pid_t;
typedef unsigned int __kernel_uid32_t;
typedef unsigned int __kernel_gid32_t;
typedef __kernel_ulong_t __kernel_size_t;
typedef __kernel_long_t __kernel_ssize_t;
typedef long long int __kernel_loff_t;
typedef long long int __kernel_time64_t;
typedef __kernel_long_t __kernel_clock_t;
typedef int __kernel_timer_t;
typedef int __kernel_clockid_t;
typedef unsigned int __poll_t;
typedef u32 __kernel_dev_t;
typedef __kernel_dev_t dev_t;
typedef short unsigned int umode_t;
typedef __kernel_pid_t pid_t;
typedef __kernel_clockid_t clockid_t;
typedef _Bool bool;
typedef __kernel_uid32_t uid_t;
typedef __kernel_gid32_t gid_t;
typedef __kernel_loff_t loff_t;
typedef __kernel_size_t size_t;
typedef __kernel_ssize_t ssize_t;
typedef s32 int32_t;
typedef u32 uint32_t;
typedef u64 sector_t;
typedef u64 blkcnt_t;
typedef u64 dma_addr_t;
typedef unsigned int gfp_t;
typedef unsigned int fmode_t;
typedef u64 phys_addr_t;
typedef phys_addr_t resource_size_t;
typedef struct {
int counter;
} atomic_t;
typedef struct {
s64 counter;
} atomic64_t;
struct list_head {
struct list_head *next;
struct list_head *prev;
};
struct hlist_node;
struct hlist_head {
struct hlist_node *first;
};
struct hlist_node {
struct hlist_node *next;
struct hlist_node **pprev;
};
struct callback_head {
struct callback_head *next;
void (*func)(struct callback_head *);
};
typedef int initcall_entry_t;
struct lock_class_key {};
struct fs_context;
struct fs_parameter_spec;
struct dentry;
struct super_block;
struct module;
struct file_system_type {
const char *name;
int fs_flags;
int (*init_fs_context)(struct fs_context *);
const struct fs_parameter_spec *parameters;
struct dentry * (*mount)(struct file_system_type *, int, const char *, void *);
void (*kill_sb)(struct super_block *);
struct module *owner;
struct file_system_type *next;
struct hlist_head fs_supers;
struct lock_class_key s_lock_key;
struct lock_class_key s_umount_key;
struct lock_class_key s_vfs_rename_key;
struct lock_class_key s_writers_key[3];
struct lock_class_key i_lock_key;
struct lock_class_key i_mutex_key;
struct lock_class_key i_mutex_dir_key;
};
typedef void *fl_owner_t;
struct file;
struct kiocb;
struct iov_iter;
struct dir_context;
struct poll_table_struct;
struct vm_area_struct;
struct inode;
struct file_lock;
struct page;
struct pipe_inode_info;
struct seq_file;
struct file_operations {
struct module *owner;
loff_t (*llseek)(struct file *, loff_t, int);
ssize_t (*read)(struct file *, char *, size_t, loff_t *);
ssize_t (*write)(struct file *, const char *, size_t, loff_t *);
ssize_t (*read_iter)(struct kiocb *, struct iov_iter *);
ssize_t (*write_iter)(struct kiocb *, struct iov_iter *);
int (*iopoll)(struct kiocb *, bool);
int (*iterate)(struct file *, struct dir_context *);
int (*iterate_shared)(struct file *, struct dir_context *);
__poll_t (*poll)(struct file *, struct poll_table_struct *);
long int (*unlocked_ioctl)(struct file *, unsigned int, long unsigned int);
long int (*compat_ioctl)(struct file *, unsigned int, long unsigned int);
int (*mmap)(struct file *, struct vm_area_struct *);
long unsigned int mmap_supported_flags;
int (*open)(struct inode *, struct file *);
int (*flush)(struct file *, fl_owner_t);
int (*release)(struct inode *, struct file *);
int (*fsync)(struct file *, loff_t, loff_t, int);
int (*fasync)(int, struct file *, int);
int (*lock)(struct file *, int, struct file_lock *);
ssize_t (*sendpage)(struct file *, struct page *, int, size_t, loff_t *, int);
long unsigned int (*get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
int (*check_flags)(int);
int (*flock)(struct file *, int, struct file_lock *);
ssize_t (*splice_write)(struct pipe_inode_info *, struct file *, loff_t *, size_t, unsigned int);
ssize_t (*splice_read)(struct file *, loff_t *, struct pipe_inode_info *, size_t, unsigned int);
int (*setlease)(struct file *, long int, struct file_lock **, void **);
long int (*fallocate)(struct file *, int, loff_t, loff_t);
void (*show_fdinfo)(struct seq_file *, struct file *);
ssize_t (*copy_file_range)(struct file *, loff_t, struct file *, loff_t, size_t, unsigned int);
loff_t (*remap_file_range)(struct file *, loff_t, struct file *, loff_t, loff_t, unsigned int);
int (*fadvise)(struct file *, loff_t, loff_t, int);
};
struct qspinlock {
union {
atomic_t val;
struct {
u8 locked;
u8 pending;
};
struct {
u16 locked_pending;
u16 tail;
};
};
};
typedef struct qspinlock arch_spinlock_t;
struct raw_spinlock {
arch_spinlock_t raw_lock;
};
struct spinlock {
union {
struct raw_spinlock rlock;
};
};
typedef struct spinlock spinlock_t;
struct notifier_block;
struct atomic_notifier_head {
spinlock_t lock;
struct notifier_block *head;
};
enum system_states {
SYSTEM_BOOTING = 0,
SYSTEM_SCHEDULING = 1,
SYSTEM_RUNNING = 2,
SYSTEM_HALT = 3,
SYSTEM_POWER_OFF = 4,
SYSTEM_RESTART = 5,
SYSTEM_SUSPEND = 6,
};
struct taint_flag {
char c_true;
char c_false;
bool module;
};
struct jump_entry {
s32 code;
s32 target;
long int key;
};
struct static_key_mod;
struct static_key {
atomic_t enabled;
union {
long unsigned int type;
struct jump_entry *entries;
struct static_key_mod *next;
};
};
struct static_key_true {
struct static_key key;
};
struct static_key_false {
struct static_key key;
};
typedef __s64 time64_t;
struct __kernel_timespec {
__kernel_time64_t tv_sec;
long long int tv_nsec;
};
struct timezone {
int tz_minuteswest;
int tz_dsttime;
};
struct timespec64 {
time64_t tv_sec;
long int tv_nsec;
};
enum timespec_type {
TT_NONE = 0,
TT_NATIVE = 1,
TT_COMPAT = 2,
};
typedef s32 old_time32_t;
struct old_timespec32 {
old_time32_t tv_sec;
s32 tv_nsec;
};
struct pollfd;
struct restart_block {
long int (*fn)(struct restart_block *);
union {
struct {
u32 *uaddr;
u32 val;
u32 flags;
u32 bitset;
u64 time;
u32 *uaddr2;
} futex;
struct {
clockid_t clockid;
enum timespec_type type;
union {
struct __kernel_timespec *rmtp;
struct old_timespec32 *compat_rmtp;
};
u64 expires;
} nanosleep;
struct {
struct pollfd *ufds;
int nfds;
int has_timeout;
long unsigned int tv_sec;
long unsigned int tv_nsec;
} poll;
};
};
struct thread_info {
long unsigned int flags;
u32 status;
};
struct refcount_struct {
atomic_t refs;
};
typedef struct refcount_struct refcount_t;
struct llist_node {
struct llist_node *next;
};
struct __call_single_node {
struct llist_node llist;
union {
unsigned int u_flags;
atomic_t a_flags;
};
};
struct load_weight {
long unsigned int weight;
u32 inv_weight;
};
struct rb_node {
long unsigned int __rb_parent_color;
struct rb_node *rb_right;
struct rb_node *rb_left;
};
struct sched_statistics {
u64 wait_start;
u64 wait_max;
u64 wait_count;
u64 wait_sum;
u64 iowait_count;
u64 iowait_sum;
u64 sleep_start;
u64 sleep_max;
s64 sum_sleep_runtime;
u64 block_start;
u64 block_max;
u64 exec_max;
u64 slice_max;
u64 nr_migrations_cold;
u64 nr_failed_migrations_affine;
u64 nr_failed_migrations_running;
u64 nr_failed_migrations_hot;
u64 nr_forced_migrations;
u64 nr_wakeups;
u64 nr_wakeups_sync;
u64 nr_wakeups_migrate;
u64 nr_wakeups_local;
u64 nr_wakeups_remote;
u64 nr_wakeups_affine;
u64 nr_wakeups_affine_attempts;
u64 nr_wakeups_passive;
u64 nr_wakeups_idle;
};
struct util_est {
unsigned int enqueued;
unsigned int ewma;
};
struct sched_avg {
u64 last_update_time;
u64 load_sum;
u64 runnable_sum;
u32 util_sum;
u32 period_contrib;
long unsigned int load_avg;
long unsigned int runnable_avg;
long unsigned int util_avg;
struct util_est util_est;
};
struct cfs_rq;
struct sched_entity {
struct load_weight load;
struct rb_node run_node;
struct list_head group_node;
unsigned int on_rq;
u64 exec_start;
u64 sum_exec_runtime;
u64 vruntime;
u64 prev_sum_exec_runtime;
u64 nr_migrations;
struct sched_statistics statistics;
int depth;
struct sched_entity *parent;
struct cfs_rq *cfs_rq;
struct cfs_rq *my_q;
long unsigned int runnable_weight;
long: 64;
long: 64;
long: 64;
struct sched_avg avg;
};
struct sched_rt_entity {
struct list_head run_list;
long unsigned int timeout;
long unsigned int watchdog_stamp;
unsigned int time_slice;
short unsigned int on_rq;
short unsigned int on_list;
struct sched_rt_entity *back;
};
typedef s64 ktime_t;
struct timerqueue_node {
struct rb_node node;
ktime_t expires;
};
enum hrtimer_restart {
HRTIMER_NORESTART = 0,
HRTIMER_RESTART = 1,
};
struct hrtimer_clock_base;
struct hrtimer {
struct timerqueue_node node;
ktime_t _softexpires;
enum hrtimer_restart (*function)(struct hrtimer *);
struct hrtimer_clock_base *base;
u8 state;
u8 is_rel;
u8 is_soft;
u8 is_hard;
};
struct sched_dl_entity {
struct rb_node rb_node;
u64 dl_runtime;
u64 dl_deadline;
u64 dl_period;
u64 dl_bw;
u64 dl_density;
s64 runtime;
u64 deadline;
unsigned int flags;
unsigned int dl_throttled: 1;
unsigned int dl_boosted: 1;
unsigned int dl_yielded: 1;
unsigned int dl_non_contending: 1;
unsigned int dl_overrun: 1;
struct hrtimer dl_timer;
struct hrtimer inactive_timer;
};
struct cpumask {
long unsigned int bits[1];
};
typedef struct cpumask cpumask_t;
struct sched_info {
long unsigned int pcount;
long long unsigned int run_delay;
long long unsigned int last_arrival;
long long unsigned int last_queued;
};
struct plist_node {
int prio;
struct list_head prio_list;
struct list_head node_list;
};
struct vmacache {
u64 seqnum;
struct vm_area_struct *vmas[4];
};
struct task_rss_stat {
int events;
int count[4];
};
typedef struct raw_spinlock raw_spinlock_t;
struct prev_cputime {
u64 utime;
u64 stime;
raw_spinlock_t lock;
};
struct rb_root {
struct rb_node *rb_node;
};
struct rb_root_cached {
struct rb_root rb_root;
struct rb_node *rb_leftmost;
};
struct timerqueue_head {
struct rb_root_cached rb_root;
};
struct posix_cputimer_base {
u64 nextevt;
struct timerqueue_head tqhead;
};
struct posix_cputimers {
struct posix_cputimer_base bases[3];
unsigned int timers_active;
unsigned int expiry_active;
};
struct sem_undo_list;
struct sysv_sem {
struct sem_undo_list *undo_list;
};
struct sysv_shm {
struct list_head shm_clist;
};
typedef struct {
long unsigned int sig[1];
} sigset_t;
struct sigpending {
struct list_head list;
sigset_t signal;
};
typedef struct {
uid_t val;
} kuid_t;
struct seccomp_filter;
struct seccomp {
int mode;
struct seccomp_filter *filter;
};
struct wake_q_node {
struct wake_q_node *next;
};
struct task_io_accounting {
u64 rchar;
u64 wchar;
u64 syscr;
u64 syscw;
u64 read_bytes;
u64 write_bytes;
u64 cancelled_write_bytes;
};
typedef struct {
long unsigned int bits[1];
} nodemask_t;
struct seqcount {
unsigned int sequence;
};
typedef struct seqcount seqcount_t;
typedef atomic64_t atomic_long_t;
struct optimistic_spin_queue {
atomic_t tail;
};
struct mutex {
atomic_long_t owner;
spinlock_t wait_lock;
struct optimistic_spin_queue osq;
struct list_head wait_list;
};
struct arch_tlbflush_unmap_batch {
struct cpumask cpumask;
};
struct tlbflush_unmap_batch {
struct arch_tlbflush_unmap_batch arch;
bool flush_required;
bool writable;
};
struct page_frag {
struct page *page;
__u32 offset;
__u32 size;
};
struct desc_struct {
u16 limit0;
u16 base0;
u16 base1: 8;
u16 type: 4;
u16 s: 1;
u16 dpl: 2;
u16 p: 1;
u16 limit1: 4;
u16 avl: 1;
u16 l: 1;
u16 d: 1;
u16 g: 1;
u16 base2: 8;
};
typedef struct {
long unsigned int seg;
} mm_segment_t;
struct fregs_state {
u32 cwd;
u32 swd;
u32 twd;
u32 fip;
u32 fcs;
u32 foo;
u32 fos;
u32 st_space[20];
u32 status;
};
struct fxregs_state {
u16 cwd;
u16 swd;
u16 twd;
u16 fop;
union {
struct {
u64 rip;
u64 rdp;
};
struct {
u32 fip;
u32 fcs;
u32 foo;
u32 fos;
};
};
u32 mxcsr;
u32 mxcsr_mask;
u32 st_space[32];
u32 xmm_space[64];
u32 padding[12];
union {
u32 padding1[12];
u32 sw_reserved[12];
};
};
struct math_emu_info;
struct swregs_state {
u32 cwd;
u32 swd;
u32 twd;
u32 fip;
u32 fcs;
u32 foo;
u32 fos;
u32 st_space[20];
u8 ftop;
u8 changed;
u8 lookahead;
u8 no_update;
u8 rm;
u8 alimit;
struct math_emu_info *info;
u32 entry_eip;
};
struct xstate_header {
u64 xfeatures;
u64 xcomp_bv;
u64 reserved[6];
};
struct xregs_state {
struct fxregs_state i387;
struct xstate_header header;
u8 extended_state_area[0];
};
union fpregs_state {
struct fregs_state fsave;
struct fxregs_state fxsave;
struct swregs_state soft;
struct xregs_state xsave;
u8 __padding[4096];
};
struct fpu {
unsigned int last_cpu;
long unsigned int avx512_timestamp;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
union fpregs_state state;
};
struct perf_event;
struct io_bitmap;
struct thread_struct {
struct desc_struct tls_array[3];
long unsigned int sp;
short unsigned int es;
short unsigned int ds;
short unsigned int fsindex;
short unsigned int gsindex;
long unsigned int fsbase;
long unsigned int gsbase;
struct perf_event *ptrace_bps[4];
long unsigned int debugreg6;
long unsigned int ptrace_dr7;
long unsigned int cr2;
long unsigned int trap_nr;
long unsigned int error_code;
struct io_bitmap *io_bitmap;
long unsigned int iopl_emul;
mm_segment_t addr_limit;
unsigned int sig_on_uaccess_err: 1;
long: 63;
long: 64;
long: 64;
long: 64;
long: 64;
struct fpu fpu;
};
struct sched_class;
struct task_group;
struct mm_struct;
struct pid;
struct completion;
struct cred;
struct key;
struct nameidata;
struct fs_struct;
struct files_struct;
struct nsproxy;
struct signal_struct;
struct sighand_struct;
struct audit_context;
struct rt_mutex_waiter;
struct bio_list;
struct blk_plug;
struct reclaim_state;
struct backing_dev_info;
struct io_context;
struct capture_control;
struct kernel_siginfo;
typedef struct kernel_siginfo kernel_siginfo_t;
struct css_set;
struct robust_list_head;
struct compat_robust_list_head;
struct futex_pi_state;
struct perf_event_context;
struct mempolicy;
struct rseq;
struct task_delay_info;
struct uprobe_task;
struct vm_struct;
struct task_struct {
struct thread_info thread_info;
volatile long int state;
void *stack;
refcount_t usage;
unsigned int flags;
unsigned int ptrace;
int on_cpu;
struct __call_single_node wake_entry;
unsigned int cpu;
unsigned int wakee_flips;
long unsigned int wakee_flip_decay_ts;
struct task_struct *last_wakee;
int recent_used_cpu;
int wake_cpu;
int on_rq;
int prio;
int static_prio;
int normal_prio;
unsigned int rt_priority;
const struct sched_class *sched_class;
struct sched_entity se;
struct sched_rt_entity rt;
struct task_group *sched_task_group;
struct sched_dl_entity dl;
unsigned int btrace_seq;
unsigned int policy;
int nr_cpus_allowed;
const cpumask_t *cpus_ptr;
cpumask_t cpus_mask;
struct sched_info sched_info;
struct list_head tasks;
struct plist_node pushable_tasks;
struct rb_node pushable_dl_tasks;
struct mm_struct *mm;
struct mm_struct *active_mm;
struct vmacache vmacache;
struct task_rss_stat rss_stat;
int exit_state;
int exit_code;
int exit_signal;
int pdeath_signal;
long unsigned int jobctl;
unsigned int personality;
unsigned int sched_reset_on_fork: 1;
unsigned int sched_contributes_to_load: 1;
unsigned int sched_migrated: 1;
unsigned int sched_remote_wakeup: 1;
int: 28;
unsigned int in_execve: 1;
unsigned int in_iowait: 1;
unsigned int restore_sigmask: 1;
unsigned int no_cgroup_migration: 1;
unsigned int frozen: 1;
long unsigned int atomic_flags;
struct restart_block restart_block;
pid_t pid;
pid_t tgid;
long unsigned int stack_canary;
struct task_struct *real_parent;
struct task_struct *parent;
struct list_head children;
struct list_head sibling;
struct task_struct *group_leader;
struct list_head ptraced;
struct list_head ptrace_entry;
struct pid *thread_pid;
struct hlist_node pid_links[4];
struct list_head thread_group;
struct list_head thread_node;
struct completion *vfork_done;
int *set_child_tid;
int *clear_child_tid;
u64 utime;
u64 stime;
u64 gtime;
struct prev_cputime prev_cputime;
long unsigned int nvcsw;
long unsigned int nivcsw;
u64 start_time;
u64 start_boottime;
long unsigned int min_flt;
long unsigned int maj_flt;
struct posix_cputimers posix_cputimers;
const struct cred *ptracer_cred;
const struct cred *real_cred;
const struct cred *cred;
struct key *cached_requested_key;
char comm[16];
struct nameidata *nameidata;
struct sysv_sem sysvsem;
struct sysv_shm sysvshm;
struct fs_struct *fs;
struct files_struct *files;
struct nsproxy *nsproxy;
struct signal_struct *signal;
struct sighand_struct *sighand;
sigset_t blocked;
sigset_t real_blocked;
sigset_t saved_sigmask;
struct sigpending pending;
long unsigned int sas_ss_sp;
size_t sas_ss_size;
unsigned int sas_ss_flags;
struct callback_head *task_works;
struct audit_context *audit_context;
kuid_t loginuid;
unsigned int sessionid;
struct seccomp seccomp;
u64 parent_exec_id;
u64 self_exec_id;
spinlock_t alloc_lock;
raw_spinlock_t pi_lock;
struct wake_q_node wake_q;
struct rb_root_cached pi_waiters;
struct task_struct *pi_top_task;
struct rt_mutex_waiter *pi_blocked_on;
void *journal_info;
struct bio_list *bio_list;
struct blk_plug *plug;
struct reclaim_state *reclaim_state;
struct backing_dev_info *backing_dev_info;
struct io_context *io_context;
struct capture_control *capture_control;
long unsigned int ptrace_message;
kernel_siginfo_t *last_siginfo;
struct task_io_accounting ioac;
u64 acct_rss_mem1;
u64 acct_vm_mem1;
u64 acct_timexpd;
nodemask_t mems_allowed;
seqcount_t mems_allowed_seq;
int cpuset_mem_spread_rotor;
int cpuset_slab_spread_rotor;
struct css_set *cgroups;
struct list_head cg_list;
struct robust_list_head *robust_list;
struct compat_robust_list_head *compat_robust_list;
struct list_head pi_state_list;
struct futex_pi_state *pi_state_cache;
struct mutex futex_exit_mutex;
unsigned int futex_state;
struct perf_event_context *perf_event_ctxp[2];
struct mutex perf_event_mutex;
struct list_head perf_event_list;
struct mempolicy *mempolicy;
short int il_prev;
short int pref_node_fork;
struct rseq *rseq;
u32 rseq_sig;
long unsigned int rseq_event_mask;
struct tlbflush_unmap_batch tlb_ubc;
union {
refcount_t rcu_users;
struct callback_head rcu;
};
struct pipe_inode_info *splice_pipe;
struct page_frag task_frag;
struct task_delay_info *delays;
int nr_dirtied;
int nr_dirtied_pause;
long unsigned int dirty_paused_when;
u64 timer_slack_ns;
u64 default_timer_slack_ns;
long unsigned int trace;
long unsigned int trace_recursion;
struct uprobe_task *utask;
int pagefault_disabled;
struct task_struct *oom_reaper_list;
struct vm_struct *stack_vm_area;
refcount_t stack_refcount;
void *security;
u64 mce_addr;
__u64 mce_ripv: 1;
__u64 mce_whole_page: 1;
__u64 __mce_reserved: 62;
struct callback_head mce_kill_me;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
struct thread_struct thread;
};
struct screen_info {
__u8 orig_x;
__u8 orig_y;
__u16 ext_mem_k;
__u16 orig_video_page;
__u8 orig_video_mode;
__u8 orig_video_cols;
__u8 flags;
__u8 unused2;
__u16 orig_video_ega_bx;
__u16 unused3;
__u8 orig_video_lines;
__u8 orig_video_isVGA;
__u16 orig_video_points;
__u16 lfb_width;
__u16 lfb_height;
__u16 lfb_depth;
__u32 lfb_base;
__u32 lfb_size;
__u16 cl_magic;
__u16 cl_offset;
__u16 lfb_linelength;
__u8 red_size;
__u8 red_pos;
__u8 green_size;
__u8 green_pos;
__u8 blue_size;
__u8 blue_pos;
__u8 rsvd_size;
__u8 rsvd_pos;
__u16 vesapm_seg;
__u16 vesapm_off;
__u16 pages;
__u16 vesa_attributes;
__u32 capabilities;
__u32 ext_lfb_base;
__u8 _reserved[2];
} __attribute__((packed));
struct apm_bios_info {
__u16 version;
__u16 cseg;
__u32 offset;
__u16 cseg_16;
__u16 dseg;
__u16 flags;
__u16 cseg_len;
__u16 cseg_16_len;
__u16 dseg_len;
};
struct apm_info {
struct apm_bios_info bios;
short unsigned int connection_version;
int get_power_status_broken;
int get_power_status_swabinminutes;
int allow_ints;
int forbid_idle;
int realmode_power_off;
int disabled;
};
struct edd_device_params {
__u16 length;
__u16 info_flags;
__u32 num_default_cylinders;
__u32 num_default_heads;
__u32 sectors_per_track;
__u64 number_of_sectors;
__u16 bytes_per_sector;
__u32 dpte_ptr;
__u16 key;
__u8 device_path_info_length;
__u8 reserved2;
__u16 reserved3;
__u8 host_bus_type[4];
__u8 interface_type[8];
union {
struct {
__u16 base_address;
__u16 reserved1;
__u32 reserved2;
} isa;
struct {
__u8 bus;
__u8 slot;
__u8 function;
__u8 channel;
__u32 reserved;
} pci;
struct {
__u64 reserved;
} ibnd;
struct {
__u64 reserved;
} xprs;
struct {
__u64 reserved;
} htpt;
struct {
__u64 reserved;
} unknown;
} interface_path;
union {
struct {
__u8 device;
__u8 reserved1;
__u16 reserved2;
__u32 reserved3;
__u64 reserved4;
} ata;
struct {
__u8 device;
__u8 lun;
__u8 reserved1;
__u8 reserved2;
__u32 reserved3;
__u64 reserved4;
} atapi;
struct {
__u16 id;
__u64 lun;
__u16 reserved1;
__u32 reserved2;
} __attribute__((packed)) scsi;
struct {
__u64 serial_number;
__u64 reserved;
} usb;
struct {
__u64 eui;
__u64 reserved;
} i1394;
struct {
__u64 wwid;
__u64 lun;
} fibre;
struct {
__u64 identity_tag;
__u64 reserved;
} i2o;
struct {
__u32 array_number;
__u32 reserved1;
__u64 reserved2;
} raid;
struct {
__u8 device;
__u8 reserved1;
__u16 reserved2;
__u32 reserved3;
__u64 reserved4;
} sata;
struct {
__u64 reserved1;
__u64 reserved2;
} unknown;
} device_path;
__u8 reserved4;
__u8 checksum;
} __attribute__((packed));
struct edd_info {
__u8 device;
__u8 version;
__u16 interface_support;
__u16 legacy_max_cylinder;
__u8 legacy_max_head;
__u8 legacy_sectors_per_track;
struct edd_device_params params;
} __attribute__((packed));
struct edd {
unsigned int mbr_signature[16];
struct edd_info edd_info[6];
unsigned char mbr_signature_nr;
unsigned char edd_info_nr;
};
struct ist_info {
__u32 signature;
__u32 command;
__u32 event;
__u32 perf_level;
};
struct edid_info {
unsigned char dummy[128];
};
struct setup_header {
__u8 setup_sects;
__u16 root_flags;
__u32 syssize;
__u16 ram_size;
__u16 vid_mode;
__u16 root_dev;
__u16 boot_flag;
__u16 jump;
__u32 header;
__u16 version;
__u32 realmode_swtch;
__u16 start_sys_seg;
__u16 kernel_version;
__u8 type_of_loader;
__u8 loadflags;
__u16 setup_move_size;
__u32 code32_start;
__u32 ramdisk_image;
__u32 ramdisk_size;
__u32 bootsect_kludge;
__u16 heap_end_ptr;
__u8 ext_loader_ver;
__u8 ext_loader_type;
__u32 cmd_line_ptr;
__u32 initrd_addr_max;
__u32 kernel_alignment;
__u8 relocatable_kernel;
__u8 min_alignment;
__u16 xloadflags;
__u32 cmdline_size;
__u32 hardware_subarch;
__u64 hardware_subarch_data;
__u32 payload_offset;
__u32 payload_length;
__u64 setup_data;
__u64 pref_address;
__u32 init_size;
__u32 handover_offset;
__u32 kernel_info_offset;
} __attribute__((packed));
struct sys_desc_table {
__u16 length;
__u8 table[14];
};
struct olpc_ofw_header {
__u32 ofw_magic;
__u32 ofw_version;
__u32 cif_handler;
__u32 irq_desc_table;
};
struct efi_info {
__u32 efi_loader_signature;
__u32 efi_systab;
__u32 efi_memdesc_size;
__u32 efi_memdesc_version;
__u32 efi_memmap;
__u32 efi_memmap_size;
__u32 efi_systab_hi;
__u32 efi_memmap_hi;
};
struct boot_e820_entry {
__u64 addr;
__u64 size;
__u32 type;
} __attribute__((packed));
struct boot_params {
struct screen_info screen_info;
struct apm_bios_info apm_bios_info;
__u8 _pad2[4];
__u64 tboot_addr;
struct ist_info ist_info;
__u64 acpi_rsdp_addr;
__u8 _pad3[8];
__u8 hd0_info[16];
__u8 hd1_info[16];
struct sys_desc_table sys_desc_table;
struct olpc_ofw_header olpc_ofw_header;
__u32 ext_ramdisk_image;
__u32 ext_ramdisk_size;
__u32 ext_cmd_line_ptr;
__u8 _pad4[116];
struct edid_info edid_info;
struct efi_info efi_info;
__u32 alt_mem_k;
__u32 scratch;
__u8 e820_entries;
__u8 eddbuf_entries;
__u8 edd_mbr_sig_buf_entries;
__u8 kbd_status;
__u8 secure_boot;
__u8 _pad5[2];
__u8 sentinel;
__u8 _pad6[1];
struct setup_header hdr;
__u8 _pad7[36];
__u32 edd_mbr_sig_buffer[16];
struct boot_e820_entry e820_table[128];
__u8 _pad8[48];
struct edd_info eddbuf[6];
__u8 _pad9[276];
} __attribute__((packed));
enum x86_hardware_subarch {
X86_SUBARCH_PC = 0,
X86_SUBARCH_LGUEST = 1,
X86_SUBARCH_XEN = 2,
X86_SUBARCH_INTEL_MID = 3,
X86_SUBARCH_CE4100 = 4,
X86_NR_SUBARCHS = 5,
};
struct range {
u64 start;
u64 end;
};
struct pt_regs {
long unsigned int r15;
long unsigned int r14;
long unsigned int r13;
long unsigned int r12;
long unsigned int bp;
long unsigned int bx;
long unsigned int r11;
long unsigned int r10;
long unsigned int r9;
long unsigned int r8;
long unsigned int ax;
long unsigned int cx;
long unsigned int dx;
long unsigned int si;
long unsigned int di;
long unsigned int orig_ax;
long unsigned int ip;
long unsigned int cs;
long unsigned int flags;
long unsigned int sp;
long unsigned int ss;
};
struct math_emu_info {
long int ___orig_eip;
struct pt_regs *regs;
};
typedef long unsigned int pteval_t;
typedef long unsigned int pmdval_t;
typedef long unsigned int pudval_t;
typedef long unsigned int p4dval_t;
typedef long unsigned int pgdval_t;
typedef long unsigned int pgprotval_t;
typedef struct {
pteval_t pte;
} pte_t;
struct pgprot {
pgprotval_t pgprot;
};
typedef struct pgprot pgprot_t;
typedef struct {
pgdval_t pgd;
} pgd_t;
typedef struct {
p4dval_t p4d;
} p4d_t;
typedef struct {
pudval_t pud;
} pud_t;
typedef struct {
pmdval_t pmd;
} pmd_t;
typedef struct page *pgtable_t;
struct address_space;
struct kmem_cache;
struct dev_pagemap;
struct page {
long unsigned int flags;
union {
struct {
struct list_head lru;
struct address_space *mapping;
long unsigned int index;
long unsigned int private;
};
struct {
dma_addr_t dma_addr;
};
struct {
union {
struct list_head slab_list;
struct {
struct page *next;
int pages;
int pobjects;
};
};
struct kmem_cache *slab_cache;
void *freelist;
union {
void *s_mem;
long unsigned int counters;
struct {
unsigned int inuse: 16;
unsigned int objects: 15;
unsigned int frozen: 1;
};
};
};
struct {
long unsigned int compound_head;
unsigned char compound_dtor;
unsigned char compound_order;
atomic_t compound_mapcount;
};
struct {
long unsigned int _compound_pad_1;
atomic_t hpage_pinned_refcount;
struct list_head deferred_list;
};
struct {
long unsigned int _pt_pad_1;
pgtable_t pmd_huge_pte;
long unsigned int _pt_pad_2;
union {
struct mm_struct *pt_mm;
atomic_t pt_frag_refcount;
};
spinlock_t ptl;
};
struct {
struct dev_pagemap *pgmap;
void *zone_device_data;
};
struct callback_head callback_head;
};
union {
atomic_t _mapcount;
unsigned int page_type;
unsigned int active;
int units;
};
atomic_t _refcount;
long: 64;
};
typedef struct cpumask cpumask_var_t[1];
struct tracepoint_func {
void *func;
void *data;
int prio;
};
struct tracepoint {
const char *name;
struct static_key key;
int (*regfunc)();
void (*unregfunc)();
struct tracepoint_func *funcs;
};
struct desc_ptr {
short unsigned int size;
long unsigned int address;
} __attribute__((packed));
struct cpuinfo_x86 {
__u8 x86;
__u8 x86_vendor;
__u8 x86_model;
__u8 x86_stepping;
int x86_tlbsize;
__u32 vmx_capability[3];
__u8 x86_virt_bits;
__u8 x86_phys_bits;
__u8 x86_coreid_bits;
__u8 cu_id;
__u32 extended_cpuid_level;
int cpuid_level;
union {
__u32 x86_capability[20];
long unsigned int x86_capability_alignment;
};
char x86_vendor_id[16];
char x86_model_id[64];
unsigned int x86_cache_size;
int x86_cache_alignment;
int x86_cache_max_rmid;
int x86_cache_occ_scale;
int x86_cache_mbm_width_offset;
int x86_power;
long unsigned int loops_per_jiffy;
u16 x86_max_cores;
u16 apicid;
u16 initial_apicid;
u16 x86_clflush_size;
u16 booted_cores;
u16 phys_proc_id;
u16 logical_proc_id;
u16 cpu_core_id;
u16 cpu_die_id;
u16 logical_die_id;
u16 cpu_index;
u32 microcode;
u8 x86_cache_bits;
unsigned int initialized: 1;
};
struct seq_operations {
void * (*start)(struct seq_file *, loff_t *);
void (*stop)(struct seq_file *, void *);
void * (*next)(struct seq_file *, void *, loff_t *);
int (*show)(struct seq_file *, void *);
};
struct x86_hw_tss {
u32 reserved1;
u64 sp0;
u64 sp1;
u64 sp2;
u64 reserved2;
u64 ist[7];
u32 reserved3;
u32 reserved4;
u16 reserved5;
u16 io_bitmap_base;
} __attribute__((packed));
struct entry_stack {
char stack[4096];
};
struct entry_stack_page {
struct entry_stack stack;
};
struct x86_io_bitmap {
u64 prev_sequence;
unsigned int prev_max;
long unsigned int bitmap[1025];
long unsigned int mapall[1025];
};
struct tss_struct {
struct x86_hw_tss x86_tss;
struct x86_io_bitmap io_bitmap;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
struct irq_stack {
char stack[16384];
};
struct fixed_percpu_data {
char gs_base[40];
long unsigned int stack_canary;
};
enum l1tf_mitigations {
L1TF_MITIGATION_OFF = 0,
L1TF_MITIGATION_FLUSH_NOWARN = 1,
L1TF_MITIGATION_FLUSH = 2,
L1TF_MITIGATION_FLUSH_NOSMT = 3,
L1TF_MITIGATION_FULL = 4,
L1TF_MITIGATION_FULL_FORCE = 5,
};
struct mpc_table {
char signature[4];
short unsigned int length;
char spec;
char checksum;
char oem[8];
char productid[12];
unsigned int oemptr;
short unsigned int oemsize;
short unsigned int oemcount;
unsigned int lapic;
unsigned int reserved;
};
struct mpc_cpu {
unsigned char type;
unsigned char apicid;
unsigned char apicver;
unsigned char cpuflag;
unsigned int cpufeature;
unsigned int featureflag;
unsigned int reserved[2];
};
struct mpc_bus {
unsigned char type;
unsigned char busid;
unsigned char bustype[6];
};
struct mpc_intsrc {
unsigned char type;
unsigned char irqtype;
short unsigned int irqflag;
unsigned char srcbus;
unsigned char srcbusirq;
unsigned char dstapic;
unsigned char dstirq;
};
struct x86_init_mpparse {
void (*mpc_record)(unsigned int);
void (*setup_ioapic_ids)();
int (*mpc_apic_id)(struct mpc_cpu *);
void (*smp_read_mpc_oem)(struct mpc_table *);
void (*mpc_oem_pci_bus)(struct mpc_bus *);
void (*mpc_oem_bus_info)(struct mpc_bus *, char *);
void (*find_smp_config)();
void (*get_smp_config)(unsigned int);
};
struct x86_init_resources {
void (*probe_roms)();
void (*reserve_resources)();
char * (*memory_setup)();
};
struct x86_init_irqs {
void (*pre_vector_init)();
void (*intr_init)();
void (*intr_mode_select)();
void (*intr_mode_init)();
};
struct x86_init_oem {
void (*arch_setup)();
void (*banner)();
};
struct x86_init_paging {
void (*pagetable_init)();
};
struct x86_init_timers {
void (*setup_percpu_clockev)();
void (*timer_init)();
void (*wallclock_init)();
};
struct x86_init_iommu {
int (*iommu_init)();
};
struct x86_init_pci {
int (*arch_init)();
int (*init)();
void (*init_irq)();
void (*fixup_irqs)();
};
struct x86_hyper_init {
void (*init_platform)();
void (*guest_late_init)();
bool (*x2apic_available)();
void (*init_mem_mapping)();
void (*init_after_bootmem)();
};
struct x86_init_acpi {
void (*set_root_pointer)(u64);
u64 (*get_root_pointer)();
void (*reduced_hw_early_init)();
};
struct x86_init_ops {
struct x86_init_resources resources;
struct x86_init_mpparse mpparse;
struct x86_init_irqs irqs;
struct x86_init_oem oem;
struct x86_init_paging paging;
struct x86_init_timers timers;
struct x86_init_iommu iommu;
struct x86_init_pci pci;
struct x86_hyper_init hyper;
struct x86_init_acpi acpi;
};
struct x86_cpuinit_ops {
void (*setup_percpu_clockev)();
void (*early_percpu_clock_init)();
void (*fixup_cpu_id)(struct cpuinfo_x86 *, int);
};
struct x86_legacy_devices {
int pnpbios;
};
enum x86_legacy_i8042_state {
X86_LEGACY_I8042_PLATFORM_ABSENT = 0,
X86_LEGACY_I8042_FIRMWARE_ABSENT = 1,
X86_LEGACY_I8042_EXPECTED_PRESENT = 2,
};
struct x86_legacy_features {
enum x86_legacy_i8042_state i8042;
int rtc;
int warm_reset;
int no_vga;
int reserve_bios_regions;
struct x86_legacy_devices devices;
};
struct x86_hyper_runtime {
void (*pin_vcpu)(int);
};
struct x86_platform_ops {
long unsigned int (*calibrate_cpu)();
long unsigned int (*calibrate_tsc)();
void (*get_wallclock)(struct timespec64 *);
int (*set_wallclock)(const struct timespec64 *);
void (*iommu_shutdown)();
bool (*is_untracked_pat_range)(u64, u64);
void (*nmi_init)();
unsigned char (*get_nmi_reason)();
void (*save_sched_clock_state)();
void (*restore_sched_clock_state)();
void (*apic_post_init)();
struct x86_legacy_features legacy;
void (*set_legacy_features)();
struct x86_hyper_runtime hyper;
};
struct pci_dev;
struct x86_msi_ops {
int (*setup_msi_irqs)(struct pci_dev *, int, int);
void (*teardown_msi_irq)(unsigned int);
void (*teardown_msi_irqs)(struct pci_dev *);
void (*restore_msi_irqs)(struct pci_dev *);
};
struct x86_apic_ops {
unsigned int (*io_apic_read)(unsigned int, unsigned int);
void (*restore)();
};
struct physid_mask {
long unsigned int mask[512];
};
typedef struct physid_mask physid_mask_t;
struct qrwlock {
union {
atomic_t cnts;
struct {
u8 wlocked;
u8 __lstate[3];
};
};
arch_spinlock_t wait_lock;
};
typedef struct qrwlock arch_rwlock_t;
typedef struct {
arch_rwlock_t raw_lock;
} rwlock_t;
struct rw_semaphore {
atomic_long_t count;
atomic_long_t owner;
struct optimistic_spin_queue osq;
raw_spinlock_t wait_lock;
struct list_head wait_list;
};
struct vdso_image {
void *data;
long unsigned int size;
long unsigned int alt;
long unsigned int alt_len;
long int sym_vvar_start;
long int sym_vvar_page;
long int sym_pvclock_page;
long int sym_hvclock_page;
long int sym_timens_page;
long int sym_VDSO32_NOTE_MASK;
long int sym___kernel_sigreturn;
long int sym___kernel_rt_sigreturn;
long int sym___kernel_vsyscall;
long int sym_int80_landing_pad;
};
struct ldt_struct;
typedef struct {
u64 ctx_id;
atomic64_t tlb_gen;
struct rw_semaphore ldt_usr_sem;
struct ldt_struct *ldt;
short unsigned int ia32_compat;
struct mutex lock;
void *vdso;
const struct vdso_image *vdso_image;
atomic_t perf_rdpmc_allowed;
u16 pkey_allocation_map;
s16 execute_only_pkey;
} mm_context_t;
struct kref {
refcount_t refcount;
};
struct kset;
struct kobj_type;
struct kernfs_node;
struct kobject {
const char *name;
struct list_head entry;
struct kobject *parent;
struct kset *kset;
struct kobj_type *ktype;
struct kernfs_node *sd;
struct kref kref;
unsigned int state_initialized: 1;
unsigned int state_in_sysfs: 1;
unsigned int state_add_uevent_sent: 1;
unsigned int state_remove_uevent_sent: 1;
unsigned int uevent_suppress: 1;
};
enum dl_dev_state {
DL_DEV_NO_DRIVER = 0,
DL_DEV_PROBING = 1,
DL_DEV_DRIVER_BOUND = 2,
DL_DEV_UNBINDING = 3,
};
struct dev_links_info {
struct list_head suppliers;
struct list_head consumers;
struct list_head needs_suppliers;
struct list_head defer_hook;
bool need_for_probe;
enum dl_dev_state status;
};
struct pm_message {
int event;
};
typedef struct pm_message pm_message_t;
struct swait_queue_head {
raw_spinlock_t lock;
struct list_head task_list;
};
struct completion {
unsigned int done;
struct swait_queue_head wait;
};
struct work_struct;
typedef void (*work_func_t)(struct work_struct *);
struct work_struct {
atomic_long_t data;
struct list_head entry;
work_func_t func;
};
struct wait_queue_head {
spinlock_t lock;
struct list_head head;
};
typedef struct wait_queue_head wait_queue_head_t;
enum rpm_request {
RPM_REQ_NONE = 0,
RPM_REQ_IDLE = 1,
RPM_REQ_SUSPEND = 2,
RPM_REQ_AUTOSUSPEND = 3,
RPM_REQ_RESUME = 4,
};
enum rpm_status {
RPM_ACTIVE = 0,
RPM_RESUMING = 1,
RPM_SUSPENDED = 2,
RPM_SUSPENDING = 3,
};
struct wakeup_source;
struct wake_irq;
struct pm_subsys_data;
struct device;
struct dev_pm_qos;
struct dev_pm_info {
pm_message_t power_state;
unsigned int can_wakeup: 1;
unsigned int async_suspend: 1;
bool in_dpm_list: 1;
bool is_prepared: 1;
bool is_suspended: 1;
bool is_noirq_suspended: 1;
bool is_late_suspended: 1;
bool no_pm: 1;
bool early_init: 1;
bool direct_complete: 1;
u32 driver_flags;
spinlock_t lock;
struct list_head entry;
struct completion completion;
struct wakeup_source *wakeup;
bool wakeup_path: 1;
bool syscore: 1;
bool no_pm_callbacks: 1;
unsigned int must_resume: 1;
unsigned int may_skip_resume: 1;
struct hrtimer suspend_timer;
long unsigned int timer_expires;
struct work_struct work;
wait_queue_head_t wait_queue;
struct wake_irq *wakeirq;
atomic_t usage_count;
atomic_t child_count;
unsigned int disable_depth: 3;
unsigned int idle_notification: 1;
unsigned int request_pending: 1;
unsigned int deferred_resume: 1;
unsigned int runtime_auto: 1;
bool ignore_children: 1;
unsigned int no_callbacks: 1;
unsigned int irq_safe: 1;
unsigned int use_autosuspend: 1;
unsigned int timer_autosuspends: 1;
unsigned int memalloc_noio: 1;
unsigned int links_count;
enum rpm_request request;
enum rpm_status runtime_status;
int runtime_error;
int autosuspend_delay;
u64 last_busy;
u64 active_time;
u64 suspended_time;
u64 accounting_timestamp;
struct pm_subsys_data *subsys_data;
void (*set_latency_tolerance)(struct device *, s32);
struct dev_pm_qos *qos;
};
struct dev_archdata {
void *iommu;
};
struct device_private;
struct device_type;
struct bus_type;
struct device_driver;
struct dev_pm_domain;
struct irq_domain;
struct dma_map_ops;
struct device_dma_parameters;
struct device_node;
struct fwnode_handle;
struct class;
struct attribute_group;
struct iommu_group;
struct dev_iommu;
struct device {
struct kobject kobj;
struct device *parent;
struct device_private *p;
const char *init_name;
const struct device_type *type;
struct bus_type *bus;
struct device_driver *driver;
void *platform_data;
void *driver_data;
struct mutex mutex;
struct dev_links_info links;
struct dev_pm_info power;
struct dev_pm_domain *pm_domain;
struct irq_domain *msi_domain;
struct list_head msi_list;
const struct dma_map_ops *dma_ops;
u64 *dma_mask;
u64 coherent_dma_mask;
u64 bus_dma_limit;
long unsigned int dma_pfn_offset;
struct device_dma_parameters *dma_parms;
struct list_head dma_pools;
struct dev_archdata archdata;
struct device_node *of_node;
struct fwnode_handle *fwnode;
int numa_node;
dev_t devt;
u32 id;
spinlock_t devres_lock;
struct list_head devres_head;
struct class *class;
const struct attribute_group **groups;
void (*release)(struct device *);
struct iommu_group *iommu_group;
struct dev_iommu *iommu;
bool offline_disabled: 1;
bool offline: 1;
bool of_node_reused: 1;
bool state_synced: 1;
};
enum fixed_addresses {
VSYSCALL_PAGE = 511,
FIX_DBGP_BASE = 512,
FIX_EARLYCON_MEM_BASE = 513,
FIX_OHCI1394_BASE = 514,
FIX_APIC_BASE = 515,
FIX_IO_APIC_BASE_0 = 516,
FIX_IO_APIC_BASE_END = 643,
__end_of_permanent_fixed_addresses = 644,
FIX_BTMAP_END = 1024,
FIX_BTMAP_BEGIN = 1535,
__end_of_fixed_addresses = 1536,
};
struct vm_userfaultfd_ctx {};
struct anon_vma;
struct vm_operations_struct;
struct vm_area_struct {
long unsigned int vm_start;
long unsigned int vm_end;
struct vm_area_struct *vm_next;
struct vm_area_struct *vm_prev;
struct rb_node vm_rb;
long unsigned int rb_subtree_gap;
struct mm_struct *vm_mm;
pgprot_t vm_page_prot;
long unsigned int vm_flags;
struct {
struct rb_node rb;
long unsigned int rb_subtree_last;
} shared;
struct list_head anon_vma_chain;
struct anon_vma *anon_vma;
const struct vm_operations_struct *vm_ops;
long unsigned int vm_pgoff;
struct file *vm_file;
void *vm_private_data;
atomic_long_t swap_readahead_info;
struct mempolicy *vm_policy;
struct vm_userfaultfd_ctx vm_userfaultfd_ctx;
};
struct mm_rss_stat {
atomic_long_t count[4];
};
struct xol_area;
struct uprobes_state {
struct xol_area *xol_area;
};
struct linux_binfmt;
struct core_state;
struct kioctx_table;
struct user_namespace;
struct mmu_notifier_subscriptions;
struct mm_struct {
struct {
struct vm_area_struct *mmap;
struct rb_root mm_rb;
u64 vmacache_seqnum;
long unsigned int (*get_unmapped_area)(struct file *, long unsigned int, long unsigned int, long unsigned int, long unsigned int);
long unsigned int mmap_base;
long unsigned int mmap_legacy_base;
long unsigned int mmap_compat_base;
long unsigned int mmap_compat_legacy_base;
long unsigned int task_size;
long unsigned int highest_vm_end;
pgd_t *pgd;
atomic_t membarrier_state;
atomic_t mm_users;
atomic_t mm_count;
atomic_long_t pgtables_bytes;
int map_count;
spinlock_t page_table_lock;
struct rw_semaphore mmap_lock;
struct list_head mmlist;
long unsigned int hiwater_rss;
long unsigned int hiwater_vm;
long unsigned int total_vm;
long unsigned int locked_vm;
atomic64_t pinned_vm;
long unsigned int data_vm;
long unsigned int exec_vm;
long unsigned int stack_vm;
long unsigned int def_flags;
spinlock_t arg_lock;
long unsigned int start_code;
long unsigned int end_code;
long unsigned int start_data;
long unsigned int end_data;
long unsigned int start_brk;
long unsigned int brk;
long unsigned int start_stack;
long unsigned int arg_start;
long unsigned int arg_end;
long unsigned int env_start;
long unsigned int env_end;
long unsigned int saved_auxv[46];
struct mm_rss_stat rss_stat;
struct linux_binfmt *binfmt;
mm_context_t context;
long unsigned int flags;
struct core_state *core_state;
spinlock_t ioctx_lock;
struct kioctx_table *ioctx_table;
struct user_namespace *user_ns;
struct file *exe_file;
struct mmu_notifier_subscriptions *notifier_subscriptions;
atomic_t tlb_flush_pending;
bool tlb_flush_batched;
struct uprobes_state uprobes_state;
atomic_long_t hugetlb_usage;
struct work_struct async_put_work;
};
long unsigned int cpu_bitmap[0];
};
typedef struct {
struct seqcount seqcount;
spinlock_t lock;
} seqlock_t;
struct timer_list {
struct hlist_node entry;
long unsigned int expires;
void (*function)(struct timer_list *);
u32 flags;
};
typedef int (*notifier_fn_t)(struct notifier_block *, long unsigned int, void *);
struct notifier_block {
notifier_fn_t notifier_call;
struct notifier_block *next;
int priority;
};
struct blocking_notifier_head {
struct rw_semaphore rwsem;
struct notifier_block *head;
};
struct arch_uprobe_task {
long unsigned int saved_scratch_register;
unsigned int saved_trap_nr;
unsigned int saved_tf;
};
enum uprobe_task_state {
UTASK_RUNNING = 0,
UTASK_SSTEP = 1,
UTASK_SSTEP_ACK = 2,
UTASK_SSTEP_TRAPPED = 3,
};
struct uprobe;
struct return_instance;
struct uprobe_task {
enum uprobe_task_state state;
union {
struct {
struct arch_uprobe_task autask;
long unsigned int vaddr;
};
struct {
struct callback_head dup_xol_work;
long unsigned int dup_xol_addr;
};
};
struct uprobe *active_uprobe;
long unsigned int xol_vaddr;
struct return_instance *return_instances;
unsigned int depth;
};
struct return_instance {
struct uprobe *uprobe;
long unsigned int func;
long unsigned int stack;
long unsigned int orig_ret_vaddr;
bool chained;
struct return_instance *next;
};
struct xarray {
spinlock_t xa_lock;
gfp_t xa_flags;
void *xa_head;
};
typedef u32 errseq_t;
struct address_space_operations;
struct address_space {
struct inode *host;
struct xarray i_pages;
gfp_t gfp_mask;
atomic_t i_mmap_writable;
struct rb_root_cached i_mmap;
struct rw_semaphore i_mmap_rwsem;
long unsigned int nrpages;
long unsigned int nrexceptional;
long unsigned int writeback_index;
const struct address_space_operations *a_ops;
long unsigned int flags;
errseq_t wb_err;
spinlock_t private_lock;
struct list_head private_list;
void *private_data;
};
struct vmem_altmap {
const long unsigned int base_pfn;
const long unsigned int end_pfn;
const long unsigned int reserve;
long unsigned int free;
long unsigned int align;
long unsigned int alloc;
};
struct resource {
resource_size_t start;
resource_size_t end;
const char *name;
long unsigned int flags;
long unsigned int desc;
struct resource *parent;
struct resource *sibling;
struct resource *child;
};
struct percpu_ref;
typedef void percpu_ref_func_t(struct percpu_ref *);
struct percpu_ref {
atomic_long_t count;
long unsigned int percpu_count_ptr;
percpu_ref_func_t *release;
percpu_ref_func_t *confirm_switch;
bool force_atomic: 1;
bool allow_reinit: 1;
struct callback_head rcu;
};
enum memory_type {
MEMORY_DEVICE_PRIVATE = 1,
MEMORY_DEVICE_FS_DAX = 2,
MEMORY_DEVICE_DEVDAX = 3,
MEMORY_DEVICE_PCI_P2PDMA = 4,
};
struct dev_pagemap_ops;
struct dev_pagemap {
struct vmem_altmap altmap;
struct resource res;
struct percpu_ref *ref;
struct percpu_ref internal_ref;
struct completion done;
enum memory_type type;
unsigned int flags;
const struct dev_pagemap_ops *ops;
void *owner;
};
struct vfsmount;
struct path {
struct vfsmount *mnt;
struct dentry *dentry;
};
enum rw_hint {
WRITE_LIFE_NOT_SET = 0,
WRITE_LIFE_NONE = 1,
WRITE_LIFE_SHORT = 2,
WRITE_LIFE_MEDIUM = 3,
WRITE_LIFE_LONG = 4,
WRITE_LIFE_EXTREME = 5,
};
enum pid_type {
PIDTYPE_PID = 0,
PIDTYPE_TGID = 1,
PIDTYPE_PGID = 2,
PIDTYPE_SID = 3,
PIDTYPE_MAX = 4,
};
struct fown_struct {
rwlock_t lock;
struct pid *pid;
enum pid_type pid_type;
kuid_t uid;
kuid_t euid;
int signum;
};
struct file_ra_state {
long unsigned int start;
unsigned int size;
unsigned int async_size;
unsigned int ra_pages;
unsigned int mmap_miss;
loff_t prev_pos;
};
struct file {
union {
struct llist_node fu_llist;
struct callback_head fu_rcuhead;
} f_u;
struct path f_path;
struct inode *f_inode;
const struct file_operations *f_op;
spinlock_t f_lock;
enum rw_hint f_write_hint;
atomic_long_t f_count;
unsigned int f_flags;
fmode_t f_mode;
struct mutex f_pos_lock;
loff_t f_pos;
struct fown_struct f_owner;
const struct cred *f_cred;
struct file_ra_state f_ra;
u64 f_version;
void *f_security;
void *private_data;
struct list_head f_ep_links;
struct list_head f_tfile_llink;
struct address_space *f_mapping;
errseq_t f_wb_err;
errseq_t f_sb_err;
};
typedef unsigned int vm_fault_t;
enum page_entry_size {
PE_SIZE_PTE = 0,
PE_SIZE_PMD = 1,
PE_SIZE_PUD = 2,
};
struct vm_fault;
struct vm_operations_struct {
void (*open)(struct vm_area_struct *);
void (*close)(struct vm_area_struct *);
int (*split)(struct vm_area_struct *, long unsigned int);
int (*mremap)(struct vm_area_struct *);
vm_fault_t (*fault)(struct vm_fault *);
vm_fault_t (*huge_fault)(struct vm_fault *, enum page_entry_size);
void (*map_pages)(struct vm_fault *, long unsigned int, long unsigned int);
long unsigned int (*pagesize)(struct vm_area_struct *);
vm_fault_t (*page_mkwrite)(struct vm_fault *);
vm_fault_t (*pfn_mkwrite)(struct vm_fault *);
int (*access)(struct vm_area_struct *, long unsigned int, void *, int, int);
const char * (*name)(struct vm_area_struct *);
int (*set_policy)(struct vm_area_struct *, struct mempolicy *);
struct mempolicy * (*get_policy)(struct vm_area_struct *, long unsigned int);
struct page * (*find_special_page)(struct vm_area_struct *, long unsigned int);
};
struct core_thread {
struct task_struct *task;
struct core_thread *next;
};
struct core_state {
atomic_t nr_threads;
struct core_thread dumper;
struct completion startup;
};
struct vm_fault {
struct vm_area_struct *vma;
unsigned int flags;
gfp_t gfp_mask;
long unsigned int pgoff;
long unsigned int address;
pmd_t *pmd;
pud_t *pud;
pte_t orig_pte;
struct page *cow_page;
struct page *page;
pte_t *pte;
spinlock_t *ptl;
pgtable_t prealloc_pte;
};
typedef struct {
u16 __softirq_pending;
unsigned int __nmi_count;
unsigned int apic_timer_irqs;
unsigned int irq_spurious_count;
unsigned int icr_read_retry_count;
unsigned int kvm_posted_intr_ipis;
unsigned int kvm_posted_intr_wakeup_ipis;
unsigned int kvm_posted_intr_nested_ipis;
unsigned int x86_platform_ipis;
unsigned int apic_perf_irqs;
unsigned int apic_irq_work_irqs;
unsigned int irq_resched_count;
unsigned int irq_call_count;
unsigned int irq_tlb_count;
unsigned int irq_thermal_count;
unsigned int irq_threshold_count;
unsigned int irq_deferred_error_count;
long: 32;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
} irq_cpustat_t;
enum apic_intr_mode_id {
APIC_PIC = 0,
APIC_VIRTUAL_WIRE = 1,
APIC_VIRTUAL_WIRE_NO_CONFIG = 2,
APIC_SYMMETRIC_IO = 3,
APIC_SYMMETRIC_IO_NO_ROUTING = 4,
};
struct apic {
void (*eoi_write)(u32, u32);
void (*native_eoi_write)(u32, u32);
void (*write)(u32, u32);
u32 (*read)(u32);
void (*wait_icr_idle)();
u32 (*safe_wait_icr_idle)();
void (*send_IPI)(int, int);
void (*send_IPI_mask)(const struct cpumask *, int);
void (*send_IPI_mask_allbutself)(const struct cpumask *, int);
void (*send_IPI_allbutself)(int);
void (*send_IPI_all)(int);
void (*send_IPI_self)(int);
u32 dest_logical;
u32 disable_esr;
u32 irq_delivery_mode;
u32 irq_dest_mode;
u32 (*calc_dest_apicid)(unsigned int);
u64 (*icr_read)();
void (*icr_write)(u32, u32);
int (*probe)();
int (*acpi_madt_oem_check)(char *, char *);
int (*apic_id_valid)(u32);
int (*apic_id_registered)();
bool (*check_apicid_used)(physid_mask_t *, int);
void (*init_apic_ldr)();
void (*ioapic_phys_id_map)(physid_mask_t *, physid_mask_t *);
void (*setup_apic_routing)();
int (*cpu_present_to_apicid)(int);
void (*apicid_to_cpu_present)(int, physid_mask_t *);
int (*check_phys_apicid_present)(int);
int (*phys_pkg_id)(int, int);
u32 (*get_apic_id)(long unsigned int);
u32 (*set_apic_id)(unsigned int);
int (*wakeup_secondary_cpu)(int, long unsigned int);
void (*inquire_remote_apic)(int);
char *name;
};
struct smp_ops {
void (*smp_prepare_boot_cpu)();
void (*smp_prepare_cpus)(unsigned int);
void (*smp_cpus_done)(unsigned int);
void (*stop_other_cpus)(int);
void (*crash_stop_other_cpus)();
void (*smp_send_reschedule)(int);
int (*cpu_up)(unsigned int, struct task_struct *);
int (*cpu_disable)();
void (*cpu_die)(unsigned int);
void (*play_dead)();
void (*send_call_func_ipi)(const struct cpumask *);
void (*send_call_func_single_ipi)(int);
};
enum pcpu_fc {
PCPU_FC_AUTO = 0,
PCPU_FC_EMBED = 1,
PCPU_FC_PAGE = 2,
PCPU_FC_NR = 3,
};
struct fwnode_operations;
struct fwnode_handle {
struct fwnode_handle *secondary;
const struct fwnode_operations *ops;
struct device *dev;
};
struct fwnode_reference_args;
struct fwnode_endpoint;
struct fwnode_operations {
struct fwnode_handle * (*get)(struct fwnode_handle *);
void (*put)(struct fwnode_handle *);
bool (*device_is_available)(const struct fwnode_handle *);
const void * (*device_get_match_data)(const struct fwnode_handle *, const struct device *);
bool (*property_present)(const struct fwnode_handle *, const char *);
int (*property_read_int_array)(const struct fwnode_handle *, const char *, unsigned int, void *, size_t);
int (*property_read_string_array)(const struct fwnode_handle *, const char *, const char **, size_t);
const char * (*get_name)(const struct fwnode_handle *);
const char * (*get_name_prefix)(const struct fwnode_handle *);
struct fwnode_handle * (*get_parent)(const struct fwnode_handle *);
struct fwnode_handle * (*get_next_child_node)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*get_named_child_node)(const struct fwnode_handle *, const char *);
int (*get_reference_args)(const struct fwnode_handle *, const char *, const char *, unsigned int, unsigned int, struct fwnode_reference_args *);
struct fwnode_handle * (*graph_get_next_endpoint)(const struct fwnode_handle *, struct fwnode_handle *);
struct fwnode_handle * (*graph_get_remote_endpoint)(const struct fwnode_handle *);
struct fwnode_handle * (*graph_get_port_parent)(struct fwnode_handle *);
int (*graph_parse_endpoint)(const struct fwnode_handle *, struct fwnode_endpoint *);
int (*add_links)(const struct fwnode_handle *, struct device *);
};
struct fwnode_endpoint {
unsigned int port;
unsigned int id;
const struct fwnode_handle *local_fwnode;
};
struct fwnode_reference_args {
struct fwnode_handle *fwnode;
unsigned int nargs;
u64 args[8];
};
struct vm_struct {
struct vm_struct *next;
void *addr;
long unsigned int size;
long unsigned int flags;
struct page **pages;
unsigned int nr_pages;
phys_addr_t phys_addr;
const void *caller;
};
struct free_area {
struct list_head free_list[4];
long unsigned int nr_free;
};
struct zone_padding {
char x[0];
};
enum numa_stat_item {
NUMA_HIT = 0,
NUMA_MISS = 1,
NUMA_FOREIGN = 2,
NUMA_INTERLEAVE_HIT = 3,
NUMA_LOCAL = 4,
NUMA_OTHER = 5,
NR_VM_NUMA_STAT_ITEMS = 6,
};
enum zone_stat_item {
NR_FREE_PAGES = 0,
NR_ZONE_LRU_BASE = 1,
NR_ZONE_INACTIVE_ANON = 1,
NR_ZONE_ACTIVE_ANON = 2,
NR_ZONE_INACTIVE_FILE = 3,
NR_ZONE_ACTIVE_FILE = 4,
NR_ZONE_UNEVICTABLE = 5,
NR_ZONE_WRITE_PENDING = 6,
NR_MLOCK = 7,
NR_PAGETABLE = 8,
NR_KERNEL_STACK_KB = 9,
NR_BOUNCE = 10,
NR_FREE_CMA_PAGES = 11,
NR_VM_ZONE_STAT_ITEMS = 12,
};
enum node_stat_item {
NR_LRU_BASE = 0,
NR_INACTIVE_ANON = 0,
NR_ACTIVE_ANON = 1,
NR_INACTIVE_FILE = 2,
NR_ACTIVE_FILE = 3,
NR_UNEVICTABLE = 4,
NR_SLAB_RECLAIMABLE = 5,
NR_SLAB_UNRECLAIMABLE = 6,
NR_ISOLATED_ANON = 7,
NR_ISOLATED_FILE = 8,
WORKINGSET_NODES = 9,
WORKINGSET_REFAULT = 10,
WORKINGSET_ACTIVATE = 11,
WORKINGSET_RESTORE = 12,
WORKINGSET_NODERECLAIM = 13,
NR_ANON_MAPPED = 14,
NR_FILE_MAPPED = 15,
NR_FILE_PAGES = 16,
NR_FILE_DIRTY = 17,
NR_WRITEBACK = 18,
NR_WRITEBACK_TEMP = 19,
NR_SHMEM = 20,
NR_SHMEM_THPS = 21,
NR_SHMEM_PMDMAPPED = 22,
NR_FILE_THPS = 23,
NR_FILE_PMDMAPPED = 24,
NR_ANON_THPS = 25,
NR_VMSCAN_WRITE = 26,
NR_VMSCAN_IMMEDIATE = 27,
NR_DIRTIED = 28,
NR_WRITTEN = 29,
NR_KERNEL_MISC_RECLAIMABLE = 30,
NR_FOLL_PIN_ACQUIRED = 31,
NR_FOLL_PIN_RELEASED = 32,
NR_VM_NODE_STAT_ITEMS = 33,
};
struct lruvec {
struct list_head lists[5];
long unsigned int anon_cost;
long unsigned int file_cost;
atomic_long_t nonresident_age;
long unsigned int refaults;
long unsigned int flags;
};
typedef unsigned int isolate_mode_t;
struct per_cpu_pages {
int count;
int high;
int batch;
struct list_head lists[3];
};
struct per_cpu_pageset {
struct per_cpu_pages pcp;
s8 expire;
u16 vm_numa_stat_diff[6];
s8 stat_threshold;
s8 vm_stat_diff[12];
};
struct per_cpu_nodestat {
s8 stat_threshold;
s8 vm_node_stat_diff[33];
};
enum zone_type {
ZONE_DMA = 0,
ZONE_DMA32 = 1,
ZONE_NORMAL = 2,
ZONE_MOVABLE = 3,
__MAX_NR_ZONES = 4,
};
struct pglist_data;
struct zone {
long unsigned int _watermark[3];
long unsigned int watermark_boost;
long unsigned int nr_reserved_highatomic;
long int lowmem_reserve[4];
int node;
struct pglist_data *zone_pgdat;
struct per_cpu_pageset *pageset;
long unsigned int zone_start_pfn;
atomic_long_t managed_pages;
long unsigned int spanned_pages;
long unsigned int present_pages;
const char *name;
int initialized;
long: 32;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
struct zone_padding _pad1_;
struct free_area free_area[11];
long unsigned int flags;
spinlock_t lock;
long: 32;
long: 64;
long: 64;
long: 64;
struct zone_padding _pad2_;
long unsigned int percpu_drift_mark;
long unsigned int compact_cached_free_pfn;
long unsigned int compact_cached_migrate_pfn[2];
long unsigned int compact_init_migrate_pfn;
long unsigned int compact_init_free_pfn;
unsigned int compact_considered;
unsigned int compact_defer_shift;
int compact_order_failed;
bool compact_blockskip_flush;
bool contiguous;
short: 16;
struct zone_padding _pad3_;
atomic_long_t vm_stat[12];
atomic_long_t vm_numa_stat[6];
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
struct zoneref {
struct zone *zone;
int zone_idx;
};
struct zonelist {
struct zoneref _zonerefs[257];
};
struct pglist_data {
struct zone node_zones[4];
struct zonelist node_zonelists[2];
int nr_zones;
long unsigned int node_start_pfn;
long unsigned int node_present_pages;
long unsigned int node_spanned_pages;
int node_id;
wait_queue_head_t kswapd_wait;
wait_queue_head_t pfmemalloc_wait;
struct task_struct *kswapd;
int kswapd_order;
enum zone_type kswapd_highest_zoneidx;
int kswapd_failures;
int kcompactd_max_order;
enum zone_type kcompactd_highest_zoneidx;
wait_queue_head_t kcompactd_wait;
struct task_struct *kcompactd;
long unsigned int totalreserve_pages;
long unsigned int min_unmapped_pages;
long unsigned int min_slab_pages;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
struct zone_padding _pad1_;
spinlock_t lru_lock;
struct lruvec __lruvec;
long unsigned int flags;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
struct zone_padding _pad2_;
struct per_cpu_nodestat *per_cpu_nodestats;
atomic_long_t vm_stat[33];
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
struct mem_section_usage {
long unsigned int subsection_map[1];
long unsigned int pageblock_flags[0];
};
struct mem_section {
long unsigned int section_mem_map;
struct mem_section_usage *usage;
};
struct mem_cgroup;
struct shrink_control {
gfp_t gfp_mask;
int nid;
long unsigned int nr_to_scan;
long unsigned int nr_scanned;
struct mem_cgroup *memcg;
};
struct shrinker {
long unsigned int (*count_objects)(struct shrinker *, struct shrink_control *);
long unsigned int (*scan_objects)(struct shrinker *, struct shrink_control *);
long int batch;
int seeks;
unsigned int flags;
struct list_head list;
atomic_long_t *nr_deferred;
};
struct rlimit {
__kernel_ulong_t rlim_cur;
__kernel_ulong_t rlim_max;
};
struct dev_pagemap_ops {
void (*page_free)(struct page *);
void (*kill)(struct dev_pagemap *);
void (*cleanup)(struct dev_pagemap *);
vm_fault_t (*migrate_to_ram)(struct vm_fault *);
};
struct pid_namespace;
struct upid {
int nr;
struct pid_namespace *ns;
};
struct pid {
refcount_t count;
unsigned int level;
spinlock_t lock;
struct hlist_head tasks[4];
struct hlist_head inodes;
wait_queue_head_t wait_pidfd;
struct callback_head rcu;
struct upid numbers[1];
};
typedef struct {
gid_t val;
} kgid_t;
struct hrtimer_cpu_base;
struct hrtimer_clock_base {
struct hrtimer_cpu_base *cpu_base;
unsigned int index;
clockid_t clockid;
seqcount_t seq;
struct hrtimer *running;
struct timerqueue_head active;
ktime_t (*get_time)();
ktime_t offset;
};
struct hrtimer_cpu_base {
raw_spinlock_t lock;
unsigned int cpu;
unsigned int active_bases;
unsigned int clock_was_set_seq;
unsigned int hres_active: 1;
unsigned int in_hrtirq: 1;
unsigned int hang_detected: 1;
unsigned int softirq_activated: 1;
unsigned int nr_events;
short unsigned int nr_retries;
short unsigned int nr_hangs;
unsigned int max_hang_time;
ktime_t expires_next;
struct hrtimer *next_timer;
ktime_t softirq_expires_next;
struct hrtimer *softirq_next_timer;
struct hrtimer_clock_base clock_base[8];
};
struct tick_device;
typedef void __signalfn_t(int);
typedef __signalfn_t *__sighandler_t;
typedef void __restorefn_t();
typedef __restorefn_t *__sigrestore_t;
union sigval {
int sival_int;
void *sival_ptr;
};
typedef union sigval sigval_t;
union __sifields {
struct {
__kernel_pid_t _pid;
__kernel_uid32_t _uid;
} _kill;
struct {
__kernel_timer_t _tid;
int _overrun;
sigval_t _sigval;
int _sys_private;
} _timer;
struct {
__kernel_pid_t _pid;
__kernel_uid32_t _uid;
sigval_t _sigval;
} _rt;
struct {
__kernel_pid_t _pid;
__kernel_uid32_t _uid;
int _status;
__kernel_clock_t _utime;
__kernel_clock_t _stime;
} _sigchld;
struct {
void *_addr;
union {
short int _addr_lsb;
struct {
char _dummy_bnd[8];
void *_lower;
void *_upper;
} _addr_bnd;
struct {
char _dummy_pkey[8];
__u32 _pkey;
} _addr_pkey;
};
} _sigfault;
struct {
long int _band;
int _fd;
} _sigpoll;
struct {
void *_call_addr;
int _syscall;
unsigned int _arch;
} _sigsys;
};
struct kernel_siginfo {
struct {
int si_signo;
int si_errno;
int si_code;
union __sifields _sifields;
};
};
struct ratelimit_state {
raw_spinlock_t lock;
int interval;
int burst;
int printed;
int missed;
long unsigned int begin;
long unsigned int flags;
};
struct user_struct {
refcount_t __count;
atomic_t processes;
atomic_t sigpending;
atomic_long_t epoll_watches;
long unsigned int mq_bytes;
long unsigned int locked_shm;
long unsigned int unix_inflight;
atomic_long_t pipe_bufs;
struct hlist_node uidhash_node;
kuid_t uid;
atomic_long_t locked_vm;
struct ratelimit_state ratelimit;
};
struct sigaction {
__sighandler_t sa_handler;
long unsigned int sa_flags;
__sigrestore_t sa_restorer;
sigset_t sa_mask;
};
struct k_sigaction {
struct sigaction sa;
};
struct cpu_itimer {
u64 expires;
u64 incr;
};
struct task_cputime_atomic {
atomic64_t utime;
atomic64_t stime;
atomic64_t sum_exec_runtime;
};
struct thread_group_cputimer {
struct task_cputime_atomic cputime_atomic;
};
struct pacct_struct {
int ac_flag;
long int ac_exitcode;
long unsigned int ac_mem;
u64 ac_utime;
u64 ac_stime;
long unsigned int ac_minflt;
long unsigned int ac_majflt;
};
struct tty_struct;
struct taskstats;
struct tty_audit_buf;
struct signal_struct {
refcount_t sigcnt;
atomic_t live;
int nr_threads;
struct list_head thread_head;
wait_queue_head_t wait_chldexit;
struct task_struct *curr_target;
struct sigpending shared_pending;
struct hlist_head multiprocess;
int group_exit_code;
int notify_count;
struct task_struct *group_exit_task;
int group_stop_count;
unsigned int flags;
unsigned int is_child_subreaper: 1;
unsigned int has_child_subreaper: 1;
int posix_timer_id;
struct list_head posix_timers;
struct hrtimer real_timer;
ktime_t it_real_incr;
struct cpu_itimer it[2];
struct thread_group_cputimer cputimer;
struct posix_cputimers posix_cputimers;
struct pid *pids[4];
struct pid *tty_old_pgrp;
int leader;
struct tty_struct *tty;
seqlock_t stats_lock;
u64 utime;
u64 stime;
u64 cutime;
u64 cstime;
u64 gtime;
u64 cgtime;
struct prev_cputime prev_cputime;
long unsigned int nvcsw;
long unsigned int nivcsw;
long unsigned int cnvcsw;
long unsigned int cnivcsw;
long unsigned int min_flt;
long unsigned int maj_flt;
long unsigned int cmin_flt;
long unsigned int cmaj_flt;
long unsigned int inblock;
long unsigned int oublock;
long unsigned int cinblock;
long unsigned int coublock;
long unsigned int maxrss;
long unsigned int cmaxrss;
struct task_io_accounting ioac;
long long unsigned int sum_sched_runtime;
struct rlimit rlim[16];
struct pacct_struct pacct;
struct taskstats *stats;
unsigned int audit_tty;
struct tty_audit_buf *tty_audit_buf;
bool oom_flag_origin;
short int oom_score_adj;
short int oom_score_adj_min;
struct mm_struct *oom_mm;
struct mutex cred_guard_mutex;
struct mutex exec_update_mutex;
};
struct rseq {
__u32 cpu_id_start;
__u32 cpu_id;
union {
__u64 ptr64;
__u64 ptr;
} rseq_cs;
__u32 flags;
long: 32;
long: 64;
};
struct root_domain;
struct rq;
struct rq_flags;
struct sched_class {
const struct sched_class *next;
void (*enqueue_task)(struct rq *, struct task_struct *, int);
void (*dequeue_task)(struct rq *, struct task_struct *, int);
void (*yield_task)(struct rq *);
bool (*yield_to_task)(struct rq *, struct task_struct *, bool);
void (*check_preempt_curr)(struct rq *, struct task_struct *, int);
struct task_struct * (*pick_next_task)(struct rq *);
void (*put_prev_task)(struct rq *, struct task_struct *);
void (*set_next_task)(struct rq *, struct task_struct *, bool);
int (*balance)(struct rq *, struct task_struct *, struct rq_flags *);
int (*select_task_rq)(struct task_struct *, int, int, int);
void (*migrate_task_rq)(struct task_struct *, int);
void (*task_woken)(struct rq *, struct task_struct *);
void (*set_cpus_allowed)(struct task_struct *, const struct cpumask *);
void (*rq_online)(struct rq *);
void (*rq_offline)(struct rq *);
void (*task_tick)(struct rq *, struct task_struct *, int);
void (*task_fork)(struct task_struct *);
void (*task_dead)(struct task_struct *);
void (*switched_from)(struct rq *, struct task_struct *);
void (*switched_to)(struct rq *, struct task_struct *);
void (*prio_changed)(struct rq *, struct task_struct *, int);
unsigned int (*get_rr_interval)(struct rq *, struct task_struct *);
void (*update_curr)(struct rq *);
void (*task_change_group)(struct task_struct *, int);
};
struct kernel_cap_struct {
__u32 cap[2];
};
typedef struct kernel_cap_struct kernel_cap_t;
struct group_info;
struct cred {
atomic_t usage;
kuid_t uid;
kgid_t gid;
kuid_t suid;
kgid_t sgid;
kuid_t euid;
kgid_t egid;
kuid_t fsuid;
kgid_t fsgid;
unsigned int securebits;
kernel_cap_t cap_inheritable;
kernel_cap_t cap_permitted;
kernel_cap_t cap_effective;
kernel_cap_t cap_bset;
kernel_cap_t cap_ambient;
unsigned char jit_keyring;
struct key *session_keyring;
struct key *process_keyring;
struct key *thread_keyring;
struct key *request_key_auth;
void *security;
struct user_struct *user;
struct user_namespace *user_ns;
struct group_info *group_info;
union {
int non_rcu;
struct callback_head rcu;
};
};
typedef int32_t key_serial_t;
typedef uint32_t key_perm_t;
struct key_type;
struct key_tag;
struct keyring_index_key {
long unsigned int hash;
union {
struct {
u16 desc_len;
char desc[6];
};
long unsigned int x;
};
struct key_type *type;
struct key_tag *domain_tag;
const char *description;
};
union key_payload {
void *rcu_data0;
void *data[4];
};
struct assoc_array_ptr;
struct assoc_array {
struct assoc_array_ptr *root;
long unsigned int nr_leaves_on_tree;
};
struct key_user;
struct key_restriction;
struct key {
refcount_t usage;
key_serial_t serial;
union {
struct list_head graveyard_link;
struct rb_node serial_node;
};
struct rw_semaphore sem;
struct key_user *user;
void *security;
union {
time64_t expiry;
time64_t revoked_at;
};
time64_t last_used_at;
kuid_t uid;
kgid_t gid;
key_perm_t perm;
short unsigned int quotalen;
short unsigned int datalen;
short int state;
long unsigned int flags;
union {
struct keyring_index_key index_key;
struct {
long unsigned int hash;
long unsigned int len_desc;
struct key_type *type;
struct key_tag *domain_tag;
char *description;
};
};
union {
union key_payload payload;
struct {
struct list_head name_link;
struct assoc_array keys;
};
};
struct key_restriction *restrict_link;
};
struct sighand_struct {
spinlock_t siglock;
refcount_t count;
wait_queue_head_t signalfd_wqh;
struct k_sigaction action[64];
};
struct io_cq;
struct io_context {
atomic_long_t refcount;
atomic_t active_ref;
atomic_t nr_tasks;
spinlock_t lock;
short unsigned int ioprio;
int nr_batch_requests;
long unsigned int last_waited;
struct xarray icq_tree;
struct io_cq *icq_hint;
struct hlist_head icq_list;
struct work_struct release_work;
};
union thread_union {
struct task_struct task;
long unsigned int stack[2048];
};
struct hlist_bl_node;
struct hlist_bl_head {
struct hlist_bl_node *first;
};
struct hlist_bl_node {
struct hlist_bl_node *next;
struct hlist_bl_node **pprev;
};
struct lockref {
union {
__u64 lock_count;
struct {
spinlock_t lock;
int count;
};
};
};
struct qstr {
union {
struct {
u32 hash;
u32 len;
};
u64 hash_len;
};
const unsigned char *name;
};
struct dentry_stat_t {
long int nr_dentry;
long int nr_unused;
long int age_limit;
long int want_pages;
long int nr_negative;
long int dummy;
};
struct dentry_operations;
struct dentry {
unsigned int d_flags;
seqcount_t d_seq;
struct hlist_bl_node d_hash;
struct dentry *d_parent;
struct qstr d_name;
struct inode *d_inode;
unsigned char d_iname[32];
struct lockref d_lockref;
const struct dentry_operations *d_op;
struct super_block *d_sb;
long unsigned int d_time;
void *d_fsdata;
union {
struct list_head d_lru;
wait_queue_head_t *d_wait;
};
struct list_head d_child;
struct list_head d_subdirs;
union {
struct hlist_node d_alias;
struct hlist_bl_node d_in_lookup_hash;
struct callback_head d_rcu;
} d_u;
};
struct posix_acl;
struct inode_operations;
struct file_lock_context;
struct block_device;
struct cdev;
struct fsnotify_mark_connector;
struct inode {
umode_t i_mode;
short unsigned int i_opflags;
kuid_t i_uid;
kgid_t i_gid;
unsigned int i_flags;
struct posix_acl *i_acl;
struct posix_acl *i_default_acl;
const struct inode_operations *i_op;
struct super_block *i_sb;
struct address_space *i_mapping;
void *i_security;
long unsigned int i_ino;
union {
const unsigned int i_nlink;
unsigned int __i_nlink;
};
dev_t i_rdev;
loff_t i_size;
struct timespec64 i_atime;
struct timespec64 i_mtime;
struct timespec64 i_ctime;
spinlock_t i_lock;
short unsigned int i_bytes;
u8 i_blkbits;
u8 i_write_hint;
blkcnt_t i_blocks;
long unsigned int i_state;
struct rw_semaphore i_rwsem;
long unsigned int dirtied_when;
long unsigned int dirtied_time_when;
struct hlist_node i_hash;
struct list_head i_io_list;
struct list_head i_lru;
struct list_head i_sb_list;
struct list_head i_wb_list;
union {
struct hlist_head i_dentry;
struct callback_head i_rcu;
};
atomic64_t i_version;
atomic64_t i_sequence;
atomic_t i_count;
atomic_t i_dio_count;
atomic_t i_writecount;
atomic_t i_readcount;
union {
const struct file_operations *i_fop;
void (*free_inode)(struct inode *);
};
struct file_lock_context *i_flctx;
struct address_space i_data;
struct list_head i_devices;
union {
struct pipe_inode_info *i_pipe;
struct block_device *i_bdev;
struct cdev *i_cdev;
char *i_link;
unsigned int i_dir_seq;
};
__u32 i_generation;
__u32 i_fsnotify_mask;
struct fsnotify_mark_connector *i_fsnotify_marks;
void *i_private;
};
struct dentry_operations {
int (*d_revalidate)(struct dentry *, unsigned int);
int (*d_weak_revalidate)(struct dentry *, unsigned int);
int (*d_hash)(const struct dentry *, struct qstr *);
int (*d_compare)(const struct dentry *, unsigned int, const char *, const struct qstr *);
int (*d_delete)(const struct dentry *);
int (*d_init)(struct dentry *);
void (*d_release)(struct dentry *);
void (*d_prune)(struct dentry *);
void (*d_iput)(struct dentry *, struct inode *);
char * (*d_dname)(struct dentry *, char *, int);
struct vfsmount * (*d_automount)(struct path *);
int (*d_manage)(const struct path *, bool);
struct dentry * (*d_real)(struct dentry *, const struct inode *);
long: 64;
long: 64;
long: 64;
};
struct mtd_info;
typedef long long int qsize_t;
struct quota_format_type;
struct mem_dqinfo {
struct quota_format_type *dqi_format;
int dqi_fmt_id;
struct list_head dqi_dirty_list;
long unsigned int dqi_flags;
unsigned int dqi_bgrace;
unsigned int dqi_igrace;
qsize_t dqi_max_spc_limit;
qsize_t dqi_max_ino_limit;
void *dqi_priv;
};
struct quota_format_ops;
struct quota_info {
unsigned int flags;
struct rw_semaphore dqio_sem;
struct inode *files[3];
struct mem_dqinfo info[3];
const struct quota_format_ops *ops[3];
};
struct rcu_sync {
int gp_state;
int gp_count;
wait_queue_head_t gp_wait;
struct callback_head cb_head;
};
struct rcuwait {
struct task_struct *task;
};
struct percpu_rw_semaphore {
struct rcu_sync rss;
unsigned int *read_count;
struct rcuwait writer;
wait_queue_head_t waiters;
atomic_t block;
};
struct sb_writers {
int frozen;
wait_queue_head_t wait_unfrozen;
struct percpu_rw_semaphore rw_sem[3];
};
typedef struct {
__u8 b[16];
} uuid_t;
struct list_lru_node;
struct list_lru {
struct list_lru_node *node;
};
struct super_operations;
struct dquot_operations;
struct quotactl_ops;
struct export_operations;
struct xattr_handler;
struct workqueue_struct;
struct super_block {
struct list_head s_list;
dev_t s_dev;
unsigned char s_blocksize_bits;
long unsigned int s_blocksize;
loff_t s_maxbytes;
struct file_system_type *s_type;
const struct super_operations *s_op;
const struct dquot_operations *dq_op;
const struct quotactl_ops *s_qcop;
const struct export_operations *s_export_op;
long unsigned int s_flags;
long unsigned int s_iflags;
long unsigned int s_magic;
struct dentry *s_root;
struct rw_semaphore s_umount;
int s_count;
atomic_t s_active;
void *s_security;
const struct xattr_handler **s_xattr;
struct hlist_bl_head s_roots;
struct list_head s_mounts;
struct block_device *s_bdev;
struct backing_dev_info *s_bdi;
struct mtd_info *s_mtd;
struct hlist_node s_instances;
unsigned int s_quota_types;
struct quota_info s_dquot;
struct sb_writers s_writers;
void *s_fs_info;
u32 s_time_gran;
time64_t s_time_min;
time64_t s_time_max;
__u32 s_fsnotify_mask;
struct fsnotify_mark_connector *s_fsnotify_marks;
char s_id[32];
uuid_t s_uuid;
unsigned int s_max_links;
fmode_t s_mode;
struct mutex s_vfs_rename_mutex;
const char *s_subtype;
const struct dentry_operations *s_d_op;
int cleancache_poolid;
struct shrinker s_shrink;
atomic_long_t s_remove_count;
atomic_long_t s_fsnotify_inode_refs;
int s_readonly_remount;
errseq_t s_wb_err;
struct workqueue_struct *s_dio_done_wq;
struct hlist_head s_pins;
struct user_namespace *s_user_ns;
struct list_lru s_dentry_lru;
struct list_lru s_inode_lru;
struct callback_head rcu;
struct work_struct destroy_work;
struct mutex s_sync_lock;
int s_stack_depth;
long: 32;
long: 64;
long: 64;
long: 64;
long: 64;
spinlock_t s_inode_list_lock;
struct list_head s_inodes;
spinlock_t s_inode_wblist_lock;
struct list_head s_inodes_wb;
long: 64;
long: 64;
};
struct kstat {
u32 result_mask;
umode_t mode;
unsigned int nlink;
uint32_t blksize;
u64 attributes;
u64 attributes_mask;
u64 ino;
dev_t dev;
dev_t rdev;
kuid_t uid;
kgid_t gid;
loff_t size;
struct timespec64 atime;
struct timespec64 mtime;
struct timespec64 ctime;
struct timespec64 btime;
u64 blocks;
u64 mnt_id;
};
struct list_lru_one {
struct list_head list;
long int nr_items;
};
struct list_lru_node {
spinlock_t lock;
struct list_lru_one lru;
long int nr_items;
long: 64;
long: 64;
long: 64;
};
struct xa_node {
unsigned char shift;
unsigned char offset;
unsigned char count;
unsigned char nr_values;
struct xa_node *parent;
struct xarray *array;
union {
struct list_head private_list;
struct callback_head callback_head;
};
void *slots[64];
union {
long unsigned int tags[3];
long unsigned int marks[3];
};
};
typedef struct {} local_lock_t;
struct radix_tree_preload {
local_lock_t lock;
unsigned int nr;
struct xa_node *nodes;
};
enum migrate_mode {
MIGRATE_ASYNC = 0,
MIGRATE_SYNC_LIGHT = 1,
MIGRATE_SYNC = 2,
MIGRATE_SYNC_NO_COPY = 3,
};
struct ctl_table;
typedef int proc_handler(struct ctl_table *, int, void *, size_t *, loff_t *);
struct ctl_table_poll;
struct ctl_table {
const char *procname;
void *data;
int maxlen;
umode_t mode;
struct ctl_table *child;
proc_handler *proc_handler;
struct ctl_table_poll *poll;
void *extra1;
void *extra2;
};
struct ctl_table_poll {
atomic_t event;
wait_queue_head_t wait;
};
struct key_tag {
struct callback_head rcu;
refcount_t usage;
bool removed;
};
typedef int (*request_key_actor_t)(struct key *, void *);
struct key_preparsed_payload;
struct key_match_data;
struct kernel_pkey_params;
struct kernel_pkey_query;
struct key_type {
const char *name;
size_t def_datalen;
unsigned int flags;
int (*vet_description)(const char *);
int (*preparse)(struct key_preparsed_payload *);
void (*free_preparse)(struct key_preparsed_payload *);
int (*instantiate)(struct key *, struct key_preparsed_payload *);
int (*update)(struct key *, struct key_preparsed_payload *);
int (*match_preparse)(struct key_match_data *);
void (*match_free)(struct key_match_data *);
void (*revoke)(struct key *);
void (*destroy)(struct key *);
void (*describe)(const struct key *, struct seq_file *);
long int (*read)(const struct key *, char *, size_t);
request_key_actor_t request_key;
struct key_restriction * (*lookup_restriction)(const char *);
int (*asym_query)(const struct kernel_pkey_params *, struct kernel_pkey_query *);
int (*asym_eds_op)(struct kernel_pkey_params *, const void *, void *);
int (*asym_verify_signature)(struct kernel_pkey_params *, const void *, const void *);
struct list_head link;
struct lock_class_key lock_class;
};
typedef int (*key_restrict_link_func_t)(struct key *, const struct key_type *, const union key_payload *, struct key *);
struct key_restriction {
key_restrict_link_func_t check;
struct key *key;
struct key_type *keytype;
};
struct group_info {
atomic_t usage;
int ngroups;
kgid_t gid[0];
};
struct delayed_call {
void (*fn)(void *);
void *arg;
};
typedef struct {
__u8 b[16];
} guid_t;
struct request_queue;
struct io_cq {
struct request_queue *q;
struct io_context *ioc;
union {
struct list_head q_node;
struct kmem_cache *__rcu_icq_cache;
};
union {
struct hlist_node ioc_node;
struct callback_head __rcu_head;
};
unsigned int flags;
};
struct files_stat_struct {
long unsigned int nr_files;
long unsigned int nr_free_files;
long unsigned int max_files;
};
struct inodes_stat_t {
long int nr_inodes;
long int nr_unused;
long int dummy[5];
};
struct kiocb {
struct file *ki_filp;
loff_t ki_pos;
void (*ki_complete)(struct kiocb *, long int, long int);
void *private;
int ki_flags;
u16 ki_hint;
u16 ki_ioprio;
unsigned int ki_cookie;
};
struct iattr {
unsigned int ia_valid;
umode_t ia_mode;
kuid_t ia_uid;
kgid_t ia_gid;
loff_t ia_size;
struct timespec64 ia_atime;
struct timespec64 ia_mtime;
struct timespec64 ia_ctime;
struct file *ia_file;
};
struct percpu_counter {
raw_spinlock_t lock;
s64 count;
struct list_head list;
s32 *counters;
};
typedef __kernel_uid32_t projid_t;
typedef struct {
projid_t val;
} kprojid_t;
enum quota_type {
USRQUOTA = 0,
GRPQUOTA = 1,
PRJQUOTA = 2,
};
struct kqid {
union {
kuid_t uid;
kgid_t gid;
kprojid_t projid;
};
enum quota_type type;
};
struct mem_dqblk {
qsize_t dqb_bhardlimit;
qsize_t dqb_bsoftlimit;
qsize_t dqb_curspace;
qsize_t dqb_rsvspace;
qsize_t dqb_ihardlimit;
qsize_t dqb_isoftlimit;
qsize_t dqb_curinodes;
time64_t dqb_btime;
time64_t dqb_itime;
};
struct dquot {
struct hlist_node dq_hash;
struct list_head dq_inuse;
struct list_head dq_free;
struct list_head dq_dirty;
struct mutex dq_lock;
spinlock_t dq_dqb_lock;
atomic_t dq_count;
struct super_block *dq_sb;
struct kqid dq_id;
loff_t dq_off;
long unsigned int dq_flags;
struct mem_dqblk dq_dqb;
};
struct quota_format_type {
int qf_fmt_id;
const struct quota_format_ops *qf_ops;
struct module *qf_owner;
struct quota_format_type *qf_next;
};
struct dqstats {
long unsigned int stat[8];
struct percpu_counter counter[8];
};
struct quota_format_ops {
int (*check_quota_file)(struct super_block *, int);
int (*read_file_info)(struct super_block *, int);
int (*write_file_info)(struct super_block *, int);
int (*free_file_info)(struct super_block *, int);
int (*read_dqblk)(struct dquot *);
int (*commit_dqblk)(struct dquot *);
int (*release_dqblk)(struct dquot *);
int (*get_next_id)(struct super_block *, struct kqid *);
};
struct dquot_operations {
int (*write_dquot)(struct dquot *);
struct dquot * (*alloc_dquot)(struct super_block *, int);
void (*destroy_dquot)(struct dquot *);
int (*acquire_dquot)(struct dquot *);
int (*release_dquot)(struct dquot *);
int (*mark_dirty)(struct dquot *);
int (*write_info)(struct super_block *, int);
qsize_t * (*get_reserved_space)(struct inode *);
int (*get_projid)(struct inode *, kprojid_t *);
int (*get_inode_usage)(struct inode *, qsize_t *);
int (*get_next_id)(struct super_block *, struct kqid *);
};
struct qc_dqblk {
int d_fieldmask;
u64 d_spc_hardlimit;
u64 d_spc_softlimit;
u64 d_ino_hardlimit;
u64 d_ino_softlimit;
u64 d_space;
u64 d_ino_count;
s64 d_ino_timer;
s64 d_spc_timer;
int d_ino_warns;
int d_spc_warns;
u64 d_rt_spc_hardlimit;
u64 d_rt_spc_softlimit;
u64 d_rt_space;
s64 d_rt_spc_timer;
int d_rt_spc_warns;
};
struct qc_type_state {
unsigned int flags;
unsigned int spc_timelimit;
unsigned int ino_timelimit;
unsigned int rt_spc_timelimit;
unsigned int spc_warnlimit;
unsigned int ino_warnlimit;
unsigned int rt_spc_warnlimit;
long long unsigned int ino;
blkcnt_t blocks;
blkcnt_t nextents;
};
struct qc_state {
unsigned int s_incoredqs;
struct qc_type_state s_state[3];
};
struct qc_info {
int i_fieldmask;
unsigned int i_flags;
unsigned int i_spc_timelimit;
unsigned int i_ino_timelimit;
unsigned int i_rt_spc_timelimit;
unsigned int i_spc_warnlimit;
unsigned int i_ino_warnlimit;
unsigned int i_rt_spc_warnlimit;
};
struct quotactl_ops {
int (*quota_on)(struct super_block *, int, int, const struct path *);
int (*quota_off)(struct super_block *, int);
int (*quota_enable)(struct super_block *, unsigned int);
int (*quota_disable)(struct super_block *, unsigned int);
int (*quota_sync)(struct super_block *, int);
int (*set_info)(struct super_block *, int, struct qc_info *);
int (*get_dqblk)(struct super_block *, struct kqid, struct qc_dqblk *);
int (*get_nextdqblk)(struct super_block *, struct kqid *, struct qc_dqblk *);
int (*set_dqblk)(struct super_block *, struct kqid, struct qc_dqblk *);
int (*get_state)(struct super_block *, struct qc_state *);
int (*rm_xquota)(struct super_block *, unsigned int);
};
struct writeback_control;
struct readahead_control;
struct swap_info_struct;
struct address_space_operations {
int (*writepage)(struct page *, struct writeback_control *);
int (*readpage)(struct file *, struct page *);
int (*writepages)(struct address_space *, struct writeback_control *);
int (*set_page_dirty)(struct page *);
int (*readpages)(struct file *, struct address_space *, struct list_head *, unsigned int);
void (*readahead)(struct readahead_control *);
int (*write_begin)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct page **, void **);
int (*write_end)(struct file *, struct address_space *, loff_t, unsigned int, unsigned int, struct page *, void *);
sector_t (*bmap)(struct address_space *, sector_t);
void (*invalidatepage)(struct page *, unsigned int, unsigned int);
int (*releasepage)(struct page *, gfp_t);
void (*freepage)(struct page *);
ssize_t (*direct_IO)(struct kiocb *, struct iov_iter *);
int (*migratepage)(struct address_space *, struct page *, struct page *, enum migrate_mode);
bool (*isolate_page)(struct page *, isolate_mode_t);
void (*putback_page)(struct page *);
int (*launder_page)(struct page *);
int (*is_partially_uptodate)(struct page *, long unsigned int, long unsigned int);
void (*is_dirty_writeback)(struct page *, bool *, bool *);
int (*error_remove_page)(struct address_space *, struct page *);
int (*swap_activate)(struct swap_info_struct *, struct file *, sector_t *);
void (*swap_deactivate)(struct file *);
};
struct hd_struct;
struct gendisk;
struct block_device {
dev_t bd_dev;
int bd_openers;
struct inode *bd_inode;
struct super_block *bd_super;
struct mutex bd_mutex;
void *bd_claiming;
void *bd_holder;
int bd_holders;
bool bd_write_holder;
struct list_head bd_holder_disks;
struct block_device *bd_contains;
unsigned int bd_block_size;
u8 bd_partno;
struct hd_struct *bd_part;
unsigned int bd_part_count;
int bd_invalidated;
struct gendisk *bd_disk;
struct request_queue *bd_queue;
struct backing_dev_info *bd_bdi;
struct list_head bd_list;
long unsigned int bd_private;
int bd_fsfreeze_count;
struct mutex bd_fsfreeze_mutex;
};
struct fiemap_extent_info;
struct inode_operations {
struct dentry * (*lookup)(struct inode *, struct dentry *, unsigned int);
const char * (*get_link)(struct dentry *, struct inode *, struct delayed_call *);
int (*permission)(struct inode *, int);
struct posix_acl * (*get_acl)(struct inode *, int);
int (*readlink)(struct dentry *, char *, int);
int (*create)(struct inode *, struct dentry *, umode_t, bool);
int (*link)(struct dentry *, struct inode *, struct dentry *);
int (*unlink)(struct inode *, struct dentry *);
int (*symlink)(struct inode *, struct dentry *, const char *);
int (*mkdir)(struct inode *, struct dentry *, umode_t);
int (*rmdir)(struct inode *, struct dentry *);
int (*mknod)(struct inode *, struct dentry *, umode_t, dev_t);
int (*rename)(struct inode *, struct dentry *, struct inode *, struct dentry *, unsigned int);
int (*setattr)(struct dentry *, struct iattr *);
int (*getattr)(const struct path *, struct kstat *, u32, unsigned int);
ssize_t (*listxattr)(struct dentry *, char *, size_t);
int (*fiemap)(struct inode *, struct fiemap_extent_info *, u64, u64);
int (*update_time)(struct inode *, struct timespec64 *, int);
int (*atomic_open)(struct inode *, struct dentry *, struct file *, unsigned int, umode_t);
int (*tmpfile)(struct inode *, struct dentry *, umode_t);
int (*set_acl)(struct inode *, struct posix_acl *, int);
long: 64;
long: 64;
long: 64;
};
struct file_lock_context {
spinlock_t flc_lock;
struct list_head flc_flock;
struct list_head flc_posix;
struct list_head flc_lease;
};
struct file_lock_operations {
void (*fl_copy_lock)(struct file_lock *, struct file_lock *);
void (*fl_release_private)(struct file_lock *);
};
struct nlm_lockowner;
struct nfs_lock_info {
u32 state;
struct nlm_lockowner *owner;
struct list_head list;
};
struct nfs4_lock_state;
struct nfs4_lock_info {
struct nfs4_lock_state *owner;
};
struct fasync_struct;
struct lock_manager_operations;
struct file_lock {
struct file_lock *fl_blocker;
struct list_head fl_list;
struct hlist_node fl_link;
struct list_head fl_blocked_requests;
struct list_head fl_blocked_member;
fl_owner_t fl_owner;
unsigned int fl_flags;
unsigned char fl_type;
unsigned int fl_pid;
int fl_link_cpu;
wait_queue_head_t fl_wait;
struct file *fl_file;
loff_t fl_start;
loff_t fl_end;
struct fasync_struct *fl_fasync;
long unsigned int fl_break_time;
long unsigned int fl_downgrade_time;
const struct file_lock_operations *fl_ops;
const struct lock_manager_operations *fl_lmops;
union {
struct nfs_lock_info nfs_fl;
struct nfs4_lock_info nfs4_fl;
struct {
struct list_head link;
int state;
unsigned int debug_id;
} afs;
} fl_u;
};
struct lock_manager_operations {
fl_owner_t (*lm_get_owner)(fl_owner_t);
void (*lm_put_owner)(fl_owner_t);
void (*lm_notify)(struct file_lock *);
int (*lm_grant)(struct file_lock *, int);
bool (*lm_break)(struct file_lock *);
int (*lm_change)(struct file_lock *, int, struct list_head *);
void (*lm_setup)(struct file_lock *, void **);
bool (*lm_breaker_owns_lease)(struct file_lock *);
};
struct fasync_struct {
rwlock_t fa_lock;
int magic;
int fa_fd;
struct fasync_struct *fa_next;
struct file *fa_file;
struct callback_head fa_rcu;
};
struct kstatfs;
struct super_operations {
struct inode * (*alloc_inode)(struct super_block *);
void (*destroy_inode)(struct inode *);
void (*free_inode)(struct inode *);
void (*dirty_inode)(struct inode *, int);
int (*write_inode)(struct inode *, struct writeback_control *);
int (*drop_inode)(struct inode *);
void (*evict_inode)(struct inode *);
void (*put_super)(struct super_block *);
int (*sync_fs)(struct super_block *, int);
int (*freeze_super)(struct super_block *);
int (*freeze_fs)(struct super_block *);
int (*thaw_super)(struct super_block *);
int (*unfreeze_fs)(struct super_block *);
int (*statfs)(struct dentry *, struct kstatfs *);
int (*remount_fs)(struct super_block *, int *, char *);
void (*umount_begin)(struct super_block *);
int (*show_options)(struct seq_file *, struct dentry *);
int (*show_devname)(struct seq_file *, struct dentry *);
int (*show_path)(struct seq_file *, struct dentry *);
int (*show_stats)(struct seq_file *, struct dentry *);
ssize_t (*quota_read)(struct super_block *, int, char *, size_t, loff_t);
ssize_t (*quota_write)(struct super_block *, int, const char *, size_t, loff_t);
struct dquot ** (*get_dquots)(struct inode *);
int (*bdev_try_to_free_page)(struct super_block *, struct page *, gfp_t);
long int (*nr_cached_objects)(struct super_block *, struct shrink_control *);
long int (*free_cached_objects)(struct super_block *, struct shrink_control *);
};
struct iomap;
struct fid;
struct export_operations {
int (*encode_fh)(struct inode *, __u32 *, int *, struct inode *);
struct dentry * (*fh_to_dentry)(struct super_block *, struct fid *, int, int);
struct dentry * (*fh_to_parent)(struct super_block *, struct fid *, int, int);
int (*get_name)(struct dentry *, char *, struct dentry *);
struct dentry * (*get_parent)(struct dentry *);
int (*commit_metadata)(struct inode *);
int (*get_uuid)(struct super_block *, u8 *, u32 *, u64 *);
int (*map_blocks)(struct inode *, loff_t, u64, struct iomap *, bool, u32 *);
int (*commit_blocks)(struct inode *, struct iomap *, int, struct iattr *);
};
struct xattr_handler {
const char *name;
const char *prefix;
int flags;
bool (*list)(struct dentry *);
int (*get)(const struct xattr_handler *, struct dentry *, struct inode *, const char *, void *, size_t);
int (*set)(const struct xattr_handler *, struct dentry *, struct inode *, const char *, const void *, size_t, int);
};
typedef int (*filldir_t)(struct dir_context *, const char *, int, loff_t, u64, unsigned int);
struct dir_context {
filldir_t actor;
loff_t pos;
};
struct p_log;
struct fs_parameter;
struct fs_parse_result;
typedef int fs_param_type(struct p_log *, const struct fs_parameter_spec *, struct fs_parameter *, struct fs_parse_result *);
struct fs_parameter_spec {
const char *name;
fs_param_type *type;
u8 opt;
short unsigned int flags;
const void *data;
};
struct attribute {
const char *name;
umode_t mode;
};
struct kobj_attribute {
struct attribute attr;
ssize_t (*show)(struct kobject *, struct kobj_attribute *, char *);
ssize_t (*store)(struct kobject *, struct kobj_attribute *, const char *, size_t);
};
typedef void compound_page_dtor(struct page *);
enum compound_dtor_id {
NULL_COMPOUND_DTOR = 0,
COMPOUND_PAGE_DTOR = 1,
HUGETLB_PAGE_DTOR = 2,
NR_COMPOUND_DTORS = 3,
};
enum vm_event_item {
PGPGIN = 0,
PGPGOUT = 1,
PSWPIN = 2,
PSWPOUT = 3,
PGALLOC_DMA = 4,
PGALLOC_DMA32 = 5,
PGALLOC_NORMAL = 6,
PGALLOC_MOVABLE = 7,
ALLOCSTALL_DMA = 8,
ALLOCSTALL_DMA32 = 9,
ALLOCSTALL_NORMAL = 10,
ALLOCSTALL_MOVABLE = 11,
PGSCAN_SKIP_DMA = 12,
PGSCAN_SKIP_DMA32 = 13,
PGSCAN_SKIP_NORMAL = 14,
PGSCAN_SKIP_MOVABLE = 15,
PGFREE = 16,
PGACTIVATE = 17,
PGDEACTIVATE = 18,
PGLAZYFREE = 19,
PGFAULT = 20,
PGMAJFAULT = 21,
PGLAZYFREED = 22,
PGREFILL = 23,
PGSTEAL_KSWAPD = 24,
PGSTEAL_DIRECT = 25,
PGSCAN_KSWAPD = 26,
PGSCAN_DIRECT = 27,
PGSCAN_DIRECT_THROTTLE = 28,
PGSCAN_ANON = 29,
PGSCAN_FILE = 30,
PGSTEAL_ANON = 31,
PGSTEAL_FILE = 32,
PGSCAN_ZONE_RECLAIM_FAILED = 33,
PGINODESTEAL = 34,
SLABS_SCANNED = 35,
KSWAPD_INODESTEAL = 36,
KSWAPD_LOW_WMARK_HIT_QUICKLY = 37,
KSWAPD_HIGH_WMARK_HIT_QUICKLY = 38,
PAGEOUTRUN = 39,
PGROTATED = 40,
DROP_PAGECACHE = 41,
DROP_SLAB = 42,
OOM_KILL = 43,
PGMIGRATE_SUCCESS = 44,
PGMIGRATE_FAIL = 45,
COMPACTMIGRATE_SCANNED = 46,
COMPACTFREE_SCANNED = 47,
COMPACTISOLATED = 48,
COMPACTSTALL = 49,
COMPACTFAIL = 50,
COMPACTSUCCESS = 51,
KCOMPACTD_WAKE = 52,
KCOMPACTD_MIGRATE_SCANNED = 53,
KCOMPACTD_FREE_SCANNED = 54,
HTLB_BUDDY_PGALLOC = 55,
HTLB_BUDDY_PGALLOC_FAIL = 56,
UNEVICTABLE_PGCULLED = 57,
UNEVICTABLE_PGSCANNED = 58,
UNEVICTABLE_PGRESCUED = 59,
UNEVICTABLE_PGMLOCKED = 60,
UNEVICTABLE_PGMUNLOCKED = 61,
UNEVICTABLE_PGCLEARED = 62,
UNEVICTABLE_PGSTRANDED = 63,
SWAP_RA = 64,
SWAP_RA_HIT = 65,
NR_VM_EVENT_ITEMS = 66,
};
struct vm_event_state {
long unsigned int event[66];
};
enum memblock_flags {
MEMBLOCK_NONE = 0,
MEMBLOCK_HOTPLUG = 1,
MEMBLOCK_MIRROR = 2,
MEMBLOCK_NOMAP = 4,
};
struct memblock_region {
phys_addr_t base;
phys_addr_t size;
enum memblock_flags flags;
int nid;
};
struct memblock_type {
long unsigned int cnt;
long unsigned int max;
phys_addr_t total_size;
struct memblock_region *regions;
char *name;
};
struct memblock {
bool bottom_up;
phys_addr_t current_limit;
struct memblock_type memory;
struct memblock_type reserved;
};
struct debug_store {
u64 bts_buffer_base;
u64 bts_index;
u64 bts_absolute_maximum;
u64 bts_interrupt_threshold;
u64 pebs_buffer_base;
u64 pebs_index;
u64 pebs_absolute_maximum;
u64 pebs_interrupt_threshold;
u64 pebs_event_reset[12];
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
struct debug_store_buffers {
char bts_buffer[65536];
char pebs_buffer[65536];
};
struct cea_exception_stacks {
char DF_stack_guard[4096];
char DF_stack[4096];
char NMI_stack_guard[4096];
char NMI_stack[4096];
char DB_stack_guard[4096];
char DB_stack[4096];
char MCE_stack_guard[4096];
char MCE_stack[4096];
char IST_top_guard[4096];
};
struct cpu_entry_area {
char gdt[4096];
struct entry_stack_page entry_stack_page;
struct tss_struct tss;
struct cea_exception_stacks estacks;
struct debug_store cpu_debug_store;
struct debug_store_buffers cpu_debug_buffers;
};
struct gdt_page {
struct desc_struct gdt[16];
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
struct tlb_context {
u64 ctx_id;
u64 tlb_gen;
};
struct tlb_state {
struct mm_struct *loaded_mm;
union {
struct mm_struct *last_user_mm;
long unsigned int last_user_mm_ibpb;
};
u16 loaded_mm_asid;
u16 next_asid;
bool is_lazy;
bool invalidate_other;
short unsigned int user_pcid_flush_mask;
long unsigned int cr4;
struct tlb_context ctxs[6];
};
enum e820_type {
E820_TYPE_RAM = 1,
E820_TYPE_RESERVED = 2,
E820_TYPE_ACPI = 3,
E820_TYPE_NVS = 4,
E820_TYPE_UNUSABLE = 5,
E820_TYPE_PMEM = 7,
E820_TYPE_PRAM = 12,
E820_TYPE_SOFT_RESERVED = 4026531839,
E820_TYPE_RESERVED_KERN = 128,
};
struct e820_entry {
u64 addr;
u64 size;
enum e820_type type;
} __attribute__((packed));
struct e820_table {
__u32 nr_entries;
struct e820_entry entries[320];
} __attribute__((packed));
struct boot_params_to_save {
unsigned int start;
unsigned int len;
};
struct idr {
struct xarray idr_rt;
unsigned int idr_base;
unsigned int idr_next;
};
struct kernfs_root;
struct kernfs_elem_dir {
long unsigned int subdirs;
struct rb_root children;
struct kernfs_root *root;
};
struct kernfs_syscall_ops;
struct kernfs_root {
struct kernfs_node *kn;
unsigned int flags;
struct idr ino_idr;
u32 last_id_lowbits;
u32 id_highbits;
struct kernfs_syscall_ops *syscall_ops;
struct list_head supers;
wait_queue_head_t deactivate_waitq;
};
struct kernfs_elem_symlink {
struct kernfs_node *target_kn;
};
struct kernfs_ops;
struct kernfs_open_node;
struct kernfs_elem_attr {
const struct kernfs_ops *ops;
struct kernfs_open_node *open;
loff_t size;
struct kernfs_node *notify_next;
};
struct kernfs_iattrs;
struct kernfs_node {
atomic_t count;
atomic_t active;
struct kernfs_node *parent;
const char *name;
struct rb_node rb;
const void *ns;
unsigned int hash;
union {
struct kernfs_elem_dir dir;
struct kernfs_elem_symlink symlink;
struct kernfs_elem_attr attr;
};
void *priv;
u64 id;
short unsigned int flags;
umode_t mode;
struct kernfs_iattrs *iattr;
};
struct kernfs_open_file;
struct kernfs_ops {
int (*open)(struct kernfs_open_file *);
void (*release)(struct kernfs_open_file *);
int (*seq_show)(struct seq_file *, void *);
void * (*seq_start)(struct seq_file *, loff_t *);
void * (*seq_next)(struct seq_file *, void *, loff_t *);
void (*seq_stop)(struct seq_file *, void *);
ssize_t (*read)(struct kernfs_open_file *, char *, size_t, loff_t);
size_t atomic_write_len;
bool prealloc;
ssize_t (*write)(struct kernfs_open_file *, char *, size_t, loff_t);
__poll_t (*poll)(struct kernfs_open_file *, struct poll_table_struct *);
int (*mmap)(struct kernfs_open_file *, struct vm_area_struct *);
};
struct kernfs_syscall_ops {
int (*show_options)(struct seq_file *, struct kernfs_root *);
int (*mkdir)(struct kernfs_node *, const char *, umode_t);
int (*rmdir)(struct kernfs_node *);
int (*rename)(struct kernfs_node *, struct kernfs_node *, const char *);
int (*show_path)(struct seq_file *, struct kernfs_node *, struct kernfs_root *);
};
struct kernfs_open_file {
struct kernfs_node *kn;
struct file *file;
struct seq_file *seq_file;
void *priv;
struct mutex mutex;
struct mutex prealloc_mutex;
int event;
struct list_head list;
char *prealloc_buf;
size_t atomic_write_len;
bool mmapped: 1;
bool released: 1;
const struct vm_operations_struct *vm_ops;
};
enum kobj_ns_type {
KOBJ_NS_TYPE_NONE = 0,
KOBJ_NS_TYPE_NET = 1,
KOBJ_NS_TYPES = 2,
};
struct sock;
struct kobj_ns_type_operations {
enum kobj_ns_type type;
bool (*current_may_mount)();
void * (*grab_current_ns)();
const void * (*netlink_ns)(struct sock *);
const void * (*initial_ns)();
void (*drop_ns)(void *);
};
struct bin_attribute;
struct attribute_group {
const char *name;
umode_t (*is_visible)(struct kobject *, struct attribute *, int);
umode_t (*is_bin_visible)(struct kobject *, struct bin_attribute *, int);
struct attribute **attrs;
struct bin_attribute **bin_attrs;
};
struct bin_attribute {
struct attribute attr;
size_t size;
void *private;
ssize_t (*read)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
ssize_t (*write)(struct file *, struct kobject *, struct bin_attribute *, char *, loff_t, size_t);
int (*mmap)(struct file *, struct kobject *, struct bin_attribute *, struct vm_area_struct *);
};
struct sysfs_ops {
ssize_t (*show)(struct kobject *, struct attribute *, char *);
ssize_t (*store)(struct kobject *, struct attribute *, const char *, size_t);
};
struct kset_uevent_ops;
struct kset {
struct list_head list;
spinlock_t list_lock;
struct kobject kobj;
const struct kset_uevent_ops *uevent_ops;
};
struct kobj_type {
void (*release)(struct kobject *);
const struct sysfs_ops *sysfs_ops;
struct attribute **default_attrs;
const struct attribute_group **default_groups;
const struct kobj_ns_type_operations * (*child_ns_type)(struct kobject *);
const void * (*namespace)(struct kobject *);
void (*get_ownership)(struct kobject *, kuid_t *, kgid_t *);
};
struct kobj_uevent_env {
char *argv[3];
char *envp[64];
int envp_idx;
char buf[2048];
int buflen;
};
struct kset_uevent_ops {
int (* const filter)(struct kset *, struct kobject *);
const char * (* const name)(struct kset *, struct kobject *);
int (* const uevent)(struct kset *, struct kobject *, struct kobj_uevent_env *);
};
struct dev_pm_ops {
int (*prepare)(struct device *);
void (*complete)(struct device *);
int (*suspend)(struct device *);
int (*resume)(struct device *);
int (*freeze)(struct device *);
int (*thaw)(struct device *);
int (*poweroff)(struct device *);
int (*restore)(struct device *);
int (*suspend_late)(struct device *);
int (*resume_early)(struct device *);
int (*freeze_late)(struct device *);
int (*thaw_early)(struct device *);
int (*poweroff_late)(struct device *);
int (*restore_early)(struct device *);
int (*suspend_noirq)(struct device *);
int (*resume_noirq)(struct device *);
int (*freeze_noirq)(struct device *);
int (*thaw_noirq)(struct device *);
int (*poweroff_noirq)(struct device *);
int (*restore_noirq)(struct device *);
int (*runtime_suspend)(struct device *);
int (*runtime_resume)(struct device *);
int (*runtime_idle)(struct device *);
};
struct pm_subsys_data {
spinlock_t lock;
unsigned int refcount;
struct list_head clock_list;
};
struct wakeup_source {
const char *name;
int id;
struct list_head entry;
spinlock_t lock;
struct wake_irq *wakeirq;
struct timer_list timer;
long unsigned int timer_expires;
ktime_t total_time;
ktime_t max_time;
ktime_t last_time;
ktime_t start_prevent_time;
ktime_t prevent_sleep_time;
long unsigned int event_count;
long unsigned int active_count;
long unsigned int relax_count;
long unsigned int expire_count;
long unsigned int wakeup_count;
struct device *dev;
bool active: 1;
bool autosleep_enabled: 1;
};
struct dev_pm_domain {
struct dev_pm_ops ops;
int (*start)(struct device *);
void (*detach)(struct device *, bool);
int (*activate)(struct device *);
void (*sync)(struct device *);
void (*dismiss)(struct device *);
};
struct iommu_ops;
struct subsys_private;
struct bus_type {
const char *name;
const char *dev_name;
struct device *dev_root;
const struct attribute_group **bus_groups;
const struct attribute_group **dev_groups;
const struct attribute_group **drv_groups;
int (*match)(struct device *, struct device_driver *);
int (*uevent)(struct device *, struct kobj_uevent_env *);
int (*probe)(struct device *);
void (*sync_state)(struct device *);
int (*remove)(struct device *);
void (*shutdown)(struct device *);
int (*online)(struct device *);
int (*offline)(struct device *);
int (*suspend)(struct device *, pm_message_t);
int (*resume)(struct device *);
int (*num_vf)(struct device *);
int (*dma_configure)(struct device *);
const struct dev_pm_ops *pm;
const struct iommu_ops *iommu_ops;
struct subsys_private *p;
struct lock_class_key lock_key;
bool need_parent_lock;
};
enum probe_type {
PROBE_DEFAULT_STRATEGY = 0,
PROBE_PREFER_ASYNCHRONOUS = 1,
PROBE_FORCE_SYNCHRONOUS = 2,
};
struct of_device_id;
struct acpi_device_id;
struct driver_private;
struct device_driver {
const char *name;
struct bus_type *bus;
struct module *owner;
const char *mod_name;
bool suppress_bind_attrs;
enum probe_type probe_type;
const struct of_device_id *of_match_table;
const struct acpi_device_id *acpi_match_table;
int (*probe)(struct device *);
void (*sync_state)(struct device *);
int (*remove)(struct device *);
void (*shutdown)(struct device *);
int (*suspend)(struct device *, pm_message_t);
int (*resume)(struct device *);
const struct attribute_group **groups;
const struct attribute_group **dev_groups;
const struct dev_pm_ops *pm;
void (*coredump)(struct device *);
struct driver_private *p;
};
enum iommu_cap {
IOMMU_CAP_CACHE_COHERENCY = 0,
IOMMU_CAP_INTR_REMAP = 1,
IOMMU_CAP_NOEXEC = 2,
};
enum iommu_attr {
DOMAIN_ATTR_GEOMETRY = 0,
DOMAIN_ATTR_PAGING = 1,
DOMAIN_ATTR_WINDOWS = 2,
DOMAIN_ATTR_FSL_PAMU_STASH = 3,
DOMAIN_ATTR_FSL_PAMU_ENABLE = 4,
DOMAIN_ATTR_FSL_PAMUV1 = 5,
DOMAIN_ATTR_NESTING = 6,
DOMAIN_ATTR_DMA_USE_FLUSH_QUEUE = 7,
DOMAIN_ATTR_MAX = 8,
};
enum iommu_dev_features {
IOMMU_DEV_FEAT_AUX = 0,
IOMMU_DEV_FEAT_SVA = 1,
};
struct iommu_domain;
struct iommu_iotlb_gather;
struct iommu_device;
struct iommu_resv_region;
struct of_phandle_args;
struct iommu_sva;
struct iommu_fault_event;
struct iommu_page_response;
struct iommu_cache_invalidate_info;
struct iommu_gpasid_bind_data;
struct iommu_ops {
bool (*capable)(enum iommu_cap);
struct iommu_domain * (*domain_alloc)(unsigned int);
void (*domain_free)(struct iommu_domain *);
int (*attach_dev)(struct iommu_domain *, struct device *);
void (*detach_dev)(struct iommu_domain *, struct device *);
int (*map)(struct iommu_domain *, long unsigned int, phys_addr_t, size_t, int, gfp_t);
size_t (*unmap)(struct iommu_domain *, long unsigned int, size_t, struct iommu_iotlb_gather *);
void (*flush_iotlb_all)(struct iommu_domain *);
void (*iotlb_sync_map)(struct iommu_domain *);
void (*iotlb_sync)(struct iommu_domain *, struct iommu_iotlb_gather *);
phys_addr_t (*iova_to_phys)(struct iommu_domain *, dma_addr_t);
struct iommu_device * (*probe_device)(struct device *);
void (*release_device)(struct device *);
void (*probe_finalize)(struct device *);
struct iommu_group * (*device_group)(struct device *);
int (*domain_get_attr)(struct iommu_domain *, enum iommu_attr, void *);
int (*domain_set_attr)(struct iommu_domain *, enum iommu_attr, void *);
void (*get_resv_regions)(struct device *, struct list_head *);
void (*put_resv_regions)(struct device *, struct list_head *);
void (*apply_resv_region)(struct device *, struct iommu_domain *, struct iommu_resv_region *);
int (*domain_window_enable)(struct iommu_domain *, u32, phys_addr_t, u64, int);
void (*domain_window_disable)(struct iommu_domain *, u32);
int (*of_xlate)(struct device *, struct of_phandle_args *);
bool (*is_attach_deferred)(struct iommu_domain *, struct device *);
bool (*dev_has_feat)(struct device *, enum iommu_dev_features);
bool (*dev_feat_enabled)(struct device *, enum iommu_dev_features);
int (*dev_enable_feat)(struct device *, enum iommu_dev_features);
int (*dev_disable_feat)(struct device *, enum iommu_dev_features);
int (*aux_attach_dev)(struct iommu_domain *, struct device *);
void (*aux_detach_dev)(struct iommu_domain *, struct device *);
int (*aux_get_pasid)(struct iommu_domain *, struct device *);
struct iommu_sva * (*sva_bind)(struct device *, struct mm_struct *, void *);
void (*sva_unbind)(struct iommu_sva *);
int (*sva_get_pasid)(struct iommu_sva *);
int (*page_response)(struct device *, struct iommu_fault_event *, struct iommu_page_response *);
int (*cache_invalidate)(struct iommu_domain *, struct device *, struct iommu_cache_invalidate_info *);
int (*sva_bind_gpasid)(struct iommu_domain *, struct device *, struct iommu_gpasid_bind_data *);
int (*sva_unbind_gpasid)(struct device *, int);
int (*def_domain_type)(struct device *);
long unsigned int pgsize_bitmap;
struct module *owner;
};
struct device_type {
const char *name;
const struct attribute_group **groups;
int (*uevent)(struct device *, struct kobj_uevent_env *);
char * (*devnode)(struct device *, umode_t *, kuid_t *, kgid_t *);
void (*release)(struct device *);
const struct dev_pm_ops *pm;
};
struct class {
const char *name;
struct module *owner;
const struct attribute_group **class_groups;
const struct attribute_group **dev_groups;
struct kobject *dev_kobj;
int (*dev_uevent)(struct device *, struct kobj_uevent_env *);
char * (*devnode)(struct device *, umode_t *);
void (*class_release)(struct class *);
void (*dev_release)(struct device *);
int (*shutdown_pre)(struct device *);
const struct kobj_ns_type_operations *ns_type;
const void * (*namespace)(struct device *);
void (*get_ownership)(struct device *, kuid_t *, kgid_t *);
const struct dev_pm_ops *pm;
struct subsys_private *p;
};
struct of_device_id {
char name[32];
char type[32];
char compatible[128];
const void *data;
};
typedef long unsigned int kernel_ulong_t;
struct acpi_device_id {
__u8 id[9];
kernel_ulong_t driver_data;
__u32 cls;
__u32 cls_msk;
};
struct device_dma_parameters {
unsigned int max_segment_size;
long unsigned int segment_boundary_mask;
};
enum dma_data_direction {
DMA_BIDIRECTIONAL = 0,
DMA_TO_DEVICE = 1,
DMA_FROM_DEVICE = 2,
DMA_NONE = 3,
};
struct sg_table;
struct scatterlist;
struct dma_map_ops {
void * (*alloc)(struct device *, size_t, dma_addr_t *, gfp_t, long unsigned int);
void (*free)(struct device *, size_t, void *, dma_addr_t, long unsigned int);
int (*mmap)(struct device *, struct vm_area_struct *, void *, dma_addr_t, size_t, long unsigned int);
int (*get_sgtable)(struct device *, struct sg_table *, void *, dma_addr_t, size_t, long unsigned int);
dma_addr_t (*map_page)(struct device *, struct page *, long unsigned int, size_t, enum dma_data_direction, long unsigned int);
void (*unmap_page)(struct device *, dma_addr_t, size_t, enum dma_data_direction, long unsigned int);
int (*map_sg)(struct device *, struct scatterlist *, int, enum dma_data_direction, long unsigned int);
void (*unmap_sg)(struct device *, struct scatterlist *, int, enum dma_data_direction, long unsigned int);
dma_addr_t (*map_resource)(struct device *, phys_addr_t, size_t, enum dma_data_direction, long unsigned int);
void (*unmap_resource)(struct device *, dma_addr_t, size_t, enum dma_data_direction, long unsigned int);
void (*sync_single_for_cpu)(struct device *, dma_addr_t, size_t, enum dma_data_direction);
void (*sync_single_for_device)(struct device *, dma_addr_t, size_t, enum dma_data_direction);
void (*sync_sg_for_cpu)(struct device *, struct scatterlist *, int, enum dma_data_direction);
void (*sync_sg_for_device)(struct device *, struct scatterlist *, int, enum dma_data_direction);
void (*cache_sync)(struct device *, void *, size_t, enum dma_data_direction);
int (*dma_supported)(struct device *, u64);
u64 (*get_required_mask)(struct device *);
size_t (*max_mapping_size)(struct device *);
long unsigned int (*get_merge_boundary)(struct device *);
};
struct node {
struct device dev;
struct list_head access_list;
};
enum cpuhp_smt_control {
CPU_SMT_ENABLED = 0,
CPU_SMT_DISABLED = 1,
CPU_SMT_FORCE_DISABLED = 2,
CPU_SMT_NOT_SUPPORTED = 3,
CPU_SMT_NOT_IMPLEMENTED = 4,
};
struct cpu_signature {
unsigned int sig;
unsigned int pf;
unsigned int rev;
};
struct ucode_cpu_info {
struct cpu_signature cpu_sig;
int valid;
void *mc;
};
typedef long unsigned int pto_T__;
struct kobj_attribute___2;
struct file_system_type___2;
struct atomic_notifier_head___2;
typedef long unsigned int irq_hw_number_t;
struct kernel_symbol {
int value_offset;
int name_offset;
int namespace_offset;
};
typedef int (*initcall_t)();
struct obs_kernel_param {
const char *str;
int (*setup_func)(char *);
int early;
};
enum ftrace_dump_mode {
DUMP_NONE = 0,
DUMP_ALL = 1,
DUMP_ORIG = 2,
};
struct bug_entry {
int bug_addr_disp;
int file_disp;
short unsigned int line;
short unsigned int flags;
};
struct pollfd {
int fd;
short int events;
short int revents;
};
typedef const int tracepoint_ptr_t;
struct bpf_raw_event_map {
struct tracepoint *tp;
void *bpf_func;
u32 num_args;
u32 writable_size;
long: 64;
};
struct orc_entry {
s16 sp_offset;
s16 bp_offset;
unsigned int sp_reg: 4;
unsigned int bp_reg: 4;
unsigned int type: 2;
unsigned int end: 1;
} __attribute__((packed));
enum perf_event_state {
PERF_EVENT_STATE_DEAD = 4294967292,
PERF_EVENT_STATE_EXIT = 4294967293,
PERF_EVENT_STATE_ERROR = 4294967294,
PERF_EVENT_STATE_OFF = 4294967295,
PERF_EVENT_STATE_INACTIVE = 0,
PERF_EVENT_STATE_ACTIVE = 1,
};
typedef struct {
atomic_long_t a;
} local_t;
typedef struct {
local_t a;
} local64_t;
struct perf_event_attr {
__u32 type;
__u32 size;
__u64 config;
union {
__u64 sample_period;
__u64 sample_freq;
};
__u64 sample_type;
__u64 read_format;
__u64 disabled: 1;
__u64 inherit: 1;
__u64 pinned: 1;
__u64 exclusive: 1;
__u64 exclude_user: 1;
__u64 exclude_kernel: 1;
__u64 exclude_hv: 1;
__u64 exclude_idle: 1;
__u64 mmap: 1;
__u64 comm: 1;
__u64 freq: 1;
__u64 inherit_stat: 1;
__u64 enable_on_exec: 1;
__u64 task: 1;
__u64 watermark: 1;
__u64 precise_ip: 2;
__u64 mmap_data: 1;
__u64 sample_id_all: 1;
__u64 exclude_host: 1;
__u64 exclude_guest: 1;
__u64 exclude_callchain_kernel: 1;
__u64 exclude_callchain_user: 1;
__u64 mmap2: 1;
__u64 comm_exec: 1;
__u64 use_clockid: 1;
__u64 context_switch: 1;
__u64 write_backward: 1;
__u64 namespaces: 1;
__u64 ksymbol: 1;
__u64 bpf_event: 1;
__u64 aux_output: 1;
__u64 cgroup: 1;
__u64 __reserved_1: 31;
union {
__u32 wakeup_events;
__u32 wakeup_watermark;
};
__u32 bp_type;
union {
__u64 bp_addr;
__u64 kprobe_func;
__u64 uprobe_path;
__u64 config1;
};
union {
__u64 bp_len;
__u64 kprobe_addr;
__u64 probe_offset;
__u64 config2;
};
__u64 branch_sample_type;
__u64 sample_regs_user;
__u32 sample_stack_user;
__s32 clockid;
__u64 sample_regs_intr;
__u32 aux_watermark;
__u16 sample_max_stack;
__u16 __reserved_2;
__u32 aux_sample_size;
__u32 __reserved_3;
};
struct hw_perf_event_extra {
u64 config;
unsigned int reg;
int alloc;
int idx;
};
struct arch_hw_breakpoint {
long unsigned int address;
long unsigned int mask;
u8 len;
u8 type;
};
struct hw_perf_event {
union {
struct {
u64 config;
u64 last_tag;
long unsigned int config_base;
long unsigned int event_base;
int event_base_rdpmc;
int idx;
int last_cpu;
int flags;
struct hw_perf_event_extra extra_reg;
struct hw_perf_event_extra branch_reg;
};
struct {
struct hrtimer hrtimer;
};
struct {
struct list_head tp_list;
};
struct {
u64 pwr_acc;
u64 ptsc;
};
struct {
struct arch_hw_breakpoint info;
struct list_head bp_list;
};
struct {
u8 iommu_bank;
u8 iommu_cntr;
u16 padding;
u64 conf;
u64 conf1;
};
};
struct task_struct *target;
void *addr_filters;
long unsigned int addr_filters_gen;
int state;
local64_t prev_count;
u64 sample_period;
u64 last_period;
local64_t period_left;
u64 interrupts_seq;
u64 interrupts;
u64 freq_time_stamp;
u64 freq_count_stamp;
};
struct irq_work {
union {
struct __call_single_node node;
struct {
struct llist_node llnode;
atomic_t flags;
};
};
void (*func)(struct irq_work *);
};
struct perf_addr_filters_head {
struct list_head list;
raw_spinlock_t lock;
unsigned int nr_file_filters;
};
struct perf_sample_data;
typedef void (*perf_overflow_handler_t)(struct perf_event *, struct perf_sample_data *, struct pt_regs *);
struct pmu;
struct perf_buffer;
struct perf_addr_filter_range;
struct bpf_prog;
struct trace_event_call;
struct event_filter;
struct perf_event {
struct list_head event_entry;
struct list_head sibling_list;
struct list_head active_list;
struct rb_node group_node;
u64 group_index;
struct list_head migrate_entry;
struct hlist_node hlist_entry;
struct list_head active_entry;
int nr_siblings;
int event_caps;
int group_caps;
struct perf_event *group_leader;
struct pmu *pmu;
void *pmu_private;
enum perf_event_state state;
unsigned int attach_state;
local64_t count;
atomic64_t child_count;
u64 total_time_enabled;
u64 total_time_running;
u64 tstamp;
u64 shadow_ctx_time;
struct perf_event_attr attr;
u16 header_size;
u16 id_header_size;
u16 read_size;
struct hw_perf_event hw;
struct perf_event_context *ctx;
atomic_long_t refcount;
atomic64_t child_total_time_enabled;
atomic64_t child_total_time_running;
struct mutex child_mutex;
struct list_head child_list;
struct perf_event *parent;
int oncpu;
int cpu;
struct list_head owner_entry;
struct task_struct *owner;
struct mutex mmap_mutex;
atomic_t mmap_count;
struct perf_buffer *rb;
struct list_head rb_entry;
long unsigned int rcu_batches;
int rcu_pending;
wait_queue_head_t waitq;
struct fasync_struct *fasync;
int pending_wakeup;
int pending_kill;
int pending_disable;
struct irq_work pending;
atomic_t event_limit;
struct perf_addr_filters_head addr_filters;
struct perf_addr_filter_range *addr_filter_ranges;
long unsigned int addr_filters_gen;
struct perf_event *aux_event;
void (*destroy)(struct perf_event *);
struct callback_head callback_head;
struct pid_namespace *ns;
u64 id;
u64 (*clock)();
perf_overflow_handler_t overflow_handler;
void *overflow_handler_context;
perf_overflow_handler_t orig_overflow_handler;
struct bpf_prog *prog;
struct trace_event_call *tp_event;
struct event_filter *filter;
void *security;
struct list_head sb_list;
};
struct lockdep_map {};
struct uid_gid_extent {
u32 first;
u32 lower_first;
u32 count;
};
struct uid_gid_map {
u32 nr_extents;
union {
struct uid_gid_extent extent[5];
struct {
struct uid_gid_extent *forward;
struct uid_gid_extent *reverse;
};
};
};
struct proc_ns_operations;
struct ns_common {
atomic_long_t stashed;
const struct proc_ns_operations *ops;
unsigned int inum;
};
struct ctl_table_root;
struct ctl_table_set;
struct ctl_dir;
struct ctl_node;
struct ctl_table_header {
union {
struct {
struct ctl_table *ctl_table;
int used;
int count;
int nreg;
};
struct callback_head rcu;
};
struct completion *unregistering;
struct ctl_table *ctl_table_arg;
struct ctl_table_root *root;
struct ctl_table_set *set;
struct ctl_dir *parent;
struct ctl_node *node;
struct hlist_head inodes;
};
struct ctl_dir {
struct ctl_table_header header;
struct rb_root root;
};
struct ctl_table_set {
int (*is_seen)(struct ctl_table_set *);
struct ctl_dir dir;
};
struct ucounts;
struct user_namespace {
struct uid_gid_map uid_map;
struct uid_gid_map gid_map;
struct uid_gid_map projid_map;
atomic_t count;
struct user_namespace *parent;
int level;
kuid_t owner;
kgid_t group;
struct ns_common ns;
long unsigned int flags;
struct list_head keyring_name_list;
struct key *user_keyring_register;
struct rw_semaphore keyring_sem;
struct work_struct work;
struct ctl_table_set set;
struct ctl_table_header *sysctls;
struct ucounts *ucounts;
int ucount_max[10];
};
enum node_states {
N_POSSIBLE = 0,
N_ONLINE = 1,
N_NORMAL_MEMORY = 2,
N_HIGH_MEMORY = 2,
N_MEMORY = 3,
N_CPU = 4,
NR_NODE_STATES = 5,
};
struct delayed_work {
struct work_struct work;
struct timer_list timer;
struct workqueue_struct *wq;
int cpu;
};
struct rcu_work {
struct work_struct work;
struct callback_head rcu;
struct workqueue_struct *wq;
};
struct rcu_segcblist {
struct callback_head *head;
struct callback_head **tails[4];
long unsigned int gp_seq[4];
long int len;
u8 enabled;
u8 offloaded;
};
struct srcu_node;
struct srcu_struct;
struct srcu_data {
long unsigned int srcu_lock_count[2];
long unsigned int srcu_unlock_count[2];
long: 64;
long: 64;
long: 64;
long: 64;
spinlock_t lock;
struct rcu_segcblist srcu_cblist;
long unsigned int srcu_gp_seq_needed;
long unsigned int srcu_gp_seq_needed_exp;
bool srcu_cblist_invoking;
struct timer_list delay_work;
struct work_struct work;
struct callback_head srcu_barrier_head;
struct srcu_node *mynode;
long unsigned int grpmask;
int cpu;
struct srcu_struct *ssp;
long: 64;
long: 64;
};
struct srcu_node {
spinlock_t lock;
long unsigned int srcu_have_cbs[4];
long unsigned int srcu_data_have_cbs[4];
long unsigned int srcu_gp_seq_needed_exp;
struct srcu_node *srcu_parent;
int grplo;
int grphi;
};
struct srcu_struct {
struct srcu_node node[5];
struct srcu_node *level[3];
struct mutex srcu_cb_mutex;
spinlock_t lock;
struct mutex srcu_gp_mutex;
unsigned int srcu_idx;
long unsigned int srcu_gp_seq;
long unsigned int srcu_gp_seq_needed;
long unsigned int srcu_gp_seq_needed_exp;
long unsigned int srcu_last_gp_end;
struct srcu_data *sda;
long unsigned int srcu_barrier_seq;
struct mutex srcu_barrier_mutex;
struct completion srcu_barrier_completion;
atomic_t srcu_barrier_cpu_cnt;
struct delayed_work work;
};
struct anon_vma {
struct anon_vma *root;
struct rw_semaphore rwsem;
atomic_t refcount;
unsigned int degree;
struct anon_vma *parent;
struct rb_root_cached rb_root;
};
struct mempolicy {
atomic_t refcnt;
short unsigned int mode;
short unsigned int flags;
union {
short int preferred_node;
nodemask_t nodes;
} v;
union {
nodemask_t cpuset_mems_allowed;
nodemask_t user_nodemask;
} w;
};
struct linux_binprm;
struct coredump_params;
struct linux_binfmt {
struct list_head lh;
struct module *module;
int (*load_binary)(struct linux_binprm *);
int (*load_shlib)(struct file *);
int (*core_dump)(struct coredump_params *);
long unsigned int min_coredump;
};
typedef void (*smp_call_func_t)(void *);
struct __call_single_data {
union {
struct __call_single_node node;
struct {
struct llist_node llist;
unsigned int flags;
};
};
smp_call_func_t func;
void *info;
};
struct ctl_node {
struct rb_node node;
struct ctl_table_header *header;
};
struct ctl_table_root {
struct ctl_table_set default_set;
struct ctl_table_set * (*lookup)(struct ctl_table_root *);
void (*set_ownership)(struct ctl_table_header *, struct ctl_table *, kuid_t *, kgid_t *);
int (*permissions)(struct ctl_table_header *, struct ctl_table *);
};
enum umh_disable_depth {
UMH_ENABLED = 0,
UMH_FREEZING = 1,
UMH_DISABLED = 2,
};
struct va_alignment {
int flags;
long unsigned int mask;
long unsigned int bits;
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
};
typedef __u64 Elf64_Addr;
typedef __u16 Elf64_Half;
typedef __u32 Elf64_Word;
typedef __u64 Elf64_Xword;
typedef __s64 Elf64_Sxword;
typedef struct {
Elf64_Sxword d_tag;
union {
Elf64_Xword d_val;
Elf64_Addr d_ptr;
} d_un;
} Elf64_Dyn;
struct elf64_sym {
Elf64_Word st_name;
unsigned char st_info;
unsigned char st_other;
Elf64_Half st_shndx;
Elf64_Addr st_value;
Elf64_Xword st_size;
};
typedef struct elf64_sym Elf64_Sym;
struct seq_file {
char *buf;
size_t size;
size_t from;
size_t count;
size_t pad_until;
loff_t index;
loff_t read_pos;
struct mutex lock;
const struct seq_operations *op;
int poll_event;
const struct file *file;
void *private;
};
typedef void (*poll_queue_proc)(struct file *, wait_queue_head_t *, struct poll_table_struct *);
struct poll_table_struct {
poll_queue_proc _qproc;
__poll_t _key;
};
struct kernel_param;
struct kernel_param_ops {
unsigned int flags;
int (*set)(const char *, const struct kernel_param *);
int (*get)(char *, const struct kernel_param *);
void (*free)(void *);
};
struct kparam_string;
struct kparam_array;
struct kernel_param {
const char *name;
struct module *mod;
const struct kernel_param_ops *ops;
const u16 perm;
s8 level;
u8 flags;
union {
void *arg;
const struct kparam_string *str;
const struct kparam_array *arr;
};
};
struct kparam_string {
unsigned int maxlen;
char *string;
};
struct kparam_array {
unsigned int max;
unsigned int elemsize;
unsigned int *num;
const struct kernel_param_ops *ops;
void *elem;
};
enum module_state {
MODULE_STATE_LIVE = 0,
MODULE_STATE_COMING = 1,
MODULE_STATE_GOING = 2,
MODULE_STATE_UNFORMED = 3,
};
struct module_param_attrs;
struct module_kobject {
struct kobject kobj;
struct module *mod;
struct kobject *drivers_dir;
struct module_param_attrs *mp;
struct completion *kobj_completion;
};
struct latch_tree_node {
struct rb_node node[2];
};
struct mod_tree_node {
struct module *mod;
struct latch_tree_node node;
};
struct module_layout {
void *base;
unsigned int size;
unsigned int text_size;
unsigned int ro_size;
unsigned int ro_after_init_size;
struct mod_tree_node mtn;
};
struct mod_arch_specific {
unsigned int num_orcs;
int *orc_unwind_ip;
struct orc_entry *orc_unwind;
};
struct mod_kallsyms {
Elf64_Sym *symtab;
unsigned int num_symtab;
char *strtab;
char *typetab;
};
struct module_attribute;
struct exception_table_entry;
struct module_sect_attrs;
struct module_notes_attrs;
struct trace_eval_map;
struct error_injection_entry;
struct module {
enum module_state state;
struct list_head list;
char name[56];
struct module_kobject mkobj;
struct module_attribute *modinfo_attrs;
const char *version;
const char *srcversion;
struct kobject *holders_dir;
const struct kernel_symbol *syms;
const s32 *crcs;
unsigned int num_syms;
struct mutex param_lock;
struct kernel_param *kp;
unsigned int num_kp;
unsigned int num_gpl_syms;
const struct kernel_symbol *gpl_syms;
const s32 *gpl_crcs;
bool async_probe_requested;
const struct kernel_symbol *gpl_future_syms;
const s32 *gpl_future_crcs;
unsigned int num_gpl_future_syms;
unsigned int num_exentries;
struct exception_table_entry *extable;
int (*init)();
long: 64;
long: 64;
long: 64;
long: 64;
long: 64;
struct module_layout core_layout;
struct module_layout init_layout;
struct mod_arch_specific arch;
long unsigned int taints;
unsigned int num_bugs;
struct list_head bug_list;
struct bug_entry *bug_table;
struct mod_kallsyms *kallsyms;
struct mod_kallsyms core_kallsyms;
struct module_sect_attrs *sect_attrs;
struct module_notes_attrs *notes_attrs;
char *args;
void *percpu;
unsigned int percpu_size;
void *noinstr_text_start;
unsigned int noinstr_text_size;
unsigned int num_tracepoints;
tracepoint_ptr_t *tracepoints_ptrs;
unsigned int num_srcu_structs;
struct srcu_struct **srcu_struct_ptrs;
unsigned int num_bpf_raw_events;
struct bpf_raw_event_map *bpf_raw_events;
struct jump_entry *jump_entries;
unsigned int num_jump_entries;
unsigned int num_trace_bprintk_fmt;
const char **trace_bprintk_fmt_start;
struct trace_event_call **trace_events;
unsigned int num_trace_events;
struct trace_eval_map **trace_evals;
unsigned int num_trace_evals;
void *kprobes_text_start;
unsigned int kprobes_text_size;
long unsigned int *kprobe_blacklist;
unsigned int num_kprobe_blacklist;
struct list_head source_list;
struct list_head target_list;
void (*exit)();
atomic_t refcnt;
struct error_injection_entry *ei_funcs;
unsigned int num_ei_funcs;
};
struct error_injection_entry {
long unsigned int addr;
int etype;
};
struct module_attribute {
struct attribute attr;
ssize_t (*show)(struct module_attribute *, struct module_kobject *, char *);
ssize_t (*store)(struct module_attribute *, struct module_kobject *, const char *, size_t);
void (*setup)(struct module *, const char *);
int (*test)(struct module *);
void (*free)(struct module *);
};
struct exception_table_entry {
int insn;
int fixup;
int handler;
};
struct trace_event_functions;
struct trace_event {
struct hlist_node node;
struct list_head list;
int type;
struct trace_event_functions *funcs;
};
struct trace_event_class;
struct bpf_prog_array;
struct trace_event_call {
struct list_head list;
struct trace_event_class *class;
union {
char *name;
struct tracepoint *tp;
};
struct trace_event event;
char *print_fmt;
struct event_filter *filter;
void *mod;
void *data;
int flags;
int perf_refcount;
struct hlist_head *perf_events;
struct bpf_prog_array *prog_array;
int (*perf_perm)(struct trace_event_call *, struct perf_event *);
};
struct trace_eval_map {
const char *system;
const char *eval_string;
long unsigned int eval_value;
};
struct fs_pin;
struct pid_namespace {
struct kref kref;
struct idr idr;
struct callback_head rcu;
unsigned int pid_allocated;
struct task_struct *child_reaper;
struct kmem_cache *pid_cachep;
unsigned int level;
struct pid_namespace *parent;
struct fs_pin *bacct;
struct user_namespace *user_ns;
struct ucounts *ucounts;
int reboot;
struct ns_common ns;
};
struct task_cputime {
u64 stime;
u64 utime;
long long unsigned int sum_exec_runtime;
};
struct uts_namespace;
struct ipc_namespace;
struct mnt_namespace;
struct net;
struct time_namespace;
struct cgroup_namespace;
struct nsproxy {
atomic_t count;
struct uts_namespace *uts_ns;
struct ipc_namespace *ipc_ns;
struct mnt_namespace *mnt_ns;
struct pid_namespace *pid_ns_for_children;
struct net *net_ns;
struct time_namespace *time_ns;
struct time_namespace *time_ns_for_children;
struct cgroup_namespace *cgroup_ns;
};
struct bio;
struct bio_list {
struct bio *head;
struct bio *tail;
};
struct blk_plug {
struct list_head mq_list;
struct list_head cb_list;
short unsigned int rq_count;
bool multiple_queues;
};
struct reclaim_state {
long unsigned int reclaimed_slab;
};
typedef int congested_fn(void *, int);
struct fprop_local_percpu {
struct percpu_counter events;
unsigned int period;
raw_spinlock_t lock;
};
enum wb_reason {
WB_REASON_BACKGROUND = 0,
WB_REASON_VMSCAN = 1,
WB_REASON_SYNC = 2,
WB_REASON_PERIODIC = 3,
WB_REASON_LAPTOP_TIMER = 4,
WB_REASON_FS_FREE_SPACE = 5,
WB_REASON_FORKER_THREAD = 6,
WB_REASON_FOREIGN_FLUSH = 7,
WB_REASON_MAX = 8,
};
struct bdi_writeback_congested;
struct bdi_writeback {
struct backing_dev_info *bdi;
long unsigned int state;
long unsigned int last_old_flush;
struct list_head b_dirty;
struct list_head b_io;
struct list_head b_more_io;
struct list_head b_dirty_time;
spinlock_t list_lock;
struct percpu_counter stat[4];
struct bdi_writeback_congested *congested;
long unsigned int bw_time_stamp;
long unsigned int dirtied_stamp;
long unsigned int written_stamp;
long unsigned int write_bandwidth;
long unsigned int avg_write_bandwidth;
long unsigned int dirty_ratelimit;
long unsigned int balanced_dirty_ratelimit;
struct fprop_local_percpu completions;
int dirty_exceeded;
enum wb_reason start_all_reason;
spinlock_t work_lock;
struct list_head work_list;
struct delayed_work dwork;
long unsigned int dirty_sleep;
struct list_head bdi_node;
};
struct backing_dev_info {
u64 id;
struct rb_node rb_node;
struct list_head bdi_list;
long unsigned int ra_pages;
long unsigned int io_pages;
congested_fn *congested_fn;
void *congested_data;
struct kref refcnt;
unsigned int capabilities;
unsigned int min_ratio;
unsigned int max_ratio;
unsigned int max_prop_frac;
atomic_long_t tot_write_bandwidth;
struct bdi_writeback wb;
struct list_head wb_list;
struct bdi_writeback_congested *wb_congested;
wait_queue_head_t wb_waitq;
struct device *dev;
char dev_name[64];
struct device *owner;
struct timer_list laptop_mode_wb_timer;
struct dentry *debug_dir;
};
struct cgroup_subsys_state;
struct cgroup;
struct css_set {
struct cgroup_subsys_state *subsys[4];
refcount_t refcount;
struct css_set *dom_cset;
struct cgroup *dfl_cgrp;
int nr_tasks;
struct list_head tasks;
struct list_head mg_tasks;
struct list_head dying_tasks;
struct list_head task_iters;
struct list_head e_cset_node[4];
struct list_head threaded_csets;
struct list_head threaded_csets_node;
struct hlist_node hlist;
struct list_head cgrp_links;
struct list_head mg_preload_node;
struct list_head mg_node;
struct cgroup *mg_src_cgrp;
struct cgroup *mg_dst_cgrp;
struct css_set *mg_dst_cset;
bool dead;
struct callback_head callback_head;
};
struct perf_event_groups {
struct rb_root tree;
u64 index;
};
struct perf_event_context {
struct pmu *pmu;
raw_spinlock_t lock;
struct mutex mutex;
struct list_head active_ctx_list;
struct perf_event_groups pinned_groups;
struct perf_event_groups flexible_groups;
struct list_head event_list;
struct list_head pinned_active;
struct list_head flexible_active;
int nr_events;
int nr_active;
int is_active;
int nr_stat;
int nr_freq;
int rotate_disable;
int rotate_necessary;
refcount_t refcount;
struct task_struct *task;
u64 time;
u64 timestamp;
struct perf_event_context *parent_ctx;
u64 parent_gen;
u64 generation;
int pin_count;
void *task_ctx_data;
struct callback_head callback_head;
};
struct task_delay_info {
raw_spinlock_t lock;
unsigned int flags;
u64 blkio_start;
u64 blkio_delay;
u64 swapin_delay;
u32 blkio_count;
u32 swapin_count;
u64 freepages_start;
u64 freepages_delay;
u64 thrashing_start;
u64 thrashing_delay;
u32 freepages_count;
u32 thrashing_count;
};
struct cgroup_subsys;
struct cgroup_subsys_state {
struct cgroup *cgroup;
struct cgroup_subsys *ss;
struct percpu_ref refcnt;
struct list_head sibling;
struct list_head children;
struct list_head rstat_css_node;
int id;
unsigned int flags;
u64 serial_nr;
atomic_t online_cnt;
struct work_struct destroy_work;
struct rcu_work destroy_rwork;
struct cgroup_subsys_state *parent;
};
struct cgroup_file {
struct kernfs_node *kn;
long unsigned int notified_at;
struct timer_list notify_timer;
};
struct cgroup_base_stat {
struct task_cputime cputime;
};
struct psi_group {};
struct cgroup_bpf {
struct bpf_prog_array *effective[34];
struct list_head progs[34];
u32 flags[34];
struct bpf_prog_array *inactive;
struct percpu_ref refcnt;
struct work_struct release_work;
};
struct cgroup_freezer_state {
bool freeze;
int e_freeze;
int nr_frozen_descendants;
int nr_frozen_tasks;
};
struct cgroup_root;
struct cgroup_rstat_cpu;
struct cgroup {
struct cgroup_subsys_state self;
long unsigned int flags;
int level;
int max_depth;
int nr_descendants;
int nr_dying_descendants;
int max_descendants;
int nr_populated_csets;
int nr_populated_domain_children;
int nr_populated_threaded_children;
int nr_threaded_children;
struct kernfs_node *kn;
struct cgroup_file procs_file;
struct cgroup_file events_file;
u16 subtree_control;
u16 subtree_ss_mask;
u16 old_subtree_control;
u16 old_subtree_ss_mask;
struct cgroup_subsys_state *subsys[4];
struct cgroup_root *root;
struct list_head cset_links;
struct list_head e_csets[4];
struct cgroup *dom_cgrp;
struct cgroup *old_dom_cgrp;
struct cgroup_rstat_cpu *rstat_cpu;
struct list_head rstat_css_list;
struct cgroup_base_stat last_bstat;
struct cgroup_base_stat bstat;
struct prev_cputime prev_cputime;
struct list_head pidlists;
struct mutex pidlist_mutex;
wait_queue_head_t offline_waitq;
struct work_struct release_agent_work;
struct psi_group psi;
struct cgroup_bpf bpf;
atomic_t congestion_count;
struct cgroup_freezer_state freezer;
u64 ancestor_ids[0];
};
struct taskstats {
__u16 version;
__u32 ac_exitcode;
__u8 ac_flag;
__u8 ac_nice;
__u64 cpu_count;
__u64 cpu_delay_total;
__u64 blkio_count;
__u64 blkio_delay_total;
__u64 swapin_count;
__u64 swapin_delay_total;
__u64 cpu_run_real_total;
__u64 cpu_run_virtual_total;
char ac_comm[32];
__u8 ac_sched;
__u8 ac_pad[3];
int: 32;
__u32 ac_uid;
__u32 ac_gid;
__u32 ac_pid;
__u32 ac_ppid;
__u32 ac_btime;
__u64 ac_etime;
__u64 ac_utime;
__u64 ac_stime;
__u64 ac_minflt;
__u64 ac_majflt;
__u64 coremem;
__u64 virtmem;
__u64 hiwater_rss;
__u64 hiwater_vm;
__u64 read_char;
__u64 write_char;
__u64 read_syscalls;
__u64 write_syscalls;
__u64 read_bytes;
__u64 write_bytes;
__u64 cancelled_write_bytes;
__u64 nvcsw;
__u64 nivcsw;
__u64 ac_utimescaled;
__u64 ac_stimescaled;
__u64 cpu_scaled_run_real_total;
__u64 freepages_count;
__u64 freepages_delay_total;
__u64 thrashing_count;
__u64 thrashing_delay_total;
__u64 ac_btime64;
};
typedef unsigned int blk_qc_t;
typedef blk_qc_t make_request_fn(struct request_queue *, struct bio *);
struct blk_rq_stat {
u64 mean;
u64 min;
u64 max;
u32 nr_samples;
u64 batch;
};
enum blk_zoned_model {
BLK_ZONED_NONE = 0,
BLK_ZONED_HA = 1,
BLK_ZONED_HM = 2,
};
struct queue_limits {
long unsigned int bounce_pfn;
long unsigned int seg_boundary_mask;
long unsigned int virt_boundary_mask;
unsigned int max_hw_sectors;
unsigned int max_dev_sectors;
unsigned int chunk_sectors;
unsigned int max_sectors;
unsigned int max_segment_size;
unsigned int physical_block_size;
unsigned int logical_block_size;
unsigned int alignment_offset;
unsigned int io_min;
unsigned int io_opt;
unsigned int max_discard_sectors;
unsigned int max_hw_discard_sectors;
unsigned int max_write_same_sectors;
unsigned int max_write_zeroes_sectors;
unsigned int max_zone_append_sectors;
unsigned int discard_granularity;
unsigned int discard_alignment;
short unsigned int max_segments;
short unsigned int max_integrity_segments;
short unsigned int max_discard_segments;
unsigned char misaligned;
unsigned char discard_misaligned;
unsigned char raid_partial_stripes_expensive;
enum blk_zoned_model zoned;
};
struct bsg_ops;
struct bsg_class_device {
struct device *class_dev;
int minor;
struct request_queue *queue;
const struct bsg_ops *ops;
};
typedef void *mempool_alloc_t(gfp_t, void *);
typedef void mempool_free_t(void *, void *);
struct mempool_s {
spinlock_t lock;
int min_nr;
int curr_nr;
void **elements;
void *pool_data;
mempool_alloc_t *alloc;
mempool_free_t *free;
wait_queue_head_t wait;
};
typedef struct mempool_s mempool_t;
struct bio_set {
struct kmem_cache *bio_slab;
unsigned int front_pad;
mempool_t bio_pool;
mempool_t bvec_pool;
spinlock_t rescue_lock;
struct bio_list rescue_list;
struct work_struct rescue_work;
struct workqueue_struct *rescue_workqueue;
};
struct request;
struct elevator_queue;
struct blk_queue_stats;
struct rq_qos;
struct blk_mq_ops;
struct blk_mq_ctx;
struct blk_mq_hw_ctx;
struct blk_stat_callback;
struct blk_trace;
struct blk_flush_queue;
struct blk_mq_tag_set;
struct request_queue {
struct request *last_merge;
struct elevator_queue *elevator;
struct blk_queue_stats *stats;
struct rq_qos *rq_qos;
make_request_fn *make_request_fn;
const struct blk_mq_ops *mq_ops;
struct blk_mq_ctx *queue_ctx;
unsigned int queue_depth;
struct blk_mq_hw_ctx **queue_hw_ctx;
unsigned int nr_hw_queues;
struct backing_dev_info *backing_dev_info;
void *queuedata;
long unsigned int queue_flags;
atomic_t pm_only;
int id;
gfp_t bounce_gfp;
spinlock_t queue_lock;
struct kobject kobj;
struct kobject *mq_kobj;
struct device *dev;
int rpm_status;
unsigned int nr_pending;
long unsigned int nr_requests;
unsigned int dma_pad_mask;
unsigned int dma_alignment;
unsigned int rq_timeout;
int poll_nsec;
struct blk_stat_callback *poll_cb;
struct blk_rq_stat poll_stat[16];
struct timer_list timeout;
struct work_struct timeout_work;
struct list_head icq_list;
struct queue_limits limits;
unsigned int required_elevator_features;
unsigned int sg_timeout;
unsigned int sg_reserved_size;
int node;
struct blk_trace *blk_trace;
struct mutex blk_trace_mutex;
struct blk_flush_queue *fq;
struct list_head requeue_list;
spinlock_t requeue_lock;
struct delayed_work requeue_work;
struct mutex sysfs_lock;
struct mutex sysfs_dir_lock;
struct list_head unused_hctx_list;
spinlock_t unused_hctx_lock;
int mq_freeze_depth;
struct bsg_class_device bsg_dev;
struct callback_head callback_head;
wait_queue_head_t mq_freeze_wq;
struct mutex mq_freeze_lock;
struct percpu_ref q_usage_counter;
struct blk_mq_tag_set *tag_set;
struct list_head tag_set_list;
struct bio_set bio_split;
struct dentry *debugfs_dir;
struct dentry *sched_debugfs_dir;
struct dentry *rqos_debugfs_dir;
bool mq_sysfs_init_done;
size_t cmd_size;
struct work_struct release_work;
u64 write_hints[5];
};
enum writeback_sync_modes {
WB_SYNC_NONE = 0,
WB_SYNC_ALL = 1,
};
struct writeback_control {
long int nr_to_write;
long int pages_skipped;
loff_t range_start;
loff_t range_end;
enum writeback_sync_modes sync_mode;
unsigned int for_kupdate: 1;
unsigned int for_background: 1;
unsigned int tagged_writepages: 1;
unsigned int for_reclaim: 1;
unsigned int range_cyclic: 1;
unsigned int for_sync: 1;
unsigned int no_cgroup_owner: 1;
unsigned int punt_to_cgroup: 1;
};
struct readahead_control {
struct file *file;
struct address_space *mapping;
long unsigned int _index;
unsigned int _nr_pages;
unsigned int _batch_count;
};
struct swap_cluster_info {
spinlock_t lock;
unsigned int data: 24;
unsigned int flags: 8;
};
struct swap_cluster_list {
struct swap_cluster_info head;
struct swap_cluster_info tail;
};
struct percpu_cluster;
struct swap_info_struct {
long unsigned int flags;
short int prio;
struct plist_node list;
signed char type;
unsigned int max;
unsigned char *swap_map;
struct swap_cluster_info *cluster_info;
struct swap_cluster_list free_clusters;
unsigned int lowest_bit;
unsigned int highest_bit;
unsigned int pages;
unsigned int inuse_pages;
unsigned int cluster_next;
unsigned int cluster_nr;
unsigned int *cluster_next_cpu;
struct percpu_cluster *percpu_cluster;
struct rb_root swap_extent_root;
struct block_device *bdev;
struct file *swap_file;
unsigned int old_block_size;
spinlock_t lock;
spinlock_t cont_lock;
struct work_struct discard_work;
struct swap_cluster_list discard_clusters;
struct plist_node avail_lists[0];
};
struct disk_stats;
struct partition_meta_info;
struct hd_struct {
sector_t start_sect;
sector_t nr_sects;
long unsigned int stamp;
struct disk_stats *dkstats;
struct percpu_ref ref;
sector_t alignment_offset;
unsigned int discard_alignment;
struct device __dev;
struct kobject *holder_dir;
int policy;
int partno;
struct partition_meta_info *info;
struct rcu_work rcu_work;
};
struct disk_part_tbl;
struct block_device_operations;
struct timer_rand_state;
struct disk_events;
struct cdrom_device_info;
struct badblocks;
struct gendisk {
int major;
int first_minor;
int minors;
char disk_name[32];
short unsigned int events;
short unsigned int event_flags;
struct disk_part_tbl *part_tbl;
struct hd_struct part0;
const struct block_device_operations *fops;
struct request_queue *queue;
void *private_data;
int flags;
struct rw_semaphore lookup_sem;
struct kobject *slave_dir;
struct timer_rand_state *random;
atomic_t sync_io;
struct disk_events *ev;
struct cdrom_device_info *cdi;
int node_id;
struct badblocks *bb;
struct lockdep_map lockdep_map;
};
struct cdev {
struct kobject kobj;
struct module *owner;
const struct file_operations *ops;
struct list_head list;
dev_t dev;
unsigned int count;
};
struct fc_log;
struct p_log {
const char *prefix;
struct fc_log *log;
};
enum fs_context_purpose {
FS_CONTEXT_FOR_MOUNT = 0,
FS_CONTEXT_FOR_SUBMOUNT = 1,
FS_CONTEXT_FOR_RECONFIGURE = 2,
};
enum fs_context_phase {
FS_CONTEXT_CREATE_PARAMS = 0,
FS_CONTEXT_CREATING = 1,
FS_CONTEXT_AWAITING_MOUNT = 2,
FS_CONTEXT_AWAITING_RECONF = 3,
FS_CONTEXT_RECONF_PARAMS = 4,
FS_CONTEXT_RECONFIGURING = 5,
FS_CONTEXT_FAILED = 6,
};
struct fs_context_operations;
struct fs_context {
const struct fs_context_operations *ops;
struct mutex uapi_mutex;
struct file_system_type *fs_type;
void *fs_private;
void *sget_key;
struct dentry *root;
struct user_namespace *user_ns;
struct net *net_ns;
const struct cred *cred;
struct p_log log;
const char *source;
void *security;
void *s_fs_info;
unsigned int sb_flags;
unsigned int sb_flags_mask;
unsigned int s_iflags;
unsigned int lsm_flags;
enum fs_context_purpose purpose: 8;
enum fs_context_phase phase: 8;
bool need_free: 1;
bool global: 1;
bool oldapi: 1;
};
struct audit_names;
struct filename {
const char *name;
const char *uptr;
int refcnt;
struct audit_names *aname;
const char iname[0];
};
typedef u8 blk_status_t;
struct bvec_iter {
sector_t bi_sector;
unsigned int bi_size;
unsigned int bi_idx;
unsigned int bi_bvec_done;
};
typedef void bio_end_io_t(struct bio *);
struct bio_vec {
struct page *bv_page;
unsigned int bv_len;
unsigned int bv_offset;
};
struct bio {
struct bio *bi_next;
struct gendisk *bi_disk;
unsigned int bi_opf;
short unsigned int bi_flags;
short unsigned int bi_ioprio;
short unsigned int bi_write_hint;
blk_status_t bi_status;
u8 bi_partno;
atomic_t __bi_remaining;
struct bvec_iter bi_iter;
bio_end_io_t *bi_end_io;
void *bi_private;
union { };
short unsigned int bi_vcnt;
short unsigned int bi_max_vecs;
atomic_t __bi_cnt;
struct bio_vec *bi_io_vec;
struct bio_set *bi_pool;
struct bio_vec bi_inline_vecs[0];
};
struct linux_binprm {
struct vm_area_struct *vma;
long unsigned int vma_pages;
struct mm_struct *mm;
long unsigned int p;
long unsigned int argmin;
unsigned int have_execfd: 1;
unsigned int execfd_creds: 1;
unsigned int secureexec: 1;
unsigned int point_of_no_return: 1;
struct file *executable;
struct file *interpreter;
struct file *file;
struct cred *cred;
int unsafe;
unsigned int per_clear;
int argc;
int envc;
const char *filename;
const char *interp;
unsigned int interp_flags;
int execfd;
long unsigned int loader;
long unsigned int exec;
struct rlimit rlim_stack;
char buf[256];
};
struct coredump_params {
const kernel_siginfo_t *siginfo;
struct pt_regs *regs;
struct file *file;
long unsigned int limit;
long unsigned int mm_flags;
loff_t written;
loff_t pos;
};
struct ring_buffer_event {
u32 type_len: 5;
u32 time_delta: 27;
u32 array[0];
};
struct seq_buf {
char *buffer;
size_t size;
size_t len;
loff_t readpos;
};
struct trace_seq {
unsigned char buffer[4096];
struct seq_buf seq;
int full;
};
enum perf_sw_ids {
PERF_COUNT_SW_CPU_CLOCK = 0,
PERF_COUNT_SW_TASK_CLOCK = 1,
PERF_COUNT_SW_PAGE_FAULTS = 2,
PERF_COUNT_SW_CONTEXT_SWITCHES = 3,
PERF_COUNT_SW_CPU_MIGRATIONS = 4,
PERF_COUNT_SW_PAGE_FAULTS_MIN = 5,
PERF_COUNT_SW_PAGE_FAULTS_MAJ = 6,
PERF_COUNT_SW_ALIGNMENT_FAULTS = 7,
PERF_COUNT_SW_EMULATION_FAULTS = 8,
PERF_COUNT_SW_DUMMY = 9,
PERF_COUNT_SW_BPF_OUTPUT = 10,
PERF_COUNT_SW_MAX = 11,
};
union perf_mem_data_src {
__u64 val;
struct {
__u64 mem_op: 5;
__u64 mem_lvl: 14;
__u64 mem_snoop: 5;
__u64 mem_lock: 2;
__u64 mem_dtlb: 7;
__u64 mem_lvl_num: 4;
__u64 mem_remote: 1;
__u64 mem_snoopx: 2;
__u64 mem_rsvd: 24;
};
};
struct perf_branch_entry {
__u64 from;
__u64 to;
__u64 mispred: 1;
__u64 predicted: 1;
__u64 in_tx: 1;
__u64 abort: 1;
__u64 cycles: 16;
__u64 type: 4;
__u64 reserved: 40;
};
struct new_utsname {
char sysname[65];
char nodename[65];
char release[65];
char version[65];
char machine[65];
char domainname[65];
};
struct uts_namespace {
struct kref kref;
struct new_utsname name;
struct user_namespace *user_ns;
struct ucounts *ucounts;
struct ns_common ns;
};
struct cgroup_namespace {
refcount_t count;
struct ns_common ns;
struct user_namespace *user_ns;
struct ucounts *ucounts;
struct css_set *root_cset;
};
struct nsset {
unsigned int flags;
struct nsproxy *nsproxy;
struct fs_struct *fs;
const struct cred *cred;
};
struct proc_ns_operations {
const char *name;
const char *real_ns_name;
int type;
struct ns_common * (*get)(struct task_struct *);
void (*put)(struct ns_common *);
int (*install)(struct nsset *, struct ns_common *);
struct user_namespace * (*owner)(struct ns_common *);
struct ns_common * (*get_parent)(struct ns_common *);
};
struct ucounts {
struct hlist_node node;
struct user_namespace *ns;
kuid_t uid;
int count;
atomic_t ucount[10];
};
struct perf_guest_info_callbacks {
int (*is_in_guest)();
int (*is_user_mode)();
long unsigned int (*get_guest_ip)();
void (*handle_intel_pt_intr)();
};
struct perf_cpu_context;
struct perf_output_handle;
struct pmu {
struct list_head entry;
struct module *module;
struct device *dev;
const struct attribute_group **attr_groups;
const struct attribute_group **attr_update;
const char *name;
int type;
int capabilities;
int *pmu_disable_count;
struct perf_cpu_context *pmu_cpu_context;
atomic_t exclusive_cnt;
int task_ctx_nr;
int hrtimer_interval_ms;
unsigned int nr_addr_filters;
void (*pmu_enable)(struct pmu *);
void (*pmu_disable)(struct pmu *);
int (*event_init)(struct perf_event *);
void (*event_mapped)(struct perf_event *, struct mm_struct *);
void (*event_unmapped)(struct perf_event *, struct mm_struct *);
int (*add)(struct perf_event *, int);
void (*del)(struct perf_event *, int);
void (*start)(struct perf_event *, int);
void (*stop)(struct perf_event *, int);
void (*read)(struct perf_event *);
void (*start_txn)(struct pmu *, unsigned int);
int (*commit_txn)(struct pmu *);
void (*cancel_txn)(struct pmu *);
int (*event_idx)(struct perf_event *);
void (*sched_task)(struct perf_event_context *, bool);
size_t task_ctx_size;
void (*swap_task_ctx)(struct perf_event_context *, struct perf_event_context *);
void * (*setup_aux)(struct perf_event *, void **, int, bool);
void (*free_aux)(void *);
long int (*snapshot_aux)(struct perf_event *, struct perf_output_handle *, long unsigned int);
int (*addr_filters_validate)(struct list_head *);
void (*addr_filters_sync)(struct perf_event *);
int (*aux_output_match)(struct perf_event *);
int (*filter_match)(struct perf_event *);
int (*check_period)(struct perf_event *, u64);
};
enum irq_domain_bus_token {
DOMAIN_BUS_ANY = 0,
DOMAIN_BUS_WIRED = 1,
DOMAIN_BUS_GENERIC_MSI = 2,
DOMAIN_BUS_PCI_MSI = 3,
DOMAIN_BUS_PLATFORM_MSI = 4,
DOMAIN_BUS_NEXUS = 5,
DOMAIN_BUS_IPI = 6,
DOMAIN_BUS_FSL_MC_MSI = 7,
DOMAIN_BUS_TI_SCI_INTA_MSI = 8,
DOMAIN_BUS_WAKEUP = 9,
};
struct irq_domain_ops;
struct irq_domain_chip_generic;
struct irq_domain {
struct list_head link;
const char *name;
const struct irq_domain_ops *ops;
void *host_data;
unsigned int flags;
unsigned int mapcount;
struct fwnode_handle *fwnode;
enum irq_domain_bus_token bus_token;
struct irq_domain_chip_generic *gc;
struct irq_domain *parent;
irq_hw_number_t hwirq_max;
unsigned int revmap_direct_max_irq;
unsigned int revmap_size;
struct xarray revmap_tree;
struct mutex revmap_tree_mutex;
unsigned int linear_revmap[0];
};
typedef u32 phandle;
struct property;
struct device_node {
const char *name;
phandle phandle;
const char *full_name;
struct fwnode_handle fwnode;
struct property *properties;
struct property *deadprops;
struct device_node *parent;
struct device_node *child;
struct device_node *sibling;
long unsigned int _flags;
void *data;
};
enum cpuhp_state {
CPUHP_INVALID = 4294967295,
CPUHP_OFFLINE = 0,
CPUHP_CREATE_THREADS = 1,
CPUHP_PERF_PREPARE = 2,
CPUHP_PERF_X86_PREPARE = 3,
CPUHP_PERF_X86_AMD_UNCORE_PREP = 4,
CPUHP_PERF_POWER = 5,
CPUHP_PERF_SUPERH = 6,
CPUHP_X86_HPET_DEAD = 7,
CPUHP_X86_APB_DEAD = 8,
CPUHP_X86_MCE_DEAD = 9,
CPUHP_VIRT_NET_DEAD = 10,
CPUHP_SLUB_DEAD = 11,
CPUHP_MM_WRITEBACK_DEAD = 12,
CPUHP_MM_VMSTAT_DEAD = 13,
CPUHP_SOFTIRQ_DEAD = 14,
CPUHP_NET_MVNETA_DEAD = 15,
CPUHP_CPUIDLE_DEAD = 16,
CPUHP_ARM64_FPSIMD_DEAD = 17,
CPUHP_ARM_OMAP_WAKE_DEAD = 18,
CPUHP_IRQ_POLL_DEAD = 19,
CPUHP_BLOCK_SOFTIRQ_DEAD = 20,
CPUHP_ACPI_CPUDRV_DEAD = 21,
CPUHP_S390_PFAULT_DEAD = 22,
CPUHP_BLK_MQ_DEAD = 23,
CPUHP_FS_BUFF_DEAD = 24,
CPUHP_PRINTK_DEAD = 25,
CPUHP_MM_MEMCQ_DEAD = 26,
CPUHP_PERCPU_CNT_DEAD = 27,
CPUHP_RADIX_DEAD = 28,
CPUHP_PAGE_ALLOC_DEAD = 29,
CPUHP_NET_DEV_DEAD = 30,
CPUHP_PCI_XGENE_DEAD = 31,
CPUHP_IOMMU_INTEL_DEAD = 32,
CPUHP_LUSTRE_CFS_DEAD = 33,
CPUHP_AP_ARM_CACHE_B15_RAC_DEAD = 34,
CPUHP_PADATA_DEAD = 35,
CPUHP_WORKQUEUE_PREP = 36,
CPUHP_POWER_NUMA_PREPARE = 37,
CPUHP_HRTIMERS_PREPARE = 38,
CPUHP_PROFILE_PREPARE = 39,
CPUHP_X2APIC_PREPARE = 40,
CPUHP_SMPCFD_PREPARE = 41,
CPUHP_RELAY_PREPARE = 42,
CPUHP_SLAB_PREPARE = 43,
CPUHP_MD_RAID5_PREPARE = 44,
CPUHP_RCUTREE_PREP = 45,
CPUHP_CPUIDLE_COUPLED_PREPARE = 46,
CPUHP_POWERPC_PMAC_PREPARE = 47,
CPUHP_POWERPC_MMU_CTX_PREPARE = 48,
CPUHP_XEN_PREPARE = 49,
CPUHP_XEN_EVTCHN_PREPARE = 50,
CPUHP_ARM_SHMOBILE_SCU_PREPARE = 51,
CPUHP_SH_SH3X_PREPARE = 52,
CPUHP_NET_FLOW_PREPARE = 53,
CPUHP_TOPOLOGY_PREPARE = 54,
CPUHP_NET_IUCV_PREPARE = 55,
CPUHP_ARM_BL_PREPARE = 56,
CPUHP_TRACE_RB_PREPARE = 57,
CPUHP_MM_ZS_PREPARE = 58,
CPUHP_MM_ZSWP_MEM_PREPARE = 59,
CPUHP_MM_ZSWP_POOL_PREPARE = 60,
CPUHP_KVM_PPC_BOOK3S_PREPARE = 61,
CPUHP_ZCOMP_PREPARE = 62,
CPUHP_TIMERS_PREPARE = 63,
CPUHP_MIPS_SOC_PREPARE = 64,
CPUHP_BP_PREPARE_DYN = 65,
CPUHP_BP_PREPARE_DYN_END = 85,
CPUHP_BRINGUP_CPU = 86,
CPUHP_AP_IDLE_DEAD = 87,
CPUHP_AP_OFFLINE = 88,
CPUHP_AP_SCHED_STARTING = 89,
CPUHP_AP_RCUTREE_DYING = 90,
CPUHP_AP_CPU_PM_STARTING = 91,
CPUHP_AP_IRQ_GIC_STARTING = 92,
CPUHP_AP_IRQ_HIP04_STARTING = 93,
CPUHP_AP_IRQ_ARMADA_XP_STARTING = 94,
CPUHP_AP_IRQ_BCM2836_STARTING = 95,
CPUHP_AP_IRQ_MIPS_GIC_STARTING = 96,
CPUHP_AP_IRQ_RISCV_STARTING = 97,
CPUHP_AP_IRQ_SIFIVE_PLIC_STARTING = 98,
CPUHP_AP_ARM_MVEBU_COHERENCY = 99,
CPUHP_AP_MICROCODE_LOADER = 100,
CPUHP_AP_PERF_X86_AMD_UNCORE_STARTING = 101,
CPUHP_AP_PERF_X86_STARTING = 102,
CPUHP_AP_PERF_X86_AMD_IBS_STARTING = 103,
CPUHP_AP_PERF_X86_CQM_STARTING = 104,
CPUHP_AP_PERF_X86_CSTATE_STARTING = 105,
CPUHP_AP_PERF_XTENSA_STARTING = 106,
CPUHP_AP_MIPS_OP_LOONGSON3_STARTING = 107,
CPUHP_AP_ARM_SDEI_STARTING = 108,
CPUHP_AP_ARM_VFP_STARTING = 109,
CPUHP_AP_ARM64_DEBUG_MONITORS_STARTING = 110,
CPUHP_AP_PERF_ARM_HW_BREAKPOINT_STARTING = 111,
CPUHP_AP_PERF_ARM_ACPI_STARTING = 112,
CPUHP_AP_PERF_ARM_STARTING = 113,
CPUHP_AP_ARM_L2X0_STARTING = 114,
CPUHP_AP_EXYNOS4_MCT_TIMER_STARTING = 115,
CPUHP_AP_ARM_ARCH_TIMER_STARTING = 116,
CPUHP_AP_ARM_GLOBAL_TIMER_STARTING = 117,
CPUHP_AP_JCORE_TIMER_STARTING = 118,
CPUHP_AP_ARM_TWD_STARTING = 119,
CPUHP_AP_QCOM_TIMER_STARTING = 120,
CPUHP_AP_TEGRA_TIMER_STARTING = 121,
CPUHP_AP_ARMADA_TIMER_STARTING = 122,
CPUHP_AP_MARCO_TIMER_STARTING = 123,
CPUHP_AP_MIPS_GIC_TIMER_STARTING = 124,
CPUHP_AP_ARC_TIMER_STARTING = 125,
CPUHP_AP_RISCV_TIMER_STARTING = 126,
CPUHP_AP_CSKY_TIMER_STARTING = 127,
CPUHP_AP_HYPERV_TIMER_STARTING = 128,
CPUHP_AP_KVM_STARTING = 129,
CPUHP_AP_KVM_ARM_VGIC_INIT_STARTING = 130,
CPUHP_AP_KVM_ARM_VGIC_STARTING = 131,
CPUHP_AP_KVM_ARM_TIMER_STARTING = 132,
CPUHP_AP_DUMMY_TIMER_STARTING = 133,
CPUHP_AP_ARM_XEN_STARTING = 134,
CPUHP_AP_ARM_KVMPV_STARTING = 135,
CPUHP_AP_ARM_CORESIGHT_STARTING = 136,
CPUHP_AP_ARM_CORESIGHT_CTI_STARTING = 137,
CPUHP_AP_ARM64_ISNDEP_STARTING = 138,
CPUHP_AP_SMPCFD_DYING = 139,
CPUHP_AP_X86_TBOOT_DYING = 140,
CPUHP_AP_ARM_CACHE_B15_RAC_DYING = 141,
CPUHP_AP_ONLINE = 142,
CPUHP_TEARDOWN_CPU = 143,
CPUHP_AP_ONLINE_IDLE = 144,
CPUHP_AP_SMPBOOT_THREADS = 145,
CPUHP_AP_X86_VDSO_VMA_ONLINE = 146,
CPUHP_AP_IRQ_AFFINITY_ONLINE = 147,
CPUHP_AP_BLK_MQ_ONLINE = 148,
CPUHP_AP_ARM_MVEBU_SYNC_CLOCKS = 149,
CPUHP_AP_X86_INTEL_EPB_ONLINE = 150,
CPUHP_AP_PERF_ONLINE = 151,
CPUHP_AP_PERF_X86_ONLINE = 152,
CPUHP_AP_PERF_X86_UNCORE_ONLINE = 153,
CPUHP_AP_PERF_X86_AMD_UNCORE_ONLINE = 154,
CPUHP_AP_PERF_X86_AMD_POWER_ONLINE = 155,
CPUHP_AP_PERF_X86_RAPL_ONLINE = 156,
CPUHP_AP_PERF_X86_CQM_ONLINE = 157,
CPUHP_AP_PERF_X86_CSTATE_ONLINE = 158,
CPUHP_AP_PERF_S390_CF_ONLINE = 159,
CPUHP_AP_PERF_S390_SF_ONLINE = 160,
CPUHP_AP_PERF_ARM_CCI_ONLINE = 161,
CPUHP_AP_PERF_ARM_CCN_ONLINE = 162,
CPUHP_AP_PERF_ARM_HISI_DDRC_ONLINE = 163,
CPUHP_AP_PERF_ARM_HISI_HHA_ONLINE = 164,
CPUHP_AP_PERF_ARM_HISI_L3_ONLINE = 165,
CPUHP_AP_PERF_ARM_L2X0_ONLINE = 166,
CPUHP_AP_PERF_ARM_QCOM_L2_ONLINE = 167,
CPUHP_AP_PERF_ARM_QCOM_L3_ONLINE = 168,
CPUHP_AP_PERF_ARM_APM_XGENE_ONLINE = 169,
CPUHP_AP_PERF_ARM_CAVIUM_TX2_UNCORE_ONLINE = 170,
CPUHP_AP_PERF_POWERPC_NEST_IMC_ONLINE = 171,
CPUHP_AP_PERF_POWERPC_CORE_IMC_ONLINE = 172,
CPUHP_AP_PERF_POWERPC_THREAD_IMC_ONLINE = 173,
CPUHP_AP_PERF_POWERPC_TRACE_IMC_ONLINE = 174,
CPUHP_AP_WATCHDOG_ONLINE = 175,
CPUHP_AP_WORKQUEUE_ONLINE = 176,
CPUHP_AP_RCUTREE_ONLINE = 177,
CPUHP_AP_BASE_CACHEINFO_ONLINE = 178,
CPUHP_AP_ONLINE_DYN = 179,
CPUHP_AP_ONLINE_DYN_END = 209,
CPUHP_AP_X86_HPET_ONLINE = 210,
CPUHP_AP_X86_KVM_CLK_ONLINE = 211,
CPUHP_AP_ACTIVE = 212,
CPUHP_ONLINE = 213,
};
struct perf_regs {
__u64 abi;
struct pt_regs *regs;
};
struct kernel_cpustat {
u64 cpustat[10];
};
struct kernel_stat {
long unsigned int irqs_sum;
unsigned int softirqs[10];
};
struct u64_stats_sync {};
struct bpf_insn {
__u8 code;
__u8 dst_reg: 4;
__u8 src_reg: 4;
__s16 off;
__s32 imm;
};
struct bpf_cgroup_storage_key {
__u64 cgroup_inode_id;
__u32 attach_type;
};
enum bpf_map_type {
BPF_MAP_TYPE_UNSPEC = 0,
BPF_MAP_TYPE_HASH = 1,
BPF_MAP_TYPE_ARRAY = 2,
BPF_MAP_TYPE_PROG_ARRAY = 3,
BPF_MAP_TYPE_PERF_EVENT_ARRAY = 4,
BPF_MAP_TYPE_PERCPU_HASH = 5,
BPF_MAP_TYPE_PERCPU_ARRAY = 6,
BPF_MAP_TYPE_STACK_TRACE = 7,
BPF_MAP_TYPE_CGROUP_ARRAY = 8,
BPF_MAP_TYPE_LRU_HASH = 9,
BPF_MAP_TYPE_LRU_PERCPU_HASH = 10,
BPF_MAP_TYPE_LPM_TRIE = 11,
BPF_MAP_TYPE_ARRAY_OF_MAPS = 12,
BPF_MAP_TYPE_HASH_OF_MAPS = 13,
BPF_MAP_TYPE_DEVMAP = 14,
BPF_MAP_TYPE_SOCKMAP = 15,
BPF_MAP_TYPE_CPUMAP = 16,
BPF_MAP_TYPE_XSKMAP = 17,
BPF_MAP_TYPE_SOCKHASH = 18,
BPF_MAP_TYPE_CGROUP_STORAGE = 19,
BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 20,
BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 21,
BPF_MAP_TYPE_QUEUE = 22,
BPF_MAP_TYPE_STACK = 23,
BPF_MAP_TYPE_SK_STORAGE = 24,
BPF_MAP_TYPE_DEVMAP_HASH = 2
gitextract_i041z4ml/
├── .gitignore
├── .gitmodules
├── LICENSE
├── README.md
└── src/
├── Makefile
├── bin/
│ └── .gitkeep
├── knockles.bpf.c
├── knockles.c
├── knockles_event.h
├── knuckknock.py
└── vmlinux.h
Showing preview only (996K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (15067 symbols across 4 files)
FILE: src/knockles.bpf.c
type netif_receive_skb_format (line 20) | struct netif_receive_skb_format{
function trace_net_netif_receive_skb (line 27) | int trace_net_netif_receive_skb(struct netif_receive_skb_format *ctx){
FILE: src/knockles.c
function sig_int (line 32) | void sig_int(int signo){
function libbpf_print_fn (line 40) | static int libbpf_print_fn(enum libbpf_print_level level, const char *fo...
function hmac_cmp (line 48) | static uint16_t hmac_cmp(event_t *e){
function sock_handler (line 88) | static int sock_handler(uint16_t port){
function handle_event_dbg (line 126) | static int handle_event_dbg(void *ctx, void *data, size_t data_sz){
function handle_event (line 153) | static int handle_event(void *ctx, void *data, size_t data_sz){
function start_daemon (line 167) | static void start_daemon(void){
function main (line 193) | int main(int argc, char *argv[]){
FILE: src/knockles_event.h
type event_t (line 8) | typedef struct _event_t{
FILE: src/vmlinux.h
type __s8 (line 8) | typedef signed char __s8;
type __u8 (line 10) | typedef unsigned char __u8;
type __s16 (line 12) | typedef short int __s16;
type __u16 (line 14) | typedef short unsigned int __u16;
type __s32 (line 16) | typedef int __s32;
type __u32 (line 18) | typedef unsigned int __u32;
type __s64 (line 20) | typedef long long int __s64;
type __u64 (line 22) | typedef long long unsigned int __u64;
type __s8 (line 24) | typedef __s8 s8;
type __u8 (line 26) | typedef __u8 u8;
type __s16 (line 28) | typedef __s16 s16;
type __u16 (line 30) | typedef __u16 u16;
type __s32 (line 32) | typedef __s32 s32;
type __u32 (line 34) | typedef __u32 u32;
type __s64 (line 36) | typedef __s64 s64;
type __u64 (line 38) | typedef __u64 u64;
type __kernel_long_t (line 45) | typedef long int __kernel_long_t;
type __kernel_ulong_t (line 47) | typedef long unsigned int __kernel_ulong_t;
type __kernel_pid_t (line 49) | typedef int __kernel_pid_t;
type __kernel_uid32_t (line 51) | typedef unsigned int __kernel_uid32_t;
type __kernel_gid32_t (line 53) | typedef unsigned int __kernel_gid32_t;
type __kernel_ulong_t (line 55) | typedef __kernel_ulong_t __kernel_size_t;
type __kernel_long_t (line 57) | typedef __kernel_long_t __kernel_ssize_t;
type __kernel_loff_t (line 59) | typedef long long int __kernel_loff_t;
type __kernel_time64_t (line 61) | typedef long long int __kernel_time64_t;
type __kernel_long_t (line 63) | typedef __kernel_long_t __kernel_clock_t;
type __kernel_timer_t (line 65) | typedef int __kernel_timer_t;
type __kernel_clockid_t (line 67) | typedef int __kernel_clockid_t;
type __poll_t (line 69) | typedef unsigned int __poll_t;
type u32 (line 71) | typedef u32 __kernel_dev_t;
type __kernel_dev_t (line 73) | typedef __kernel_dev_t dev_t;
type umode_t (line 75) | typedef short unsigned int umode_t;
type __kernel_pid_t (line 77) | typedef __kernel_pid_t pid_t;
type __kernel_clockid_t (line 79) | typedef __kernel_clockid_t clockid_t;
type _Bool (line 81) | typedef _Bool bool;
type __kernel_uid32_t (line 83) | typedef __kernel_uid32_t uid_t;
type __kernel_gid32_t (line 85) | typedef __kernel_gid32_t gid_t;
type __kernel_loff_t (line 87) | typedef __kernel_loff_t loff_t;
type __kernel_size_t (line 89) | typedef __kernel_size_t size_t;
type __kernel_ssize_t (line 91) | typedef __kernel_ssize_t ssize_t;
type s32 (line 93) | typedef s32 int32_t;
type u32 (line 95) | typedef u32 uint32_t;
type u64 (line 97) | typedef u64 sector_t;
type u64 (line 99) | typedef u64 blkcnt_t;
type u64 (line 101) | typedef u64 dma_addr_t;
type gfp_t (line 103) | typedef unsigned int gfp_t;
type fmode_t (line 105) | typedef unsigned int fmode_t;
type u64 (line 107) | typedef u64 phys_addr_t;
type phys_addr_t (line 109) | typedef phys_addr_t resource_size_t;
type atomic_t (line 111) | typedef struct {
type atomic64_t (line 115) | typedef struct {
type list_head (line 119) | struct list_head {
type hlist_node (line 124) | struct hlist_node
type hlist_head (line 126) | struct hlist_head {
type hlist_node (line 130) | struct hlist_node {
type callback_head (line 135) | struct callback_head {
type initcall_entry_t (line 140) | typedef int initcall_entry_t;
type lock_class_key (line 142) | struct lock_class_key {}
type fs_context (line 144) | struct fs_context
type fs_parameter_spec (line 146) | struct fs_parameter_spec
type dentry (line 148) | struct dentry
type super_block (line 150) | struct super_block
type module (line 152) | struct module
type file_system_type (line 154) | struct file_system_type {
type file (line 175) | struct file
type kiocb (line 177) | struct kiocb
type iov_iter (line 179) | struct iov_iter
type dir_context (line 181) | struct dir_context
type poll_table_struct (line 183) | struct poll_table_struct
type vm_area_struct (line 185) | struct vm_area_struct
type inode (line 187) | struct inode
type file_lock (line 189) | struct file_lock
type page (line 191) | struct page
type pipe_inode_info (line 193) | struct pipe_inode_info
type seq_file (line 195) | struct seq_file
type file_operations (line 197) | struct file_operations {
type qspinlock (line 232) | struct qspinlock {
type arch_spinlock_t (line 246) | typedef struct qspinlock arch_spinlock_t;
type raw_spinlock (line 248) | struct raw_spinlock {
type spinlock (line 252) | struct spinlock {
type spinlock_t (line 258) | typedef struct spinlock spinlock_t;
type notifier_block (line 260) | struct notifier_block
type atomic_notifier_head (line 262) | struct atomic_notifier_head {
type system_states (line 267) | enum system_states {
type taint_flag (line 277) | struct taint_flag {
type jump_entry (line 283) | struct jump_entry {
type static_key_mod (line 289) | struct static_key_mod
type static_key (line 291) | struct static_key {
type static_key_true (line 300) | struct static_key_true {
type static_key_false (line 304) | struct static_key_false {
type __s64 (line 308) | typedef __s64 time64_t;
type __kernel_timespec (line 310) | struct __kernel_timespec {
type timezone (line 315) | struct timezone {
type timespec64 (line 320) | struct timespec64 {
type timespec_type (line 325) | enum timespec_type {
type s32 (line 331) | typedef s32 old_time32_t;
type old_timespec32 (line 333) | struct old_timespec32 {
type pollfd (line 338) | struct pollfd
type restart_block (line 340) | struct restart_block {
type thread_info (line 370) | struct thread_info {
type refcount_struct (line 375) | struct refcount_struct {
type refcount_t (line 379) | typedef struct refcount_struct refcount_t;
type llist_node (line 381) | struct llist_node {
type __call_single_node (line 385) | struct __call_single_node {
type load_weight (line 393) | struct load_weight {
type rb_node (line 398) | struct rb_node {
type sched_statistics (line 404) | struct sched_statistics {
type util_est (line 434) | struct util_est {
type sched_avg (line 439) | struct sched_avg {
type cfs_rq (line 451) | struct cfs_rq
type sched_entity (line 453) | struct sched_entity {
type sched_rt_entity (line 475) | struct sched_rt_entity {
type s64 (line 485) | typedef s64 ktime_t;
type timerqueue_node (line 487) | struct timerqueue_node {
type hrtimer_restart (line 492) | enum hrtimer_restart {
type hrtimer_clock_base (line 497) | struct hrtimer_clock_base
type hrtimer (line 499) | struct hrtimer {
type sched_dl_entity (line 510) | struct sched_dl_entity {
type cpumask (line 529) | struct cpumask {
type cpumask_t (line 533) | typedef struct cpumask cpumask_t;
type sched_info (line 535) | struct sched_info {
type plist_node (line 542) | struct plist_node {
type vmacache (line 548) | struct vmacache {
type task_rss_stat (line 553) | struct task_rss_stat {
type raw_spinlock_t (line 558) | typedef struct raw_spinlock raw_spinlock_t;
type prev_cputime (line 560) | struct prev_cputime {
type rb_root (line 566) | struct rb_root {
type rb_root_cached (line 570) | struct rb_root_cached {
type timerqueue_head (line 575) | struct timerqueue_head {
type posix_cputimer_base (line 579) | struct posix_cputimer_base {
type posix_cputimers (line 584) | struct posix_cputimers {
type sem_undo_list (line 590) | struct sem_undo_list
type sysv_sem (line 592) | struct sysv_sem {
type sysv_shm (line 596) | struct sysv_shm {
type sigset_t (line 600) | typedef struct {
type sigpending (line 604) | struct sigpending {
type kuid_t (line 609) | typedef struct {
type seccomp_filter (line 613) | struct seccomp_filter
type seccomp (line 615) | struct seccomp {
type wake_q_node (line 620) | struct wake_q_node {
type task_io_accounting (line 624) | struct task_io_accounting {
type nodemask_t (line 634) | typedef struct {
type seqcount (line 638) | struct seqcount {
type seqcount_t (line 642) | typedef struct seqcount seqcount_t;
type atomic64_t (line 644) | typedef atomic64_t atomic_long_t;
type optimistic_spin_queue (line 646) | struct optimistic_spin_queue {
type mutex (line 650) | struct mutex {
type arch_tlbflush_unmap_batch (line 657) | struct arch_tlbflush_unmap_batch {
type tlbflush_unmap_batch (line 661) | struct tlbflush_unmap_batch {
type page_frag (line 667) | struct page_frag {
type desc_struct (line 673) | struct desc_struct {
type mm_segment_t (line 689) | typedef struct {
type fregs_state (line 693) | struct fregs_state {
type fxregs_state (line 705) | struct fxregs_state {
type math_emu_info (line 733) | struct math_emu_info
type swregs_state (line 735) | struct swregs_state {
type xstate_header (line 754) | struct xstate_header {
type xregs_state (line 760) | struct xregs_state {
type fregs_state (line 767) | struct fregs_state
type fxregs_state (line 768) | struct fxregs_state
type swregs_state (line 769) | struct swregs_state
type xregs_state (line 770) | struct xregs_state
type fpu (line 774) | struct fpu {
type perf_event (line 786) | struct perf_event
type io_bitmap (line 788) | struct io_bitmap
type thread_struct (line 790) | struct thread_struct {
type sched_class (line 817) | struct sched_class
type task_group (line 819) | struct task_group
type mm_struct (line 821) | struct mm_struct
type pid (line 823) | struct pid
type completion (line 825) | struct completion
type cred (line 827) | struct cred
type key (line 829) | struct key
type nameidata (line 831) | struct nameidata
type fs_struct (line 833) | struct fs_struct
type files_struct (line 835) | struct files_struct
type nsproxy (line 837) | struct nsproxy
type signal_struct (line 839) | struct signal_struct
type sighand_struct (line 841) | struct sighand_struct
type audit_context (line 843) | struct audit_context
type rt_mutex_waiter (line 845) | struct rt_mutex_waiter
type bio_list (line 847) | struct bio_list
type blk_plug (line 849) | struct blk_plug
type reclaim_state (line 851) | struct reclaim_state
type backing_dev_info (line 853) | struct backing_dev_info
type io_context (line 855) | struct io_context
type capture_control (line 857) | struct capture_control
type kernel_siginfo (line 859) | struct kernel_siginfo
type kernel_siginfo_t (line 861) | typedef struct kernel_siginfo kernel_siginfo_t;
type css_set (line 863) | struct css_set
type robust_list_head (line 865) | struct robust_list_head
type compat_robust_list_head (line 867) | struct compat_robust_list_head
type futex_pi_state (line 869) | struct futex_pi_state
type perf_event_context (line 871) | struct perf_event_context
type mempolicy (line 873) | struct mempolicy
type rseq (line 875) | struct rseq
type task_delay_info (line 877) | struct task_delay_info
type uprobe_task (line 879) | struct uprobe_task
type vm_struct (line 881) | struct vm_struct
type task_struct (line 883) | struct task_struct {
type screen_info (line 1069) | struct screen_info {
type apm_bios_info (line 1108) | struct apm_bios_info {
type apm_info (line 1120) | struct apm_info {
type edd_device_params (line 1131) | struct edd_device_params {
type edd_info (line 1231) | struct edd_info {
type edd (line 1241) | struct edd {
type ist_info (line 1248) | struct ist_info {
type edid_info (line 1255) | struct edid_info {
type setup_header (line 1259) | struct setup_header {
type sys_desc_table (line 1301) | struct sys_desc_table {
type olpc_ofw_header (line 1306) | struct olpc_ofw_header {
type efi_info (line 1313) | struct efi_info {
type boot_e820_entry (line 1324) | struct boot_e820_entry {
type boot_params (line 1330) | struct boot_params {
type x86_hardware_subarch (line 1367) | enum x86_hardware_subarch {
type range (line 1376) | struct range {
type pt_regs (line 1381) | struct pt_regs {
type math_emu_info (line 1405) | struct math_emu_info {
type pteval_t (line 1410) | typedef long unsigned int pteval_t;
type pmdval_t (line 1412) | typedef long unsigned int pmdval_t;
type pudval_t (line 1414) | typedef long unsigned int pudval_t;
type p4dval_t (line 1416) | typedef long unsigned int p4dval_t;
type pgdval_t (line 1418) | typedef long unsigned int pgdval_t;
type pgprotval_t (line 1420) | typedef long unsigned int pgprotval_t;
type pte_t (line 1422) | typedef struct {
type pgprot (line 1426) | struct pgprot {
type pgprot_t (line 1430) | typedef struct pgprot pgprot_t;
type pgd_t (line 1432) | typedef struct {
type p4d_t (line 1436) | typedef struct {
type pud_t (line 1440) | typedef struct {
type pmd_t (line 1444) | typedef struct {
type page (line 1448) | struct page
type address_space (line 1450) | struct address_space
type kmem_cache (line 1452) | struct kmem_cache
type dev_pagemap (line 1454) | struct dev_pagemap
type page (line 1456) | struct page {
type cpumask (line 1526) | struct cpumask
type tracepoint_func (line 1528) | struct tracepoint_func {
type tracepoint (line 1534) | struct tracepoint {
type desc_ptr (line 1542) | struct desc_ptr {
type cpuinfo_x86 (line 1547) | struct cpuinfo_x86 {
type seq_operations (line 1589) | struct seq_operations {
type x86_hw_tss (line 1596) | struct x86_hw_tss {
type entry_stack (line 1609) | struct entry_stack {
type entry_stack_page (line 1613) | struct entry_stack_page {
type x86_io_bitmap (line 1617) | struct x86_io_bitmap {
type tss_struct (line 1624) | struct tss_struct {
type irq_stack (line 2124) | struct irq_stack {
type fixed_percpu_data (line 2128) | struct fixed_percpu_data {
type l1tf_mitigations (line 2133) | enum l1tf_mitigations {
type mpc_table (line 2142) | struct mpc_table {
type mpc_cpu (line 2156) | struct mpc_cpu {
type mpc_bus (line 2166) | struct mpc_bus {
type mpc_intsrc (line 2172) | struct mpc_intsrc {
type x86_init_mpparse (line 2182) | struct x86_init_mpparse {
type x86_init_resources (line 2193) | struct x86_init_resources {
type x86_init_irqs (line 2199) | struct x86_init_irqs {
type x86_init_oem (line 2206) | struct x86_init_oem {
type x86_init_paging (line 2211) | struct x86_init_paging {
type x86_init_timers (line 2215) | struct x86_init_timers {
type x86_init_iommu (line 2221) | struct x86_init_iommu {
type x86_init_pci (line 2225) | struct x86_init_pci {
type x86_hyper_init (line 2232) | struct x86_hyper_init {
type x86_init_acpi (line 2240) | struct x86_init_acpi {
type x86_init_ops (line 2246) | struct x86_init_ops {
type x86_cpuinit_ops (line 2259) | struct x86_cpuinit_ops {
type x86_legacy_devices (line 2265) | struct x86_legacy_devices {
type x86_legacy_i8042_state (line 2269) | enum x86_legacy_i8042_state {
type x86_legacy_features (line 2275) | struct x86_legacy_features {
type x86_hyper_runtime (line 2284) | struct x86_hyper_runtime {
type x86_platform_ops (line 2288) | struct x86_platform_ops {
type pci_dev (line 2305) | struct pci_dev
type x86_msi_ops (line 2307) | struct x86_msi_ops {
type x86_apic_ops (line 2314) | struct x86_apic_ops {
type physid_mask (line 2319) | struct physid_mask {
type physid_mask_t (line 2323) | typedef struct physid_mask physid_mask_t;
type qrwlock (line 2325) | struct qrwlock {
type arch_rwlock_t (line 2336) | typedef struct qrwlock arch_rwlock_t;
type rwlock_t (line 2338) | typedef struct {
type rw_semaphore (line 2342) | struct rw_semaphore {
type vdso_image (line 2350) | struct vdso_image {
type ldt_struct (line 2367) | struct ldt_struct
type mm_context_t (line 2369) | typedef struct {
type kref (line 2383) | struct kref {
type kset (line 2387) | struct kset
type kobj_type (line 2389) | struct kobj_type
type kernfs_node (line 2391) | struct kernfs_node
type kobject (line 2393) | struct kobject {
type dl_dev_state (line 2408) | enum dl_dev_state {
type dev_links_info (line 2415) | struct dev_links_info {
type pm_message (line 2424) | struct pm_message {
type pm_message_t (line 2428) | typedef struct pm_message pm_message_t;
type swait_queue_head (line 2430) | struct swait_queue_head {
type completion (line 2435) | struct completion {
type work_struct (line 2440) | struct work_struct
type work_struct (line 2442) | struct work_struct
type work_struct (line 2444) | struct work_struct {
type wait_queue_head (line 2450) | struct wait_queue_head {
type wait_queue_head_t (line 2455) | typedef struct wait_queue_head wait_queue_head_t;
type rpm_request (line 2457) | enum rpm_request {
type rpm_status (line 2465) | enum rpm_status {
type wakeup_source (line 2472) | struct wakeup_source
type wake_irq (line 2474) | struct wake_irq
type pm_subsys_data (line 2476) | struct pm_subsys_data
type device (line 2478) | struct device
type dev_pm_qos (line 2480) | struct dev_pm_qos
type dev_pm_info (line 2482) | struct dev_pm_info {
type dev_archdata (line 2536) | struct dev_archdata {
type device_private (line 2540) | struct device_private
type device_type (line 2542) | struct device_type
type bus_type (line 2544) | struct bus_type
type device_driver (line 2546) | struct device_driver
type dev_pm_domain (line 2548) | struct dev_pm_domain
type irq_domain (line 2550) | struct irq_domain
type dma_map_ops (line 2552) | struct dma_map_ops
type device_dma_parameters (line 2554) | struct device_dma_parameters
type device_node (line 2556) | struct device_node
type fwnode_handle (line 2558) | struct fwnode_handle
type class (line 2560) | struct class
type attribute_group (line 2562) | struct attribute_group
type iommu_group (line 2564) | struct iommu_group
type dev_iommu (line 2566) | struct dev_iommu
type device (line 2568) | struct device {
type fixed_addresses (line 2610) | enum fixed_addresses {
type vm_userfaultfd_ctx (line 2624) | struct vm_userfaultfd_ctx {}
type anon_vma (line 2626) | struct anon_vma
type vm_operations_struct (line 2628) | struct vm_operations_struct
type vm_area_struct (line 2630) | struct vm_area_struct {
type mm_rss_stat (line 2655) | struct mm_rss_stat {
type xol_area (line 2659) | struct xol_area
type uprobes_state (line 2661) | struct uprobes_state {
type linux_binfmt (line 2665) | struct linux_binfmt
type core_state (line 2667) | struct core_state
type kioctx_table (line 2669) | struct kioctx_table
type user_namespace (line 2671) | struct user_namespace
type mmu_notifier_subscriptions (line 2673) | struct mmu_notifier_subscriptions
type mm_struct (line 2675) | struct mm_struct {
type seqlock_t (line 2737) | typedef struct {
type timer_list (line 2742) | struct timer_list {
type notifier_block (line 2749) | struct notifier_block
type notifier_block (line 2751) | struct notifier_block {
type blocking_notifier_head (line 2757) | struct blocking_notifier_head {
type arch_uprobe_task (line 2762) | struct arch_uprobe_task {
type uprobe_task_state (line 2768) | enum uprobe_task_state {
type uprobe (line 2775) | struct uprobe
type return_instance (line 2777) | struct return_instance
type uprobe_task (line 2779) | struct uprobe_task {
type return_instance (line 2797) | struct return_instance {
type xarray (line 2806) | struct xarray {
type u32 (line 2812) | typedef u32 errseq_t;
type address_space_operations (line 2814) | struct address_space_operations
type address_space (line 2816) | struct address_space {
type vmem_altmap (line 2834) | struct vmem_altmap {
type resource (line 2843) | struct resource {
type percpu_ref (line 2854) | struct percpu_ref
type percpu_ref (line 2856) | struct percpu_ref
type percpu_ref (line 2858) | struct percpu_ref {
type memory_type (line 2868) | enum memory_type {
type dev_pagemap_ops (line 2875) | struct dev_pagemap_ops
type dev_pagemap (line 2877) | struct dev_pagemap {
type vfsmount (line 2889) | struct vfsmount
type path (line 2891) | struct path {
type rw_hint (line 2896) | enum rw_hint {
type pid_type (line 2905) | enum pid_type {
type fown_struct (line 2913) | struct fown_struct {
type file_ra_state (line 2922) | struct file_ra_state {
type file (line 2931) | struct file {
type vm_fault_t (line 2959) | typedef unsigned int vm_fault_t;
type page_entry_size (line 2961) | enum page_entry_size {
type vm_fault (line 2967) | struct vm_fault
type vm_operations_struct (line 2969) | struct vm_operations_struct {
type core_thread (line 2987) | struct core_thread {
type core_state (line 2992) | struct core_state {
type vm_fault (line 2998) | struct vm_fault {
type irq_cpustat_t (line 3014) | typedef struct {
type apic_intr_mode_id (line 3042) | enum apic_intr_mode_id {
type apic (line 3050) | struct apic {
type smp_ops (line 3089) | struct smp_ops {
type pcpu_fc (line 3104) | enum pcpu_fc {
type fwnode_operations (line 3111) | struct fwnode_operations
type fwnode_handle (line 3113) | struct fwnode_handle {
type fwnode_reference_args (line 3119) | struct fwnode_reference_args
type fwnode_endpoint (line 3121) | struct fwnode_endpoint
type fwnode_operations (line 3123) | struct fwnode_operations {
type fwnode_endpoint (line 3144) | struct fwnode_endpoint {
type fwnode_reference_args (line 3150) | struct fwnode_reference_args {
type vm_struct (line 3156) | struct vm_struct {
type free_area (line 3167) | struct free_area {
type zone_padding (line 3172) | struct zone_padding {
type numa_stat_item (line 3176) | enum numa_stat_item {
type zone_stat_item (line 3186) | enum zone_stat_item {
type node_stat_item (line 3203) | enum node_stat_item {
type lruvec (line 3241) | struct lruvec {
type isolate_mode_t (line 3250) | typedef unsigned int isolate_mode_t;
type per_cpu_pages (line 3252) | struct per_cpu_pages {
type per_cpu_pageset (line 3259) | struct per_cpu_pageset {
type per_cpu_nodestat (line 3267) | struct per_cpu_nodestat {
type zone_type (line 3272) | enum zone_type {
type pglist_data (line 3280) | struct pglist_data
type zone (line 3282) | struct zone {
type zoneref (line 3334) | struct zoneref {
type zonelist (line 3339) | struct zonelist {
type pglist_data (line 3343) | struct pglist_data {
type mem_section_usage (line 3392) | struct mem_section_usage {
type mem_section (line 3397) | struct mem_section {
type mem_cgroup (line 3402) | struct mem_cgroup
type shrink_control (line 3404) | struct shrink_control {
type shrinker (line 3412) | struct shrinker {
type rlimit (line 3422) | struct rlimit {
type dev_pagemap_ops (line 3427) | struct dev_pagemap_ops {
type pid_namespace (line 3434) | struct pid_namespace
type upid (line 3436) | struct upid {
type pid (line 3441) | struct pid {
type kgid_t (line 3452) | typedef struct {
type hrtimer_cpu_base (line 3456) | struct hrtimer_cpu_base
type hrtimer_clock_base (line 3458) | struct hrtimer_clock_base {
type hrtimer_cpu_base (line 3469) | struct hrtimer_cpu_base {
type tick_device (line 3489) | struct tick_device
type __signalfn_t (line 3493) | typedef __signalfn_t *__sighandler_t;
type __restorefn_t (line 3497) | typedef __restorefn_t *__sigrestore_t;
type sigval_t (line 3504) | typedef union sigval sigval_t;
type kernel_siginfo (line 3555) | struct kernel_siginfo {
type ratelimit_state (line 3564) | struct ratelimit_state {
type user_struct (line 3574) | struct user_struct {
type sigaction (line 3589) | struct sigaction {
type k_sigaction (line 3596) | struct k_sigaction {
type cpu_itimer (line 3600) | struct cpu_itimer {
type task_cputime_atomic (line 3605) | struct task_cputime_atomic {
type thread_group_cputimer (line 3611) | struct thread_group_cputimer {
type pacct_struct (line 3615) | struct pacct_struct {
type tty_struct (line 3625) | struct tty_struct
type taskstats (line 3627) | struct taskstats
type tty_audit_buf (line 3629) | struct tty_audit_buf
type signal_struct (line 3631) | struct signal_struct {
type rseq (line 3695) | struct rseq {
type root_domain (line 3707) | struct root_domain
type rq (line 3709) | struct rq
type rq_flags (line 3711) | struct rq_flags
type sched_class (line 3713) | struct sched_class {
type kernel_cap_struct (line 3741) | struct kernel_cap_struct {
type kernel_cap_t (line 3745) | typedef struct kernel_cap_struct kernel_cap_t;
type group_info (line 3747) | struct group_info
type cred (line 3749) | struct cred {
type key_serial_t (line 3780) | typedef int32_t key_serial_t;
type key_perm_t (line 3782) | typedef uint32_t key_perm_t;
type key_type (line 3784) | struct key_type
type key_tag (line 3786) | struct key_tag
type keyring_index_key (line 3788) | struct keyring_index_key {
type assoc_array_ptr (line 3807) | struct assoc_array_ptr
type assoc_array (line 3809) | struct assoc_array {
type key_user (line 3814) | struct key_user
type key_restriction (line 3816) | struct key_restriction
type key (line 3818) | struct key {
type sighand_struct (line 3860) | struct sighand_struct {
type io_cq (line 3867) | struct io_cq
type io_context (line 3869) | struct io_context {
type task_struct (line 3884) | struct task_struct
type hlist_bl_node (line 3888) | struct hlist_bl_node
type hlist_bl_head (line 3890) | struct hlist_bl_head {
type hlist_bl_node (line 3894) | struct hlist_bl_node {
type lockref (line 3899) | struct lockref {
type qstr (line 3909) | struct qstr {
type dentry_stat_t (line 3920) | struct dentry_stat_t {
type dentry_operations (line 3929) | struct dentry_operations
type dentry (line 3931) | struct dentry {
type posix_acl (line 3957) | struct posix_acl
type inode_operations (line 3959) | struct inode_operations
type file_lock_context (line 3961) | struct file_lock_context
type block_device (line 3963) | struct block_device
type cdev (line 3965) | struct cdev
type fsnotify_mark_connector (line 3967) | struct fsnotify_mark_connector
type inode (line 3969) | struct inode {
type dentry_operations (line 4035) | struct dentry_operations {
type mtd_info (line 4054) | struct mtd_info
type qsize_t (line 4056) | typedef long long int qsize_t;
type quota_format_type (line 4058) | struct quota_format_type
type mem_dqinfo (line 4060) | struct mem_dqinfo {
type quota_format_ops (line 4072) | struct quota_format_ops
type quota_info (line 4074) | struct quota_info {
type rcu_sync (line 4082) | struct rcu_sync {
type rcuwait (line 4089) | struct rcuwait {
type percpu_rw_semaphore (line 4093) | struct percpu_rw_semaphore {
type sb_writers (line 4101) | struct sb_writers {
type uuid_t (line 4107) | typedef struct {
type list_lru_node (line 4111) | struct list_lru_node
type list_lru (line 4113) | struct list_lru {
type super_operations (line 4117) | struct super_operations
type dquot_operations (line 4119) | struct dquot_operations
type quotactl_ops (line 4121) | struct quotactl_ops
type export_operations (line 4123) | struct export_operations
type xattr_handler (line 4125) | struct xattr_handler
type workqueue_struct (line 4127) | struct workqueue_struct
type super_block (line 4129) | struct super_block {
type kstat (line 4199) | struct kstat {
type list_lru_one (line 4220) | struct list_lru_one {
type list_lru_node (line 4225) | struct list_lru_node {
type xa_node (line 4234) | struct xa_node {
type local_lock_t (line 4252) | typedef struct {} local_lock_t;
type radix_tree_preload (line 4254) | struct radix_tree_preload {
type migrate_mode (line 4260) | enum migrate_mode {
type ctl_table (line 4267) | struct ctl_table
type ctl_table (line 4269) | struct ctl_table
type ctl_table_poll (line 4271) | struct ctl_table_poll
type ctl_table (line 4273) | struct ctl_table {
type ctl_table_poll (line 4285) | struct ctl_table_poll {
type key_tag (line 4290) | struct key_tag {
type key (line 4296) | struct key
type key_preparsed_payload (line 4298) | struct key_preparsed_payload
type key_match_data (line 4300) | struct key_match_data
type kernel_pkey_params (line 4302) | struct kernel_pkey_params
type kernel_pkey_query (line 4304) | struct kernel_pkey_query
type key_type (line 4306) | struct key_type {
type key (line 4330) | struct key
type key_type (line 4330) | struct key_type
type key (line 4330) | struct key
type key_restriction (line 4332) | struct key_restriction {
type group_info (line 4338) | struct group_info {
type delayed_call (line 4344) | struct delayed_call {
type guid_t (line 4349) | typedef struct {
type request_queue (line 4353) | struct request_queue
type io_cq (line 4355) | struct io_cq {
type files_stat_struct (line 4369) | struct files_stat_struct {
type inodes_stat_t (line 4375) | struct inodes_stat_t {
type kiocb (line 4381) | struct kiocb {
type iattr (line 4392) | struct iattr {
type percpu_counter (line 4404) | struct percpu_counter {
type __kernel_uid32_t (line 4411) | typedef __kernel_uid32_t projid_t;
type kprojid_t (line 4413) | typedef struct {
type quota_type (line 4417) | enum quota_type {
type kqid (line 4423) | struct kqid {
type mem_dqblk (line 4432) | struct mem_dqblk {
type dquot (line 4444) | struct dquot {
type quota_format_type (line 4459) | struct quota_format_type {
type dqstats (line 4466) | struct dqstats {
type quota_format_ops (line 4471) | struct quota_format_ops {
type dquot_operations (line 4482) | struct dquot_operations {
type qc_dqblk (line 4496) | struct qc_dqblk {
type qc_type_state (line 4515) | struct qc_type_state {
type qc_state (line 4528) | struct qc_state {
type qc_info (line 4533) | struct qc_info {
type quotactl_ops (line 4544) | struct quotactl_ops {
type writeback_control (line 4558) | struct writeback_control
type readahead_control (line 4560) | struct readahead_control
type swap_info_struct (line 4562) | struct swap_info_struct
type address_space_operations (line 4564) | struct address_space_operations {
type hd_struct (line 4589) | struct hd_struct
type gendisk (line 4591) | struct gendisk
type block_device (line 4593) | struct block_device {
type fiemap_extent_info (line 4619) | struct fiemap_extent_info
type inode_operations (line 4621) | struct inode_operations {
type file_lock_context (line 4648) | struct file_lock_context {
type file_lock_operations (line 4655) | struct file_lock_operations {
type nlm_lockowner (line 4660) | struct nlm_lockowner
type nfs_lock_info (line 4662) | struct nfs_lock_info {
type nfs4_lock_state (line 4668) | struct nfs4_lock_state
type nfs4_lock_info (line 4670) | struct nfs4_lock_info {
type fasync_struct (line 4674) | struct fasync_struct
type lock_manager_operations (line 4676) | struct lock_manager_operations
type file_lock (line 4678) | struct file_lock {
type lock_manager_operations (line 4709) | struct lock_manager_operations {
type fasync_struct (line 4720) | struct fasync_struct {
type kstatfs (line 4729) | struct kstatfs
type super_operations (line 4731) | struct super_operations {
type iomap (line 4760) | struct iomap
type fid (line 4762) | struct fid
type export_operations (line 4764) | struct export_operations {
type xattr_handler (line 4776) | struct xattr_handler {
type dir_context (line 4785) | struct dir_context
type dir_context (line 4787) | struct dir_context {
type p_log (line 4792) | struct p_log
type fs_parameter (line 4794) | struct fs_parameter
type fs_parse_result (line 4796) | struct fs_parse_result
type p_log (line 4798) | struct p_log
type fs_parameter_spec (line 4798) | struct fs_parameter_spec
type fs_parameter (line 4798) | struct fs_parameter
type fs_parse_result (line 4798) | struct fs_parse_result
type fs_parameter_spec (line 4800) | struct fs_parameter_spec {
type attribute (line 4808) | struct attribute {
type kobj_attribute (line 4813) | struct kobj_attribute {
type page (line 4819) | struct page
type compound_dtor_id (line 4821) | enum compound_dtor_id {
type vm_event_item (line 4828) | enum vm_event_item {
type vm_event_state (line 4898) | struct vm_event_state {
type memblock_flags (line 4902) | enum memblock_flags {
type memblock_region (line 4909) | struct memblock_region {
type memblock_type (line 4916) | struct memblock_type {
type memblock (line 4924) | struct memblock {
type debug_store (line 4931) | struct debug_store {
type debug_store_buffers (line 5435) | struct debug_store_buffers {
type cea_exception_stacks (line 5440) | struct cea_exception_stacks {
type cpu_entry_area (line 5452) | struct cpu_entry_area {
type gdt_page (line 5461) | struct gdt_page {
type tlb_context (line 5961) | struct tlb_context {
type tlb_state (line 5966) | struct tlb_state {
type e820_type (line 5981) | enum e820_type {
type e820_entry (line 5993) | struct e820_entry {
type e820_table (line 5999) | struct e820_table {
type boot_params_to_save (line 6004) | struct boot_params_to_save {
type idr (line 6009) | struct idr {
type kernfs_root (line 6015) | struct kernfs_root
type kernfs_elem_dir (line 6017) | struct kernfs_elem_dir {
type kernfs_syscall_ops (line 6023) | struct kernfs_syscall_ops
type kernfs_root (line 6025) | struct kernfs_root {
type kernfs_elem_symlink (line 6036) | struct kernfs_elem_symlink {
type kernfs_ops (line 6040) | struct kernfs_ops
type kernfs_open_node (line 6042) | struct kernfs_open_node
type kernfs_elem_attr (line 6044) | struct kernfs_elem_attr {
type kernfs_iattrs (line 6051) | struct kernfs_iattrs
type kernfs_node (line 6053) | struct kernfs_node {
type kernfs_open_file (line 6073) | struct kernfs_open_file
type kernfs_ops (line 6075) | struct kernfs_ops {
type kernfs_syscall_ops (line 6090) | struct kernfs_syscall_ops {
type kernfs_open_file (line 6098) | struct kernfs_open_file {
type kobj_ns_type (line 6114) | enum kobj_ns_type {
type sock (line 6120) | struct sock
type kobj_ns_type_operations (line 6122) | struct kobj_ns_type_operations {
type bin_attribute (line 6131) | struct bin_attribute
type attribute_group (line 6133) | struct attribute_group {
type bin_attribute (line 6141) | struct bin_attribute {
type sysfs_ops (line 6150) | struct sysfs_ops {
type kset_uevent_ops (line 6155) | struct kset_uevent_ops
type kset (line 6157) | struct kset {
type kobj_type (line 6164) | struct kobj_type {
type kobj_uevent_env (line 6174) | struct kobj_uevent_env {
type kset_uevent_ops (line 6182) | struct kset_uevent_ops {
type dev_pm_ops (line 6188) | struct dev_pm_ops {
type pm_subsys_data (line 6214) | struct pm_subsys_data {
type wakeup_source (line 6220) | struct wakeup_source {
type dev_pm_domain (line 6243) | struct dev_pm_domain {
type iommu_ops (line 6252) | struct iommu_ops
type subsys_private (line 6254) | struct subsys_private
type bus_type (line 6256) | struct bus_type {
type probe_type (line 6282) | enum probe_type {
type of_device_id (line 6288) | struct of_device_id
type acpi_device_id (line 6290) | struct acpi_device_id
type driver_private (line 6292) | struct driver_private
type device_driver (line 6294) | struct device_driver {
type iommu_cap (line 6316) | enum iommu_cap {
type iommu_attr (line 6322) | enum iommu_attr {
type iommu_dev_features (line 6334) | enum iommu_dev_features {
type iommu_domain (line 6339) | struct iommu_domain
type iommu_iotlb_gather (line 6341) | struct iommu_iotlb_gather
type iommu_device (line 6343) | struct iommu_device
type iommu_resv_region (line 6345) | struct iommu_resv_region
type of_phandle_args (line 6347) | struct of_phandle_args
type iommu_sva (line 6349) | struct iommu_sva
type iommu_fault_event (line 6351) | struct iommu_fault_event
type iommu_page_response (line 6353) | struct iommu_page_response
type iommu_cache_invalidate_info (line 6355) | struct iommu_cache_invalidate_info
type iommu_gpasid_bind_data (line 6357) | struct iommu_gpasid_bind_data
type iommu_ops (line 6359) | struct iommu_ops {
type device_type (line 6403) | struct device_type {
type class (line 6412) | struct class {
type of_device_id (line 6430) | struct of_device_id {
type kernel_ulong_t (line 6437) | typedef long unsigned int kernel_ulong_t;
type acpi_device_id (line 6439) | struct acpi_device_id {
type device_dma_parameters (line 6446) | struct device_dma_parameters {
type dma_data_direction (line 6451) | enum dma_data_direction {
type sg_table (line 6458) | struct sg_table
type scatterlist (line 6460) | struct scatterlist
type dma_map_ops (line 6462) | struct dma_map_ops {
type node (line 6484) | struct node {
type cpuhp_smt_control (line 6489) | enum cpuhp_smt_control {
type cpu_signature (line 6497) | struct cpu_signature {
type ucode_cpu_info (line 6503) | struct ucode_cpu_info {
type pto_T__ (line 6509) | typedef long unsigned int pto_T__;
type kobj_attribute___2 (line 6511) | struct kobj_attribute___2
type file_system_type___2 (line 6513) | struct file_system_type___2
type atomic_notifier_head___2 (line 6515) | struct atomic_notifier_head___2
type irq_hw_number_t (line 6517) | typedef long unsigned int irq_hw_number_t;
type kernel_symbol (line 6519) | struct kernel_symbol {
type obs_kernel_param (line 6527) | struct obs_kernel_param {
type ftrace_dump_mode (line 6533) | enum ftrace_dump_mode {
type bug_entry (line 6539) | struct bug_entry {
type pollfd (line 6546) | struct pollfd {
type tracepoint_ptr_t (line 6552) | typedef const int tracepoint_ptr_t;
type bpf_raw_event_map (line 6554) | struct bpf_raw_event_map {
type orc_entry (line 6562) | struct orc_entry {
type perf_event_state (line 6571) | enum perf_event_state {
type local_t (line 6580) | typedef struct {
type local64_t (line 6584) | typedef struct {
type perf_event_attr (line 6588) | struct perf_event_attr {
type hw_perf_event_extra (line 6660) | struct hw_perf_event_extra {
type arch_hw_breakpoint (line 6667) | struct arch_hw_breakpoint {
type hw_perf_event (line 6674) | struct hw_perf_event {
type irq_work (line 6724) | struct irq_work {
type perf_addr_filters_head (line 6735) | struct perf_addr_filters_head {
type perf_sample_data (line 6741) | struct perf_sample_data
type perf_event (line 6743) | struct perf_event
type perf_sample_data (line 6743) | struct perf_sample_data
type pt_regs (line 6743) | struct pt_regs
type pmu (line 6745) | struct pmu
type perf_buffer (line 6747) | struct perf_buffer
type perf_addr_filter_range (line 6749) | struct perf_addr_filter_range
type bpf_prog (line 6751) | struct bpf_prog
type trace_event_call (line 6753) | struct trace_event_call
type event_filter (line 6755) | struct event_filter
type perf_event (line 6757) | struct perf_event {
type lockdep_map (line 6828) | struct lockdep_map {}
type uid_gid_extent (line 6830) | struct uid_gid_extent {
type uid_gid_map (line 6836) | struct uid_gid_map {
type proc_ns_operations (line 6847) | struct proc_ns_operations
type ns_common (line 6849) | struct ns_common {
type ctl_table_root (line 6855) | struct ctl_table_root
type ctl_table_set (line 6857) | struct ctl_table_set
type ctl_dir (line 6859) | struct ctl_dir
type ctl_node (line 6861) | struct ctl_node
type ctl_table_header (line 6863) | struct ctl_table_header {
type ctl_dir (line 6882) | struct ctl_dir {
type ctl_table_set (line 6887) | struct ctl_table_set {
type ucounts (line 6892) | struct ucounts
type user_namespace (line 6894) | struct user_namespace {
type node_states (line 6915) | enum node_states {
type delayed_work (line 6925) | struct delayed_work {
type rcu_work (line 6932) | struct rcu_work {
type rcu_segcblist (line 6938) | struct rcu_segcblist {
type srcu_node (line 6947) | struct srcu_node
type srcu_struct (line 6949) | struct srcu_struct
type srcu_data (line 6951) | struct srcu_data {
type srcu_node (line 6974) | struct srcu_node {
type srcu_struct (line 6984) | struct srcu_struct {
type anon_vma (line 7003) | struct anon_vma {
type mempolicy (line 7012) | struct mempolicy {
type linux_binprm (line 7026) | struct linux_binprm
type coredump_params (line 7028) | struct coredump_params
type linux_binfmt (line 7030) | struct linux_binfmt {
type __call_single_data (line 7041) | struct __call_single_data {
type ctl_node (line 7053) | struct ctl_node {
type ctl_table_root (line 7058) | struct ctl_table_root {
type umh_disable_depth (line 7065) | enum umh_disable_depth {
type va_alignment (line 7071) | struct va_alignment {
type __u64 (line 7082) | typedef __u64 Elf64_Addr;
type __u16 (line 7084) | typedef __u16 Elf64_Half;
type __u32 (line 7086) | typedef __u32 Elf64_Word;
type __u64 (line 7088) | typedef __u64 Elf64_Xword;
type __s64 (line 7090) | typedef __s64 Elf64_Sxword;
type Elf64_Dyn (line 7092) | typedef struct {
type elf64_sym (line 7100) | struct elf64_sym {
type Elf64_Sym (line 7109) | typedef struct elf64_sym Elf64_Sym;
type seq_file (line 7111) | struct seq_file {
type file (line 7126) | struct file
type poll_table_struct (line 7126) | struct poll_table_struct
type poll_table_struct (line 7128) | struct poll_table_struct {
type kernel_param (line 7133) | struct kernel_param
type kernel_param_ops (line 7135) | struct kernel_param_ops {
type kparam_string (line 7142) | struct kparam_string
type kparam_array (line 7144) | struct kparam_array
type kernel_param (line 7146) | struct kernel_param {
type kparam_string (line 7160) | struct kparam_string {
type kparam_array (line 7165) | struct kparam_array {
type module_state (line 7173) | enum module_state {
type module_param_attrs (line 7180) | struct module_param_attrs
type module_kobject (line 7182) | struct module_kobject {
type latch_tree_node (line 7190) | struct latch_tree_node {
type mod_tree_node (line 7194) | struct mod_tree_node {
type module_layout (line 7199) | struct module_layout {
type mod_arch_specific (line 7208) | struct mod_arch_specific {
type mod_kallsyms (line 7214) | struct mod_kallsyms {
type module_attribute (line 7221) | struct module_attribute
type exception_table_entry (line 7223) | struct exception_table_entry
type module_sect_attrs (line 7225) | struct module_sect_attrs
type module_notes_attrs (line 7227) | struct module_notes_attrs
type trace_eval_map (line 7229) | struct trace_eval_map
type error_injection_entry (line 7231) | struct error_injection_entry
type module (line 7233) | struct module {
type error_injection_entry (line 7305) | struct error_injection_entry {
type module_attribute (line 7310) | struct module_attribute {
type exception_table_entry (line 7319) | struct exception_table_entry {
type trace_event_functions (line 7325) | struct trace_event_functions
type trace_event (line 7327) | struct trace_event {
type trace_event_class (line 7334) | struct trace_event_class
type bpf_prog_array (line 7336) | struct bpf_prog_array
type trace_event_call (line 7338) | struct trace_event_call {
type trace_eval_map (line 7357) | struct trace_eval_map {
type fs_pin (line 7363) | struct fs_pin
type pid_namespace (line 7365) | struct pid_namespace {
type task_cputime (line 7381) | struct task_cputime {
type uts_namespace (line 7387) | struct uts_namespace
type ipc_namespace (line 7389) | struct ipc_namespace
type mnt_namespace (line 7391) | struct mnt_namespace
type net (line 7393) | struct net
type time_namespace (line 7395) | struct time_namespace
type cgroup_namespace (line 7397) | struct cgroup_namespace
type nsproxy (line 7399) | struct nsproxy {
type bio (line 7411) | struct bio
type bio_list (line 7413) | struct bio_list {
type blk_plug (line 7418) | struct blk_plug {
type reclaim_state (line 7425) | struct reclaim_state {
type fprop_local_percpu (line 7431) | struct fprop_local_percpu {
type wb_reason (line 7437) | enum wb_reason {
type bdi_writeback_congested (line 7449) | struct bdi_writeback_congested
type bdi_writeback (line 7451) | struct bdi_writeback {
type backing_dev_info (line 7479) | struct backing_dev_info {
type cgroup_subsys_state (line 7504) | struct cgroup_subsys_state
type cgroup (line 7506) | struct cgroup
type css_set (line 7508) | struct css_set {
type perf_event_groups (line 7532) | struct perf_event_groups {
type perf_event_context (line 7537) | struct perf_event_context {
type task_delay_info (line 7566) | struct task_delay_info {
type cgroup_subsys (line 7582) | struct cgroup_subsys
type cgroup_subsys_state (line 7584) | struct cgroup_subsys_state {
type cgroup_file (line 7600) | struct cgroup_file {
type cgroup_base_stat (line 7606) | struct cgroup_base_stat {
type psi_group (line 7610) | struct psi_group {}
type cgroup_bpf (line 7612) | struct cgroup_bpf {
type cgroup_freezer_state (line 7621) | struct cgroup_freezer_state {
type cgroup_root (line 7628) | struct cgroup_root
type cgroup_rstat_cpu (line 7630) | struct cgroup_rstat_cpu
type cgroup (line 7632) | struct cgroup {
type taskstats (line 7673) | struct taskstats {
type blk_qc_t (line 7723) | typedef unsigned int blk_qc_t;
type blk_qc_t (line 7725) | typedef blk_qc_t make_request_fn(struct request_queue *, struct bio *);
type blk_rq_stat (line 7727) | struct blk_rq_stat {
type blk_zoned_model (line 7735) | enum blk_zoned_model {
type queue_limits (line 7741) | struct queue_limits {
type bsg_ops (line 7771) | struct bsg_ops
type bsg_class_device (line 7773) | struct bsg_class_device {
type mempool_s (line 7784) | struct mempool_s {
type mempool_t (line 7795) | typedef struct mempool_s mempool_t;
type bio_set (line 7797) | struct bio_set {
type request (line 7808) | struct request
type elevator_queue (line 7810) | struct elevator_queue
type blk_queue_stats (line 7812) | struct blk_queue_stats
type rq_qos (line 7814) | struct rq_qos
type blk_mq_ops (line 7816) | struct blk_mq_ops
type blk_mq_ctx (line 7818) | struct blk_mq_ctx
type blk_mq_hw_ctx (line 7820) | struct blk_mq_hw_ctx
type blk_stat_callback (line 7822) | struct blk_stat_callback
type blk_trace (line 7824) | struct blk_trace
type blk_flush_queue (line 7826) | struct blk_flush_queue
type blk_mq_tag_set (line 7828) | struct blk_mq_tag_set
type request_queue (line 7830) | struct request_queue {
type writeback_sync_modes (line 7896) | enum writeback_sync_modes {
type writeback_control (line 7901) | struct writeback_control {
type readahead_control (line 7917) | struct readahead_control {
type swap_cluster_info (line 7925) | struct swap_cluster_info {
type swap_cluster_list (line 7931) | struct swap_cluster_list {
type percpu_cluster (line 7936) | struct percpu_cluster
type swap_info_struct (line 7938) | struct swap_info_struct {
type disk_stats (line 7966) | struct disk_stats
type partition_meta_info (line 7968) | struct partition_meta_info
type hd_struct (line 7970) | struct hd_struct {
type disk_part_tbl (line 7986) | struct disk_part_tbl
type block_device_operations (line 7988) | struct block_device_operations
type timer_rand_state (line 7990) | struct timer_rand_state
type disk_events (line 7992) | struct disk_events
type cdrom_device_info (line 7994) | struct cdrom_device_info
type badblocks (line 7996) | struct badblocks
type gendisk (line 7998) | struct gendisk {
type cdev (line 8022) | struct cdev {
type fc_log (line 8031) | struct fc_log
type p_log (line 8033) | struct p_log {
type fs_context_purpose (line 8038) | enum fs_context_purpose {
type fs_context_phase (line 8044) | enum fs_context_phase {
type fs_context_operations (line 8054) | struct fs_context_operations
type fs_context (line 8056) | struct fs_context {
type audit_names (line 8081) | struct audit_names
type filename (line 8083) | struct filename {
type u8 (line 8091) | typedef u8 blk_status_t;
type bvec_iter (line 8093) | struct bvec_iter {
type bio (line 8100) | struct bio
type bio_vec (line 8102) | struct bio_vec {
type bio (line 8108) | struct bio {
type linux_binprm (line 8130) | struct linux_binprm {
type coredump_params (line 8158) | struct coredump_params {
type ring_buffer_event (line 8168) | struct ring_buffer_event {
type seq_buf (line 8174) | struct seq_buf {
type trace_seq (line 8181) | struct trace_seq {
type perf_sw_ids (line 8187) | enum perf_sw_ids {
type perf_branch_entry (line 8217) | struct perf_branch_entry {
type new_utsname (line 8229) | struct new_utsname {
type uts_namespace (line 8238) | struct uts_namespace {
type cgroup_namespace (line 8246) | struct cgroup_namespace {
type nsset (line 8254) | struct nsset {
type proc_ns_operations (line 8261) | struct proc_ns_operations {
type ucounts (line 8272) | struct ucounts {
type perf_guest_info_callbacks (line 8280) | struct perf_guest_info_callbacks {
type perf_cpu_context (line 8287) | struct perf_cpu_context
type perf_output_handle (line 8289) | struct perf_output_handle
type pmu (line 8291) | struct pmu {
type irq_domain_bus_token (line 8333) | enum irq_domain_bus_token {
type irq_domain_ops (line 8346) | struct irq_domain_ops
type irq_domain_chip_generic (line 8348) | struct irq_domain_chip_generic
type irq_domain (line 8350) | struct irq_domain {
type u32 (line 8369) | typedef u32 phandle;
type property (line 8371) | struct property
type device_node (line 8373) | struct device_node {
type cpuhp_state (line 8387) | enum cpuhp_state {
type perf_regs (line 8557) | struct perf_regs {
type kernel_cpustat (line 8562) | struct kernel_cpustat {
type kernel_stat (line 8566) | struct kernel_stat {
type u64_stats_sync (line 8571) | struct u64_stats_sync {}
type bpf_insn (line 8573) | struct bpf_insn {
type bpf_cgroup_storage_key (line 8581) | struct bpf_cgroup_storage_key {
type bpf_map_type (line 8586) | enum bpf_map_type {
type bpf_func_id (line 8768) | enum bpf_func_id {
type bpf_func_info (line 8908) | struct bpf_func_info {
type bpf_line_info (line 8913) | struct bpf_line_info {
type bpf_map (line 8920) | struct bpf_map
type btf (line 8922) | struct btf
type btf_type (line 8924) | struct btf_type
type bpf_prog_aux (line 8926) | struct bpf_prog_aux
type bpf_map_ops (line 8928) | struct bpf_map_ops {
type bpf_map_memory (line 8961) | struct bpf_map_memory {
type bpf_map (line 8966) | struct bpf_map {
type btf_header (line 9001) | struct btf_header {
type btf (line 9012) | struct btf {
type btf_type (line 9028) | struct btf_type {
type bpf_tramp_prog_type (line 9037) | enum bpf_tramp_prog_type {
type bpf_ksym (line 9045) | struct bpf_ksym {
type bpf_ctx_arg_aux (line 9054) | struct bpf_ctx_arg_aux
type bpf_trampoline (line 9056) | struct bpf_trampoline
type bpf_jit_poke_descriptor (line 9058) | struct bpf_jit_poke_descriptor
type bpf_prog_ops (line 9060) | struct bpf_prog_ops
type bpf_prog_offload (line 9062) | struct bpf_prog_offload
type bpf_func_info_aux (line 9064) | struct bpf_func_info_aux
type bpf_prog_stats (line 9066) | struct bpf_prog_stats
type bpf_prog_aux (line 9068) | struct bpf_prog_aux {
type bpf_prog_type (line 9122) | enum bpf_prog_type {
type bpf_attach_type (line 9155) | enum bpf_attach_type {
type sock_filter (line 9193) | struct sock_filter {
type sock_fprog_kern (line 9200) | struct sock_fprog_kern
type bpf_prog (line 9202) | struct bpf_prog {
type bpf_arg_type (line 9226) | enum bpf_arg_type {
type bpf_return_type (line 9252) | enum bpf_return_type {
type bpf_func_proto (line 9263) | struct bpf_func_proto {
type bpf_access_type (line 9281) | enum bpf_access_type {
type bpf_reg_type (line 9286) | enum bpf_reg_type {
type bpf_verifier_log (line 9312) | struct bpf_verifier_log
type bpf_insn_access_aux (line 9314) | struct bpf_insn_access_aux {
type bpf_prog_ops (line 9323) | struct bpf_prog_ops {
type bpf_verifier_ops (line 9327) | struct bpf_verifier_ops {
type net_device (line 9336) | struct net_device
type bpf_offload_dev (line 9338) | struct bpf_offload_dev
type bpf_prog_offload (line 9340) | struct bpf_prog_offload {
type bpf_prog_stats (line 9352) | struct bpf_prog_stats {
type btf_func_model (line 9358) | struct btf_func_model {
type bpf_trampoline (line 9364) | struct bpf_trampoline {
type bpf_func_info_aux (line 9382) | struct bpf_func_info_aux {
type bpf_jit_poke_descriptor (line 9387) | struct bpf_jit_poke_descriptor {
type bpf_ctx_arg_aux (line 9400) | struct bpf_ctx_arg_aux {
type bpf_cgroup_storage (line 9405) | struct bpf_cgroup_storage
type bpf_prog_array_item (line 9407) | struct bpf_prog_array_item {
type bpf_storage_buffer (line 9412) | struct bpf_storage_buffer
type bpf_cgroup_storage_map (line 9414) | struct bpf_cgroup_storage_map
type bpf_cgroup_storage (line 9416) | struct bpf_cgroup_storage {
type bpf_prog_array (line 9428) | struct bpf_prog_array {
type bpf_storage_buffer (line 9433) | struct bpf_storage_buffer {
type cgroup_taskset (line 9438) | struct cgroup_taskset
type cftype (line 9440) | struct cftype
type cgroup_subsys (line 9442) | struct cgroup_subsys {
type cgroup_rstat_cpu (line 9477) | struct cgroup_rstat_cpu {
type cgroup_root (line 9485) | struct cgroup_root {
type cftype (line 9498) | struct cftype {
type kmalloc_cache_type (line 9521) | enum kmalloc_cache_type {
type perf_callchain_entry (line 9528) | struct perf_callchain_entry {
type perf_raw_frag (line 9535) | struct perf_raw_frag {
type perf_raw_record (line 9545) | struct perf_raw_record {
type perf_branch_stack (line 9550) | struct perf_branch_stack {
type perf_cpu_context (line 9556) | struct perf_cpu_context {
type perf_output_handle (line 9573) | struct perf_output_handle {
type perf_addr_filter_range (line 9586) | struct perf_addr_filter_range {
type perf_sample_data (line 9591) | struct perf_sample_data {
type trace_entry (line 9626) | struct trace_entry {
type trace_array (line 9633) | struct trace_array
type tracer (line 9635) | struct tracer
type array_buffer (line 9637) | struct array_buffer
type ring_buffer_iter (line 9639) | struct ring_buffer_iter
type trace_iterator (line 9641) | struct trace_iterator {
type print_line_t (line 9666) | enum print_line_t {
type print_line_t (line 9673) | enum print_line_t
type trace_iterator (line 9673) | struct trace_iterator
type trace_event (line 9673) | struct trace_event
type trace_event_functions (line 9675) | struct trace_event_functions {
type trace_reg (line 9682) | enum trace_reg {
type trace_event_fields (line 9693) | struct trace_event_fields {
type trace_event_class (line 9707) | struct trace_event_class {
type trace_buffer (line 9718) | struct trace_buffer
type trace_event_file (line 9720) | struct trace_event_file
type trace_event_buffer (line 9722) | struct trace_event_buffer {
type trace_subsystem_dir (line 9732) | struct trace_subsystem_dir
type trace_event_file (line 9734) | struct trace_event_file {
type rnd_state (line 9805) | struct rnd_state {
type property (line 9812) | struct property {
type irq_fwspec (line 9819) | struct irq_fwspec {
type irq_data (line 9825) | struct irq_data
type irq_domain_ops (line 9827) | struct irq_domain_ops {
type acpi_table_header (line 9840) | struct acpi_table_header {
type acpi_generic_address (line 9852) | struct acpi_generic_address {
type acpi_table_fadt (line 9860) | struct acpi_table_fadt {
type acpi_irq_model_id (line 9919) | enum acpi_irq_model_id {
type con_scroll (line 9928) | enum con_scroll {
type vc_data (line 9933) | struct vc_data
type console_font (line 9935) | struct console_font
type consw (line 9937) | struct consw {
type tty_driver (line 9967) | struct tty_driver
type console (line 9969) | struct console {
type fprop_global (line 9985) | struct fprop_global {
type wb_stat_item (line 9991) | enum wb_stat_item {
type bdi_writeback_congested (line 9999) | struct bdi_writeback_congested {
type partition_meta_info (line 10004) | struct partition_meta_info {
type disk_part_tbl (line 10009) | struct disk_part_tbl {
type blk_zone (line 10016) | struct blk_zone
type blk_zone (line 10018) | struct blk_zone
type hd_geometry (line 10020) | struct hd_geometry
type pr_ops (line 10022) | struct pr_ops
type block_device_operations (line 10024) | struct block_device_operations {
type sg_io_v4 (line 10042) | struct sg_io_v4 {
type bsg_ops (line 10078) | struct bsg_ops {
type __u32 (line 10085) | typedef __u32 req_flags_t;
type request (line 10087) | struct request
type mq_rq_state (line 10089) | enum mq_rq_state {
type request (line 10095) | struct request {
type blk_zone (line 10149) | struct blk_zone {
type elv_merge (line 10160) | enum elv_merge {
type elevator_type (line 10167) | struct elevator_type
type blk_mq_alloc_data (line 10169) | struct blk_mq_alloc_data
type elevator_mq_ops (line 10171) | struct elevator_mq_ops {
type elv_fs_entry (line 10196) | struct elv_fs_entry
type blk_mq_debugfs_attr (line 10198) | struct blk_mq_debugfs_attr
type elevator_type (line 10200) | struct elevator_type {
type elevator_queue (line 10216) | struct elevator_queue {
type elv_fs_entry (line 10225) | struct elv_fs_entry {
type blk_mq_debugfs_attr (line 10231) | struct blk_mq_debugfs_attr {
type blk_mq_queue_data (line 10239) | struct blk_mq_queue_data
type blk_status_t (line 10241) | typedef blk_status_t queue_rq_fn(struct blk_mq_hw_ctx *, const struct bl...
type blk_mq_hw_ctx (line 10243) | struct blk_mq_hw_ctx
type blk_mq_hw_ctx (line 10245) | struct blk_mq_hw_ctx
type blk_mq_hw_ctx (line 10247) | struct blk_mq_hw_ctx
type blk_eh_timer_return (line 10249) | enum blk_eh_timer_return {
type blk_eh_timer_return (line 10254) | enum blk_eh_timer_return
type request (line 10254) | struct request
type blk_mq_hw_ctx (line 10256) | struct blk_mq_hw_ctx
type request (line 10258) | struct request
type blk_mq_hw_ctx (line 10260) | struct blk_mq_hw_ctx
type blk_mq_hw_ctx (line 10262) | struct blk_mq_hw_ctx
type blk_mq_tag_set (line 10264) | struct blk_mq_tag_set
type request (line 10264) | struct request
type blk_mq_tag_set (line 10266) | struct blk_mq_tag_set
type request (line 10266) | struct request
type request (line 10268) | struct request
type request_queue (line 10270) | struct request_queue
type blk_mq_tag_set (line 10272) | struct blk_mq_tag_set
type blk_mq_ops (line 10274) | struct blk_mq_ops {
type pr_type (line 10293) | enum pr_type {
type pr_ops (line 10302) | struct pr_ops {
type wb_domain (line 10310) | struct wb_domain {
type cpu_idle_type (line 10319) | enum cpu_idle_type {
type reboot_mode (line 10326) | enum reboot_mode {
type reboot_type (line 10335) | enum reboot_type {
type efi_status_t (line 10345) | typedef long unsigned int efi_status_t;
type u8 (line 10347) | typedef u8 efi_bool_t;
type u16 (line 10349) | typedef u16 efi_char16_t;
type guid_t (line 10351) | typedef guid_t efi_guid_t;
type efi_table_hdr_t (line 10353) | typedef struct {
type efi_memory_desc_t (line 10361) | typedef struct {
type efi_capsule_header_t (line 10370) | typedef struct {
type efi_time_t (line 10377) | typedef struct {
type efi_time_cap_t (line 10391) | typedef struct {
type efi_runtime_services_32_t (line 10397) | typedef struct {
type efi_status_t (line 10415) | typedef efi_status_t efi_get_time_t(efi_time_t *, efi_time_cap_t *);
type efi_status_t (line 10417) | typedef efi_status_t efi_set_time_t(efi_time_t *);
type efi_status_t (line 10419) | typedef efi_status_t efi_get_wakeup_time_t(efi_bool_t *, efi_bool_t *, e...
type efi_status_t (line 10421) | typedef efi_status_t efi_set_wakeup_time_t(efi_bool_t, efi_time_t *);
type efi_status_t (line 10423) | typedef efi_status_t efi_get_variable_t(efi_char16_t *, efi_guid_t *, u3...
type efi_status_t (line 10425) | typedef efi_status_t efi_get_next_variable_t(long unsigned int *, efi_ch...
type efi_status_t (line 10427) | typedef efi_status_t efi_set_variable_t(efi_char16_t *, efi_guid_t *, u3...
type efi_status_t (line 10429) | typedef efi_status_t efi_get_next_high_mono_count_t(u32 *);
type efi_status_t (line 10433) | typedef efi_status_t efi_query_variable_info_t(u32, u64 *, u64 *, u64 *);
type efi_status_t (line 10435) | typedef efi_status_t efi_update_capsule_t(efi_capsule_header_t **, long ...
type efi_status_t (line 10437) | typedef efi_status_t efi_query_capsule_caps_t(efi_capsule_header_t **, l...
type efi_runtime_services_t (line 10439) | typedef union {
type efi_memory_map (line 10460) | struct efi_memory_map {
type efi (line 10470) | struct efi {
type efi_rts_ids (line 10499) | enum efi_rts_ids {
type efi_runtime_work (line 10515) | struct efi_runtime_work {
type percpu_cluster (line 10527) | struct percpu_cluster {
type fs_value_type (line 10532) | enum fs_value_type {
type fs_parameter (line 10541) | struct fs_parameter {
type fc_log (line 10554) | struct fc_log {
type fs_context_operations (line 10563) | struct fs_context_operations {
type fs_parse_result (line 10572) | struct fs_parse_result {
type trace_event_raw_initcall_level (line 10582) | struct trace_event_raw_initcall_level {
type trace_event_raw_initcall_start (line 10588) | struct trace_event_raw_initcall_start {
type trace_event_raw_initcall_finish (line 10594) | struct trace_event_raw_initcall_finish {
type trace_event_data_offsets_initcall_level (line 10601) | struct trace_event_data_offsets_initcall_level {
type trace_event_data_offsets_initcall_start (line 10605) | struct trace_event_data_offsets_initcall_start {}
type trace_event_data_offsets_initcall_finish (line 10607) | struct trace_event_data_offsets_initcall_finish {}
type blacklist_entry (line 10615) | struct blacklist_entry {
type __u32 (line 10620) | typedef __u32 Elf32_Word;
type elf32_note (line 10622) | struct elf32_note {
type tlb_infos (line 10642) | enum tlb_infos {
type hrtimer_base_type (line 10655) | enum hrtimer_base_type {
type rseq_cs_flags_bit (line 10667) | enum rseq_cs_flags_bit {
type perf_event_task_context (line 10673) | enum perf_event_task_context {
type rseq_event_mask_bits (line 10680) | enum rseq_event_mask_bits {
type __u16 (line 10696) | typedef __u16 __le16;
type __u16 (line 10698) | typedef __u16 __be16;
type __u32 (line 10700) | typedef __u32 __be32;
type __u64 (line 10702) | typedef __u64 __be64;
type __u32 (line 10704) | typedef __u32 __wsum;
type u64 (line 10706) | typedef u64 uint64_t;
type slab_flags_t (line 10708) | typedef unsigned int slab_flags_t;
type raw_notifier_head (line 10710) | struct raw_notifier_head {
type llist_head (line 10714) | struct llist_head {
type call_single_data_t (line 10718) | typedef struct __call_single_data call_single_data_t;
type ida (line 10720) | struct ida {
type __u64 (line 10724) | typedef __u64 __addrpair;
type __u32 (line 10726) | typedef __u32 __portpair;
type possible_net_t (line 10728) | typedef struct {
type in6_addr (line 10732) | struct in6_addr {
type hlist_nulls_node (line 10740) | struct hlist_nulls_node {
type proto (line 10745) | struct proto
type inet_timewait_death_row (line 10747) | struct inet_timewait_death_row
type sock_common (line 10749) | struct sock_common {
type socket_lock_t (line 10810) | typedef struct {
type sk_buff (line 10816) | struct sk_buff
type sk_buff_head (line 10818) | struct sk_buff_head {
type u64 (line 10825) | typedef u64 netdev_features_t;
type sock_cgroup_data (line 10827) | struct sock_cgroup_data {
type sk_filter (line 10841) | struct sk_filter
type socket_wq (line 10843) | struct socket_wq
type xfrm_policy (line 10845) | struct xfrm_policy
type dst_entry (line 10847) | struct dst_entry
type socket (line 10849) | struct socket
type sock_reuseport (line 10851) | struct sock_reuseport
type bpf_sk_storage (line 10853) | struct bpf_sk_storage
type sock (line 10855) | struct sock {
type rhash_head (line 10955) | struct rhash_head {
type rhashtable (line 10959) | struct rhashtable
type rhashtable_compare_arg (line 10961) | struct rhashtable_compare_arg {
type u32 (line 10966) | typedef u32 (*rht_hashfn_t)(const void *, u32, u32);
type u32 (line 10968) | typedef u32 (*rht_obj_hashfn_t)(const void *, u32, u32);
type rhashtable_compare_arg (line 10970) | struct rhashtable_compare_arg
type rhashtable_params (line 10972) | struct rhashtable_params {
type bucket_table (line 10985) | struct bucket_table
type rhashtable (line 10987) | struct rhashtable {
type fs_struct (line 10999) | struct fs_struct {
type u32 (line 11009) | typedef u32 compat_uptr_t;
type compat_robust_list (line 11011) | struct compat_robust_list {
type s32 (line 11015) | typedef s32 compat_long_t;
type compat_robust_list_head (line 11017) | struct compat_robust_list_head {
type pipe_buffer (line 11023) | struct pipe_buffer
type pipe_inode_info (line 11025) | struct pipe_inode_info {
type scatterlist (line 11046) | struct scatterlist {
type iovec (line 11054) | struct iovec {
type kvec (line 11059) | struct kvec {
type iov_iter (line 11064) | struct iov_iter {
type __kernel_sa_family_t (line 11083) | typedef short unsigned int __kernel_sa_family_t;
type __kernel_sockaddr_storage (line 11085) | struct __kernel_sockaddr_storage {
type __kernel_sa_family_t (line 11095) | typedef __kernel_sa_family_t sa_family_t;
type sockaddr (line 11097) | struct sockaddr {
type msghdr (line 11102) | struct msghdr {
type sync_serial_settings (line 11116) | typedef struct {
type te1_settings (line 11122) | typedef struct {
type raw_hdlc_proto (line 11129) | typedef struct {
type fr_proto (line 11134) | typedef struct {
type fr_proto_pvc (line 11144) | typedef struct {
type fr_proto_pvc_info (line 11148) | typedef struct {
type cisco_proto (line 11153) | typedef struct {
type x25_hdlc_proto (line 11158) | typedef struct {
type ifmap (line 11167) | struct ifmap {
type if_settings (line 11176) | struct if_settings {
type ifreq (line 11191) | struct ifreq {
type vfsmount (line 11212) | struct vfsmount {
type ld_semaphore (line 11218) | struct ld_semaphore {
type tcflag_t (line 11226) | typedef unsigned int tcflag_t;
type cc_t (line 11228) | typedef unsigned char cc_t;
type speed_t (line 11230) | typedef unsigned int speed_t;
type ktermios (line 11232) | struct ktermios {
type winsize (line 11243) | struct winsize {
type tty_operations (line 11250) | struct tty_operations
type tty_ldisc (line 11252) | struct tty_ldisc
type termiox (line 11254) | struct termiox
type tty_port (line 11256) | struct tty_port
type tty_struct (line 11258) | struct tty_struct {
type read_descriptor_t (line 11310) | typedef struct {
type posix_acl_entry (line 11320) | struct posix_acl_entry {
type posix_acl (line 11329) | struct posix_acl {
type termiox (line 11336) | struct termiox {
type serial_icounter_struct (line 11343) | struct serial_icounter_struct
type serial_struct (line 11345) | struct serial_struct
type tty_operations (line 11347) | struct tty_operations {
type proc_dir_entry (line 11384) | struct proc_dir_entry
type tty_driver (line 11386) | struct tty_driver {
type tty_buffer (line 11411) | struct tty_buffer {
type tty_bufhead (line 11424) | struct tty_bufhead {
type tty_port_operations (line 11436) | struct tty_port_operations
type tty_port_client_operations (line 11438) | struct tty_port_client_operations
type tty_port (line 11440) | struct tty_port {
type tty_ldisc_ops (line 11465) | struct tty_ldisc_ops {
type tty_ldisc (line 11488) | struct tty_ldisc {
type tty_port_operations (line 11493) | struct tty_port_operations {
type tty_port_client_operations (line 11501) | struct tty_port_client_operations {
type prot_inuse (line 11506) | struct prot_inuse
type netns_core (line 11508) | struct netns_core {
type tcp_mib (line 11515) | struct tcp_mib
type ipstats_mib (line 11517) | struct ipstats_mib
type linux_mib (line 11519) | struct linux_mib
type udp_mib (line 11521) | struct udp_mib
type icmp_mib (line 11523) | struct icmp_mib
type icmpmsg_mib (line 11525) | struct icmpmsg_mib
type icmpv6_mib (line 11527) | struct icmpv6_mib
type icmpv6msg_mib (line 11529) | struct icmpv6msg_mib
type netns_mib (line 11531) | struct netns_mib {
type netns_packet (line 11547) | struct netns_packet {
type netns_unix (line 11552) | struct netns_unix {
type netns_nexthop (line 11557) | struct netns_nexthop {
type local_ports (line 11565) | struct local_ports {
type inet_hashinfo (line 11571) | struct inet_hashinfo
type inet_timewait_death_row (line 11573) | struct inet_timewait_death_row {
type ping_group_range (line 11594) | struct ping_group_range {
type siphash_key_t (line 11599) | typedef struct {
type ipv4_devconf (line 11603) | struct ipv4_devconf
type ip_ra_chain (line 11605) | struct ip_ra_chain
type fib_rules_ops (line 11607) | struct fib_rules_ops
type fib_table (line 11609) | struct fib_table
type inet_peer_base (line 11611) | struct inet_peer_base
type fqdir (line 11613) | struct fqdir
type xt_table (line 11615) | struct xt_table
type tcp_congestion_ops (line 11617) | struct tcp_congestion_ops
type tcp_fastopen_context (line 11619) | struct tcp_fastopen_context
type mr_table (line 11621) | struct mr_table
type fib_notifier_ops (line 11623) | struct fib_notifier_ops
type netns_ipv4 (line 11625) | struct netns_ipv4 {
type netns_sysctl_ipv6 (line 11769) | struct netns_sysctl_ipv6 {
type neighbour (line 11808) | struct neighbour
type dst_ops (line 11810) | struct dst_ops {
type ipv6_devconf (line 11834) | struct ipv6_devconf
type fib6_info (line 11836) | struct fib6_info
type rt6_info (line 11838) | struct rt6_info
type rt6_statistics (line 11840) | struct rt6_statistics
type fib6_table (line 11842) | struct fib6_table
type seg6_pernet_data (line 11844) | struct seg6_pernet_data
type netns_ipv6 (line 11846) | struct netns_ipv6 {
type nf_queue_handler (line 11899) | struct nf_queue_handler
type nf_logger (line 11901) | struct nf_logger
type nf_hook_entries (line 11903) | struct nf_hook_entries
type netns_nf (line 11905) | struct netns_nf {
type netns_xt (line 11916) | struct netns_xt {
type nf_ct_event_notifier (line 11922) | struct nf_ct_event_notifier
type nf_exp_event_notifier (line 11924) | struct nf_exp_event_notifier
type nf_generic_net (line 11926) | struct nf_generic_net {
type nf_tcp_net (line 11930) | struct nf_tcp_net {
type nf_udp_net (line 11937) | struct nf_udp_net {
type nf_icmp_net (line 11941) | struct nf_icmp_net {
type nf_dccp_net (line 11945) | struct nf_dccp_net {
type nf_sctp_net (line 11950) | struct nf_sctp_net {
type nf_ip_net (line 11954) | struct nf_ip_net {
type ct_pcpu (line 11964) | struct ct_pcpu
type ip_conntrack_stat (line 11966) | struct ip_conntrack_stat
type netns_ct (line 11968) | struct netns_ct {
type netns_nf_frag (line 11986) | struct netns_nf_frag {
type netns_bpf (line 11990) | struct netns_bpf {
type xfrm_policy_hash (line 11996) | struct xfrm_policy_hash {
type xfrm_policy_hthresh (line 12005) | struct xfrm_policy_hthresh {
type netns_xfrm (line 12014) | struct netns_xfrm {
type netns_xdp (line 12053) | struct netns_xdp {
type uevent_sock (line 12058) | struct uevent_sock
type net_generic (line 12060) | struct net_generic
type net (line 12062) | struct net {
type u64_stats_t (line 12123) | typedef struct {
type bpf_offloaded_map (line 12127) | struct bpf_offloaded_map
type bpf_map_dev_ops (line 12129) | struct bpf_map_dev_ops {
type bpf_offloaded_map (line 12136) | struct bpf_offloaded_map {
type net_device_stats (line 12147) | struct net_device_stats {
type netdev_hw_addr_list (line 12173) | struct netdev_hw_addr_list {
type rx_handler_result (line 12178) | enum rx_handler_result {
type rx_handler_result_t (line 12185) | typedef enum rx_handler_result rx_handler_result_t;
type rx_handler_result_t (line 12187) | typedef rx_handler_result_t rx_handler_func_t(struct sk_buff **);
type pcpu_dstats (line 12189) | struct pcpu_dstats
type netdev_tc_txq (line 12191) | struct netdev_tc_txq {
type sfp_bus (line 12196) | struct sfp_bus
type netdev_name_node (line 12198) | struct netdev_name_node
type dev_ifalias (line 12200) | struct dev_ifalias
type net_device_ops (line 12202) | struct net_device_ops
type ethtool_ops (line 12204) | struct ethtool_ops
type ndisc_ops (line 12206) | struct ndisc_ops
type header_ops (line 12208) | struct header_ops
type in_device (line 12210) | struct in_device
type inet6_dev (line 12212) | struct inet6_dev
type wireless_dev (line 12214) | struct wireless_dev
type wpan_dev (line 12216) | struct wpan_dev
type netdev_rx_queue (line 12218) | struct netdev_rx_queue
type mini_Qdisc (line 12220) | struct mini_Qdisc
type netdev_queue (line 12222) | struct netdev_queue
type cpu_rmap (line 12224) | struct cpu_rmap
type Qdisc (line 12226) | struct Qdisc
type xdp_dev_bulk_queue (line 12228) | struct xdp_dev_bulk_queue
type xps_dev_maps (line 12230) | struct xps_dev_maps
type netpoll_info (line 12232) | struct netpoll_info
type pcpu_lstats (line 12234) | struct pcpu_lstats
type pcpu_sw_netstats (line 12236) | struct pcpu_sw_netstats
type rtnl_link_ops (line 12238) | struct rtnl_link_ops
type phy_device (line 12240) | struct phy_device
type net_device (line 12242) | struct net_device {
type bpf_dispatcher_prog (line 12397) | struct bpf_dispatcher_prog {
type bpf_dispatcher (line 12402) | struct bpf_dispatcher {
type sk_buff_data_t (line 12412) | typedef unsigned int sk_buff_data_t;
type skb_ext (line 12414) | struct skb_ext
type sk_buff (line 12416) | struct sk_buff {
type sg_table (line 12529) | struct sg_table {
type suspend_state_t (line 12535) | typedef int suspend_state_t;
type suspend_stat_step (line 12537) | enum suspend_stat_step {
type suspend_stats (line 12548) | struct suspend_stats {
type s2idle_states (line 12567) | enum s2idle_states {
type pbe (line 12573) | struct pbe {
type xdr_buf (line 12593) | struct xdr_buf {
type rpc_rqst (line 12605) | struct rpc_rqst
type xdr_stream (line 12607) | struct xdr_stream {
type rpc_xprt (line 12618) | struct rpc_xprt
type rpc_task (line 12620) | struct rpc_task
type rpc_cred (line 12622) | struct rpc_cred
type rpc_rqst (line 12624) | struct rpc_rqst {
type rpc_rqst (line 12660) | struct rpc_rqst
type xdr_stream (line 12660) | struct xdr_stream
type rpc_rqst (line 12662) | struct rpc_rqst
type xdr_stream (line 12662) | struct xdr_stream
type rpc_procinfo (line 12664) | struct rpc_procinfo
type rpc_message (line 12666) | struct rpc_message {
type rpc_procinfo (line 12673) | struct rpc_procinfo {
type rpc_wait (line 12684) | struct rpc_wait {
type rpc_wait_queue (line 12690) | struct rpc_wait_queue
type rpc_call_ops (line 12692) | struct rpc_call_ops
type rpc_clnt (line 12694) | struct rpc_clnt
type rpc_task (line 12696) | struct rpc_task {
type rpc_timer (line 12729) | struct rpc_timer {
type rpc_wait_queue (line 12735) | struct rpc_wait_queue {
type rpc_call_ops (line 12746) | struct rpc_call_ops {
type rpc_pipe_dir_head (line 12753) | struct rpc_pipe_dir_head {
type rpc_rtt (line 12758) | struct rpc_rtt {
type rpc_timeout (line 12765) | struct rpc_timeout {
type rpc_xprt_switch (line 12773) | struct rpc_xprt_switch
type rpc_xprt_iter_ops (line 12775) | struct rpc_xprt_iter_ops
type rpc_xprt_iter (line 12777) | struct rpc_xprt_iter {
type rpc_auth (line 12783) | struct rpc_auth
type rpc_stat (line 12785) | struct rpc_stat
type rpc_iostats (line 12787) | struct rpc_iostats
type rpc_program (line 12789) | struct rpc_program
type rpc_clnt (line 12791) | struct rpc_clnt {
type rpc_xprt_ops (line 12829) | struct rpc_xprt_ops
type svc_xprt (line 12831) | struct svc_xprt
type rpc_xprt (line 12833) | struct rpc_xprt {
type rpc_credops (line 12895) | struct rpc_credops
type rpc_cred (line 12897) | struct rpc_cred {
type u32 (line 12909) | typedef u32 rpc_authflavor_t;
type ethhdr (line 12911) | struct ethhdr {
type flow_dissector (line 12917) | struct flow_dissector {
type flowi_tunnel (line 12922) | struct flowi_tunnel {
type flowi_common (line 12926) | struct flowi_common {
type flowi4 (line 12960) | struct flowi4 {
type flowi6 (line 12967) | struct flowi6 {
type flowidn (line 12976) | struct flowidn {
type flowi (line 12983) | struct flowi {
type ipstats_mib (line 12992) | struct ipstats_mib {
type icmp_mib (line 12997) | struct icmp_mib {
type icmpmsg_mib (line 13001) | struct icmpmsg_mib {
type icmpv6_mib (line 13005) | struct icmpv6_mib {
type icmpv6_mib_device (line 13009) | struct icmpv6_mib_device {
type icmpv6msg_mib (line 13013) | struct icmpv6msg_mib {
type icmpv6msg_mib_device (line 13017) | struct icmpv6msg_mib_device {
type tcp_mib (line 13021) | struct tcp_mib {
type udp_mib (line 13025) | struct udp_mib {
type linux_mib (line 13029) | struct linux_mib {
type inet_frags (line 13033) | struct inet_frags
type fqdir (line 13035) | struct fqdir {
type inet_frag_queue (line 13061) | struct inet_frag_queue
type inet_frags (line 13063) | struct inet_frags {
type frag_v4_compare_key (line 13075) | struct frag_v4_compare_key {
type frag_v6_compare_key (line 13084) | struct frag_v6_compare_key {
type inet_frag_queue (line 13092) | struct inet_frag_queue {
type fib_rule (line 13113) | struct fib_rule
type fib_lookup_arg (line 13115) | struct fib_lookup_arg
type fib_rule_hdr (line 13117) | struct fib_rule_hdr
type nlattr (line 13119) | struct nlattr
type netlink_ext_ack (line 13121) | struct netlink_ext_ack
type nla_policy (line 13123) | struct nla_policy
type fib_rules_ops (line 13125) | struct fib_rules_ops {
type tcp_ca_event (line 13150) | enum tcp_ca_event {
type ack_sample (line 13159) | struct ack_sample
type rate_sample (line 13161) | struct rate_sample
type tcp_congestion_ops (line 13165) | struct tcp_congestion_ops {
type fib_notifier_ops (line 13186) | struct fib_notifier_ops {
type xfrm_state (line 13195) | struct xfrm_state
type lwtunnel_state (line 13197) | struct lwtunnel_state
type dst_entry (line 13199) | struct dst_entry {
type hh_cache (line 13221) | struct hh_cache {
type neigh_table (line 13227) | struct neigh_table
type neigh_parms (line 13229) | struct neigh_parms
type neigh_ops (line 13231) | struct neigh_ops
type neighbour (line 13233) | struct neighbour {
type ipv6_stable_secret (line 13263) | struct ipv6_stable_secret {
type ipv6_devconf (line 13268) | struct ipv6_devconf {
type nf_queue_entry (line 13316) | struct nf_queue_entry
type nf_queue_handler (line 13318) | struct nf_queue_handler {
type nf_log_type (line 13323) | enum nf_log_type {
type u8 (line 13329) | typedef u8 u_int8_t;
type nf_loginfo (line 13331) | struct nf_loginfo
type net (line 13333) | struct net
type sk_buff (line 13333) | struct sk_buff
type net_device (line 13333) | struct net_device
type net_device (line 13333) | struct net_device
type nf_loginfo (line 13333) | struct nf_loginfo
type nf_logger (line 13335) | struct nf_logger {
type hlist_nulls_head (line 13342) | struct hlist_nulls_head {
type ip_conntrack_stat (line 13346) | struct ip_conntrack_stat {
type ct_pcpu (line 13361) | struct ct_pcpu {
type socket_state (line 13367) | typedef enum {
type socket_wq (line 13375) | struct socket_wq {
type proto_ops (line 13383) | struct proto_ops
type socket (line 13385) | struct socket {
type sk_buff (line 13398) | struct sk_buff
type proto_ops (line 13400) | struct proto_ops {
type swiotlb_force (line 13433) | enum swiotlb_force {
type pipe_buf_operations (line 13439) | struct pipe_buf_operations
type pipe_buffer (line 13441) | struct pipe_buffer {
type pipe_buf_operations (line 13450) | struct pipe_buf_operations {
type skb_ext (line 13457) | struct skb_ext {
type skb_checksum_ops (line 13465) | struct skb_checksum_ops {
type pernet_operations (line 13470) | struct pernet_operations {
type auth_cred (line 13480) | struct auth_cred {
type rpc_authops (line 13485) | struct rpc_authops
type rpc_cred_cache (line 13487) | struct rpc_cred_cache
type rpc_auth (line 13489) | struct rpc_auth {
type rpc_credops (line 13501) | struct rpc_credops {
type rpc_auth_create_args (line 13516) | struct rpc_auth_create_args
type rpcsec_gss_info (line 13518) | struct rpcsec_gss_info
type rpc_authops (line 13520) | struct rpc_authops {
type rpc_auth_create_args (line 13534) | struct rpc_auth_create_args {
type rpcsec_gss_oid (line 13539) | struct rpcsec_gss_oid {
type rpcsec_gss_info (line 13544) | struct rpcsec_gss_info {
type rpc_xprt_ops (line 13550) | struct rpc_xprt_ops {
type rpc_xprt_switch (line 13580) | struct rpc_xprt_switch {
type rpc_stat (line 13592) | struct rpc_stat {
type rpc_version (line 13605) | struct rpc_version
type rpc_program (line 13607) | struct rpc_program {
type ipv6_params (line 13616) | struct ipv6_params {
type dql (line 13621) | struct dql {
type ethtool_drvinfo (line 13647) | struct ethtool_drvinfo {
type ethtool_wolinfo (line 13662) | struct ethtool_wolinfo {
type ethtool_tunable (line 13669) | struct ethtool_tunable {
type ethtool_regs (line 13677) | struct ethtool_regs {
type ethtool_eeprom (line 13684) | struct ethtool_eeprom {
type ethtool_eee (line 13692) | struct ethtool_eee {
type ethtool_modinfo (line 13704) | struct ethtool_modinfo {
type ethtool_coalesce (line 13711) | struct ethtool_coalesce {
type ethtool_ringparam (line 13737) | struct ethtool_ringparam {
type ethtool_channels (line 13749) | struct ethtool_channels {
type ethtool_pauseparam (line 13761) | struct ethtool_pauseparam {
type ethtool_test (line 13768) | struct ethtool_test {
type ethtool_stats (line 13776) | struct ethtool_stats {
type ethtool_tcpip4_spec (line 13782) | struct ethtool_tcpip4_spec {
type ethtool_ah_espip4_spec (line 13790) | struct ethtool_ah_espip4_spec {
type ethtool_usrip4_spec (line 13797) | struct ethtool_usrip4_spec {
type ethtool_tcpip6_spec (line 13806) | struct ethtool_tcpip6_spec {
type ethtool_ah_espip6_spec (line 13814) | struct ethtool_ah_espip6_spec {
type ethtool_usrip6_spec (line 13821) | struct ethtool_usrip6_spec {
type ethtool_tcpip4_spec (line 13830) | struct ethtool_tcpip4_spec
type ethtool_tcpip4_spec (line 13831) | struct ethtool_tcpip4_spec
type ethtool_tcpip4_spec (line 13832) | struct ethtool_tcpip4_spec
type ethtool_ah_espip4_spec (line 13833) | struct ethtool_ah_espip4_spec
type ethtool_ah_espip4_spec (line 13834) | struct ethtool_ah_espip4_spec
type ethtool_usrip4_spec (line 13835) | struct ethtool_usrip4_spec
type ethtool_tcpip6_spec (line 13836) | struct ethtool_tcpip6_spec
type ethtool_tcpip6_spec (line 13837) | struct ethtool_tcpip6_spec
type ethtool_tcpip6_spec (line 13838) | struct ethtool_tcpip6_spec
type ethtool_ah_espip6_spec (line 13839) | struct ethtool_ah_espip6_spec
type ethtool_ah_espip6_spec (line 13840) | struct ethtool_ah_espip6_spec
type ethtool_usrip6_spec (line 13841) | struct ethtool_usrip6_spec
type ethhdr (line 13842) | struct ethhdr
type ethtool_flow_ext (line 13846) | struct ethtool_flow_ext {
type ethtool_rx_flow_spec (line 13854) | struct ethtool_rx_flow_spec {
type ethtool_rxnfc (line 13864) | struct ethtool_rxnfc {
type ethtool_flash (line 13876) | struct ethtool_flash {
type ethtool_dump (line 13882) | struct ethtool_dump {
type ethtool_ts_info (line 13890) | struct ethtool_ts_info {
type ethtool_fecparam (line 13900) | struct ethtool_fecparam {
type ethtool_link_settings (line 13907) | struct ethtool_link_settings {
type ethtool_phys_id_state (line 13926) | enum ethtool_phys_id_state {
type ethtool_link_ksettings (line 13933) | struct ethtool_link_ksettings {
type ethtool_ops (line 13942) | struct ethtool_ops {
type xdp_mem_info (line 14002) | struct xdp_mem_info {
type xdp_rxq_info (line 14007) | struct xdp_rxq_info {
type xdp_frame (line 14019) | struct xdp_frame {
type nlmsghdr (line 14029) | struct nlmsghdr {
type nlattr (line 14037) | struct nlattr {
type netlink_ext_ack (line 14042) | struct netlink_ext_ack {
type netlink_callback (line 14049) | struct netlink_callback {
type ndmsg (line 14069) | struct ndmsg {
type rtnl_link_stats64 (line 14079) | struct rtnl_link_stats64 {
type ifla_vf_guid (line 14106) | struct ifla_vf_guid {
type ifla_vf_stats (line 14111) | struct ifla_vf_stats {
type ifla_vf_info (line 14122) | struct ifla_vf_info {
type tc_stats (line 14136) | struct tc_stats {
type tc_sizespec (line 14147) | struct tc_sizespec {
type netdev_tx (line 14158) | enum netdev_tx {
type netdev_tx_t (line 14164) | typedef enum netdev_tx netdev_tx_t;
type header_ops (line 14166) | struct header_ops {
type gro_list (line 14175) | struct gro_list {
type napi_struct (line 14180) | struct napi_struct {
type xdp_umem (line 14199) | struct xdp_umem
type netdev_queue (line 14201) | struct netdev_queue {
type qdisc_skb_head (line 14223) | struct qdisc_skb_head {
type gnet_stats_basic_packed (line 14230) | struct gnet_stats_basic_packed {
type gnet_stats_queue (line 14235) | struct gnet_stats_queue {
type Qdisc_ops (line 14243) | struct Qdisc_ops
type qdisc_size_table (line 14245) | struct qdisc_size_table
type net_rate_estimator (line 14247) | struct net_rate_estimator
type gnet_stats_basic_cpu (line 14249) | struct gnet_stats_basic_cpu
type Qdisc (line 14251) | struct Qdisc {
type rps_map (line 14288) | struct rps_map {
type rps_dev_flow (line 14294) | struct rps_dev_flow {
type rps_dev_flow_table (line 14300) | struct rps_dev_flow_table {
type rps_sock_flow_table (line 14306) | struct rps_sock_flow_table {
type netdev_rx_queue (line 14319) | struct netdev_rx_queue {
type xps_map (line 14340) | struct xps_map {
type xps_dev_maps (line 14347) | struct xps_dev_maps {
type netdev_phys_item_id (line 14352) | struct netdev_phys_item_id {
type tc_setup_type (line 14357) | enum tc_setup_type {
type bpf_netdev_command (line 14378) | enum bpf_netdev_command {
type netdev_bpf (line 14388) | struct netdev_bpf {
type dev_ifalias (line 14410) | struct dev_ifalias {
type netdev_name_node (line 14415) | struct netdev_name_node {
type udp_tunnel_info (line 14422) | struct udp_tunnel_info
type devlink_port (line 14424) | struct devlink_port
type ip_tunnel_parm (line 14426) | struct ip_tunnel_parm
type net_device_ops (line 14428) | struct net_device_ops {
type neigh_parms (line 14503) | struct neigh_parms {
type pcpu_lstats (line 14518) | struct pcpu_lstats {
type pcpu_sw_netstats (line 14524) | struct pcpu_sw_netstats {
type nd_opt_hdr (line 14532) | struct nd_opt_hdr
type ndisc_options (line 14534) | struct ndisc_options
type prefix_info (line 14536) | struct prefix_info
type ndisc_ops (line 14538) | struct ndisc_ops {
type ipv6_devstat (line 14547) | struct ipv6_devstat {
type ifmcaddr6 (line 14554) | struct ifmcaddr6
type ifacaddr6 (line 14556) | struct ifacaddr6
type inet6_dev (line 14558) | struct inet6_dev {
type tcf_proto (line 14593) | struct tcf_proto
type tcf_block (line 14595) | struct tcf_block
type mini_Qdisc (line 14597) | struct mini_Qdisc {
type rtnl_link_ops (line 14605) | struct rtnl_link_ops {
type sd_flow_limit (line 14632) | struct sd_flow_limit {
type softnet_data (line 14640) | struct softnet_data {
type tcmsg (line 14704) | struct tcmsg {
type gnet_stats_basic_cpu (line 14714) | struct gnet_stats_basic_cpu {
type gnet_dump (line 14719) | struct gnet_dump {
type netlink_range_validation (line 14731) | struct netlink_range_validation {
type netlink_range_validation_signed (line 14736) | struct netlink_range_validation_signed {
type nla_policy (line 14741) | struct nla_policy {
type nl_info (line 14760) | struct nl_info {
type flow_action_hw_stats_bit (line 14768) | enum flow_action_hw_stats_bit {
type flow_block (line 14775) | struct flow_block {
type tc_setup_type (line 14779) | enum tc_setup_type
type qdisc_size_table (line 14781) | struct qdisc_size_table {
type Qdisc_class_ops (line 14789) | struct Qdisc_class_ops
type Qdisc_ops (line 14791) | struct Qdisc_ops {
type qdisc_walker (line 14815) | struct qdisc_walker
type Qdisc_class_ops (line 14817) | struct Qdisc_class_ops {
type tcf_chain (line 14834) | struct tcf_chain
type tcf_block (line 14836) | struct tcf_block {
type tcf_result (line 14860) | struct tcf_result
type tcf_proto_ops (line 14862) | struct tcf_proto_ops
type tcf_proto (line 14864) | struct tcf_proto {
type tcf_result (line 14880) | struct tcf_result {
type tcf_walker (line 14894) | struct tcf_walker
type tcf_proto_ops (line 14896) | struct tcf_proto_ops {
type tcf_chain (line 14921) | struct tcf_chain {
type sock_fprog_kern (line 14936) | struct sock_fprog_kern {
type sk_filter (line 14941) | struct sk_filter {
type bpf_redirect_info (line 14947) | struct bpf_redirect_info {
type pneigh_entry (line 14979) | struct pneigh_entry
type neigh_statistics (line 14981) | struct neigh_statistics
type neigh_hash_table (line 14983) | struct neigh_hash_table
type neigh_table (line 14985) | struct neigh_table {
type neigh_statistics (line 15018) | struct neigh_statistics {
type neigh_ops (line 15033) | struct neigh_ops {
type pneigh_entry (line 15041) | struct pneigh_entry {
type neigh_hash_table (line 15050) | struct neigh_hash_table {
type dst_metrics (line 15057) | struct dst_metrics {
type fib_rule_hdr (line 15078) | struct fib_rule_hdr {
type fib_rule_port_range (line 15090) | struct fib_rule_port_range {
type fib_kuid_range (line 15095) | struct fib_kuid_range {
type fib_rule (line 15100) | struct fib_rule {
type fib_lookup_arg (line 15128) | struct fib_lookup_arg {
type smc_hashinfo (line 15137) | struct smc_hashinfo
type request_sock_ops (line 15139) | struct request_sock_ops
type timewait_sock_ops (line 15141) | struct timewait_sock_ops
type udp_table (line 15143) | struct udp_table
type raw_hashinfo (line 15145) | struct raw_hashinfo
type proto (line 15147) | struct proto {
type request_sock (line 15209) | struct request_sock
type request_sock_ops (line 15211) | struct request_sock_ops {
type timewait_sock_ops (line 15223) | struct timewait_sock_ops {
type request_sock (line 15231) | struct request_sock {
type tsq_enum (line 15247) | enum tsq_enum {
type static_key_false_deferred (line 15256) | struct static_key_false_deferred {
type ip6_sf_list (line 15262) | struct ip6_sf_list {
type ifmcaddr6 (line 15271) | struct ifmcaddr6 {
type ifacaddr6 (line 15289) | struct ifacaddr6 {
type fib6_result (line 15301) | struct fib6_result
type fib6_nh (line 15303) | struct fib6_nh
type fib6_config (line 15305) | struct fib6_config
type ipv6_stub (line 15307) | struct ipv6_stub {
type fib6_result (line 15330) | struct fib6_result {
type ipv6_bpf_stub (line 15338) | struct ipv6_bpf_stub {
type nd_opt_hdr (line 15361) | struct nd_opt_hdr {
type ndisc_options (line 15366) | struct ndisc_options {
type prefix_info (line 15372) | struct prefix_info {
type ip6_ra_chain (line 15385) | struct ip6_ra_chain {
type rpc_xprt_iter_ops (line 15392) | struct rpc_xprt_iter_ops {
type rpc_version (line 15398) | struct rpc_version {
type nfs_fh (line 15405) | struct nfs_fh {
type nfs3_stable_how (line 15410) | enum nfs3_stable_how {
type nfs4_label (line 15417) | struct nfs4_label {
type nfs4_verifier (line 15424) | typedef struct {
type nfs4_stateid_struct (line 15428) | struct nfs4_stateid_struct {
type nfs4_stateid (line 15448) | typedef struct nfs4_stateid_struct nfs4_stateid;
type nfs_opnum4 (line 15450) | enum nfs_opnum4 {
type nfs4_string (line 15523) | struct nfs4_string {
type nfs_fsid (line 15528) | struct nfs_fsid {
type nfs4_threshold (line 15533) | struct nfs4_threshold {
type nfs_fattr (line 15542) | struct nfs_fattr {
type nfs_fsinfo (line 15578) | struct nfs_fsinfo {
type nfs_fsstat (line 15596) | struct nfs_fsstat {
type nfs_pathconf (line 15606) | struct nfs_pathconf {
type nfs4_change_info (line 15612) | struct nfs4_change_info {
type nfs4_slot (line 15618) | struct nfs4_slot
type nfs4_sequence_args (line 15620) | struct nfs4_sequence_args {
type nfs4_sequence_res (line 15626) | struct nfs4_sequence_res {
type nfs_open_context (line 15635) | struct nfs_open_context
type nfs_lock_context (line 15637) | struct nfs_lock_context {
type nfs4_state (line 15646) | struct nfs4_state
type nfs_open_context (line 15648) | struct nfs_open_context {
type nfs_auth_info (line 15663) | struct nfs_auth_info {
type pnfs_layoutdriver_type (line 15668) | struct pnfs_layoutdriver_type
type nfs_client (line 15670) | struct nfs_client
type nlm_host (line 15672) | struct nlm_host
type nfs_iostats (line 15674) | struct nfs_iostats
type nfs_server (line 15676) | struct nfs_server {
type nfs41_server_owner (line 15740) | struct nfs41_server_owner
type nfs41_server_scope (line 15742) | struct nfs41_server_scope
type nfs41_impl_id (line 15744) | struct nfs41_impl_id
type nfs_rpc_ops (line 15746) | struct nfs_rpc_ops
type nfs_subversion (line 15748) | struct nfs_subversion
type idmap (line 15750) | struct idmap
type nfs4_minor_version_ops (line 15752) | struct nfs4_minor_version_ops
type nfs4_slot_table (line 15754) | struct nfs4_slot_table
type nfs4_session (line 15756) | struct nfs4_session
type nfs_client (line 15758) | struct nfs_client {
type nfs_write_verifier (line 15805) | struct nfs_write_verifier {
type nfs_writeverf (line 15809) | struct nfs_writeverf {
type nfs_pgio_args (line 15814) | struct nfs_pgio_args {
type nfs_pgio_res (line 15833) | struct nfs_pgio_res {
type nfs_commitargs (line 15850) | struct nfs_commitargs {
type nfs_commitres (line 15858) | struct nfs_commitres {
type nfs_removeargs (line 15866) | struct nfs_removeargs {
type nfs_removeres (line 15872) | struct nfs_removeres {
type nfs_renameargs (line 15879) | struct nfs_renameargs {
type nfs_renameres (line 15887) | struct nfs_renameres {
type nfs_entry (line 15896) | struct nfs_entry {
type pnfs_ds_commit_info (line 15910) | struct pnfs_ds_commit_info {}
type nfs_page_array (line 15912) | struct nfs_page_array {
type nfs_page (line 15918) | struct nfs_page
type pnfs_layout_segment (line 15920) | struct pnfs_layout_segment
type nfs_pgio_completion_ops (line 15922) | struct nfs_pgio_completion_ops
type nfs_rw_ops (line 15924) | struct nfs_rw_ops
type nfs_io_completion (line 15926) | struct nfs_io_completion
type nfs_direct_req (line 15928) | struct nfs_direct_req
type nfs_pgio_header (line 15930) | struct nfs_pgio_header {
type nfs_pgio_completion_ops (line 15962) | struct nfs_pgio_completion_ops {
type rpc_task_setup (line 15969) | struct rpc_task_setup
type nfs_rw_ops (line 15971) | struct nfs_rw_ops {
type nfs_mds_commit_info (line 15979) | struct nfs_mds_commit_info {
type nfs_commit_data (line 15985) | struct nfs_commit_data
type nfs_commit_info (line 15987) | struct nfs_commit_info
type nfs_commit_completion_ops (line 15989) | struct nfs_commit_completion_ops {
type nfs_commit_data (line 15994) | struct nfs_commit_data {
type nfs_commit_info (line 16016) | struct nfs_commit_info {
type nfs_unlinkdata (line 16024) | struct nfs_unlinkdata {
type nfs_renamedata (line 16034) | struct nfs_renamedata {
type nlmclnt_operations (line 16049) | struct nlmclnt_operations
type nfs_access_entry (line 16051) | struct nfs_access_entry
type nfs_client_initdata (line 16053) | struct nfs_client_initdata
type nfs_rpc_ops (line 16055) | struct nfs_rpc_ops {
type nlmclnt_operations (line 16111) | struct nlmclnt_operations {
type nfs_access_entry (line 16117) | struct nfs_access_entry {
type nfs_client_initdata (line 16125) | struct nfs_client_initdata {
type nfs_seqid (line 16141) | struct nfs_seqid
type nfs_seqid_counter (line 16143) | struct nfs_seqid_counter
type nfs4_state_recovery_ops (line 16145) | struct nfs4_state_recovery_ops
type nfs4_state_maintenance_ops (line 16147) | struct nfs4_state_maintenance_ops
type nfs4_mig_recovery_ops (line 16149) | struct nfs4_mig_recovery_ops
type nfs4_minor_version_ops (line 16151) | struct nfs4_minor_version_ops {
type perf_branch_sample_type_shift (line 16169) | enum perf_branch_sample_type_shift {
type exception_stack_ordering (line 16191) | enum exception_stack_ordering {
type uuidcmp (line 16204) | struct uuidcmp {
type subprocess_info (line 16209) | struct subprocess_info {
type mdu_array_info_s (line 16224) | struct mdu_array_info_s {
type mdu_array_info_t (line 16245) | typedef struct mdu_array_info_s mdu_array_info_t;
type mdu_disk_info_s (line 16247) | struct mdu_disk_info_s {
type mdu_disk_info_t (line 16255) | typedef struct mdu_disk_info_s mdu_disk_info_t;
type hash (line 16257) | struct hash {
type dir_entry (line 16266) | struct dir_entry {
type state (line 16272) | enum state {
type u32 (line 16285) | typedef u32 note_buf_t[92];
type kimage_arch (line 16287) | struct kimage_arch {
type kimage_entry_t (line 16299) | typedef long unsigned int kimage_entry_t;
type kexec_segment (line 16301) | struct kexec_segment {
type kimage (line 16311) | struct kimage {
type ucount_type (line 16331) | enum ucount_type {
type flow_dissector_key_id (line 16345) | enum flow_dissector_key_id {
type nf_inet_hooks (line 16666) | enum nf_inet_hooks {
type tcp_conntrack (line 16687) | enum tcp_conntrack {
type ct_dccp_states (line 16705) | enum ct_dccp_states {
type ip_conntrack_dir (line 16719) | enum ip_conntrack_dir {
type sctp_conntrack (line 16725) | enum sctp_conntrack {
type udp_conntrack (line 16739) | enum udp_conntrack {
type netns_bpf_attach_type (line 16753) | enum netns_bpf_attach_type {
type skb_ext_id (line 16759) | enum skb_ext_id {
type sched_tunable_scaling (line 16764) | enum sched_tunable_scaling {
type audit_ntp_type (line 16771) | enum audit_ntp_type {
type pt_regs (line 16781) | struct pt_regs
type io_bitmap (line 16783) | struct io_bitmap {
type seccomp_data (line 16790) | struct seccomp_data {
type ksignal (line 16797) | struct ksignal {
type __large_struct (line 16803) | struct __large_struct {
type ctx_state (line 16814) | enum ctx_state {
type cpu_usage_stat (line 16835) | enum cpu_usage_stat {
type bpf_cgroup_storage_type (line 16857) | enum bpf_cgroup_storage_type {
type cgroup_subsys_id (line 16863) | enum cgroup_subsys_id {
type u8 (line 16871) | typedef u8 kprobe_opcode_t;
type arch_specific_insn (line 16873) | struct arch_specific_insn {
type kprobe (line 16879) | struct kprobe
type prev_kprobe (line 16881) | struct prev_kprobe {
type kprobe (line 16888) | struct kprobe
type pt_regs (line 16888) | struct pt_regs
type kprobe (line 16890) | struct kprobe
type pt_regs (line 16890) | struct pt_regs
type kprobe (line 16892) | struct kprobe
type pt_regs (line 16892) | struct pt_regs
type kprobe (line 16894) | struct kprobe {
type kprobe_ctlblk (line 16909) | struct kprobe_ctlblk {
type kretprobe_blackpoint (line 16916) | struct kretprobe_blackpoint {
type kprobe_insn_cache (line 16921) | struct kprobe_insn_cache {
type trace_event_raw_sys_enter (line 16930) | struct trace_event_raw_sys_enter {
type trace_event_raw_sys_exit (line 16937) | struct trace_event_raw_sys_exit {
type trace_event_data_offsets_sys_enter (line 16944) | struct trace_event_data_offsets_sys_enter {}
type trace_event_data_offsets_sys_exit (line 16946) | struct trace_event_data_offsets_sys_exit {}
type pt_regs (line 16948) | struct pt_regs
type pt_regs (line 16950) | struct pt_regs
type alt_instr (line 16952) | struct alt_instr {
type timens_offset (line 16961) | struct timens_offset {
type vm_fault_reason (line 16966) | enum vm_fault_reason {
type vm_special_mapping (line 16983) | struct vm_special_mapping {
type timens_offsets (line 16990) | struct timens_offsets {
type time_namespace (line 16995) | struct time_namespace {
type pvclock_vcpu_time_info (line 17005) | struct pvclock_vcpu_time_info {
type pvclock_vsyscall_time_info (line 17016) | struct pvclock_vsyscall_time_info {
type vdso_clock_mode (line 17024) | enum vdso_clock_mode {
type vdso_timestamp (line 17033) | struct vdso_timestamp {
type vdso_data (line 17038) | struct vdso_data {
type irq_desc (line 17055) | struct irq_desc
type irq_desc (line 17057) | struct irq_desc
type ms_hyperv_tsc_page (line 17059) | struct ms_hyperv_tsc_page {
type ms_hyperv_info (line 17066) | struct ms_hyperv_info {
type x86_pf_error_code (line 17075) | enum x86_pf_error_code {
type trace_event_raw_emulate_vsyscall (line 17084) | struct trace_event_raw_emulate_vsyscall {
type trace_event_data_offsets_emulate_vsyscall (line 17090) | struct trace_event_data_offsets_emulate_vsyscall {}
type perf_type_id (line 17100) | enum perf_type_id {
type perf_hw_id (line 17110) | enum perf_hw_id {
type perf_hw_cache_id (line 17124) | enum perf_hw_cache_id {
type perf_hw_cache_op_id (line 17135) | enum perf_hw_cache_op_id {
type perf_hw_cache_op_result_id (line 17142) | enum perf_hw_cache_op_result_id {
type perf_event_sample_format (line 17148) | enum perf_event_sample_format {
type perf_branch_sample_type (line 17175) | enum perf_branch_sample_type {
type perf_event_mmap_page (line 17197) | struct perf_event_mmap_page {
type ldt_struct (line 17233) | struct ldt_struct {
type x86_pmu_capability (line 17239) | struct x86_pmu_capability {
type stack_type (line 17249) | enum stack_type {
type stack_info (line 17259) | struct stack_info {
type stack_frame (line 17266) | struct stack_frame {
type stack_frame_ia32 (line 17271) | struct stack_frame_ia32 {
type perf_guest_switch_msr (line 17276) | struct perf_guest_switch_msr {
type device_attribute (line 17282) | struct device_attribute {
type perf_event_x86_regs (line 17288) | enum perf_event_x86_regs {
type perf_callchain_entry_ctx (line 17334) | struct perf_callchain_entry_ctx {
type perf_pmu_events_attr (line 17342) | struct perf_pmu_events_attr {
type perf_pmu_events_ht_attr (line 17348) | struct perf_pmu_events_ht_attr {
type pt_regs (line 17363) | struct pt_regs
type nmiaction (line 17365) | struct nmiaction {
type cyc2ns_data (line 17373) | struct cyc2ns_data {
type unwind_state (line 17379) | struct unwind_state {
type extra_reg_type (line 17394) | enum extra_reg_type {
type event_constraint (line 17404) | struct event_constraint {
type amd_nb (line 17417) | struct amd_nb {
type er_account (line 17424) | struct er_account {
type intel_shared_regs (line 17431) | struct intel_shared_regs {
type intel_excl_state_type (line 17437) | enum intel_excl_state_type {
type intel_excl_states (line 17443) | struct intel_excl_states {
type intel_excl_cntrs (line 17448) | struct intel_excl_cntrs {
type x86_perf_task_context (line 17465) | struct x86_perf_task_context
type cpu_hw_events (line 17467) | struct cpu_hw_events {
type x86_perf_task_context (line 17516) | struct x86_perf_task_context {
type extra_reg (line 17527) | struct extra_reg {
type x86_pmu_quirk (line 17551) | struct x86_pmu_quirk {
type x86_pmu (line 17563) | struct x86_pmu {
type sched_state (line 17654) | struct sched_state {
type perf_sched (line 17663) | struct perf_sched {
type pao_T__ (line 17673) | typedef int pao_T__;
type pto_T_____2 (line 17675) | typedef int pto_T_____2;
type pao_T_____2 (line 17677) | typedef unsigned int pao_T_____2;
type migratetype (line 17679) | enum migratetype {
type lru_list (line 17688) | enum lru_list {
type zone_watermarks (line 17697) | enum zone_watermarks {
type perf_msr (line 17710) | struct perf_msr {
type hrtimer_mode (line 17719) | enum hrtimer_mode {
type x86_cpu_id (line 17737) | struct x86_cpu_id {
type perf_rapl_events (line 17746) | enum perf_rapl_events {
type rapl_pmu (line 17756) | struct rapl_pmu {
type rapl_pmus (line 17766) | struct rapl_pmus {
type rapl_model (line 17772) | struct rapl_model {
type amd_uncore (line 17779) | struct amd_uncore {
type pci_power_t (line 17792) | typedef int pci_power_t;
type pci_channel_state_t (line 17794) | typedef unsigned int pci_channel_state_t;
type pci_dev_flags_t (line 17796) | typedef short unsigned int pci_dev_flags_t;
type pci_bus (line 17798) | struct pci_bus
type pci_slot (line 17800) | struct pci_slot
type aer_stats (line 17802) | struct aer_stats
type pci_driver (line 17804) | struct pci_driver
type pcie_link_state (line 17806) | struct pcie_link_state
type pci_vpd (line 17808) | struct pci_vpd
type pci_sriov (line 17810) | struct pci_sriov
type pci_dev (line 17812) | struct pci_dev {
type pci_device_id (line 17930) | struct pci_device_id {
type hotplug_slot (line 17940) | struct hotplug_slot
type pci_slot (line 17942) | struct pci_slot {
type pci_bus_flags_t (line 17950) | typedef short unsigned int pci_bus_flags_t;
type pci_ops (line 17952) | struct pci_ops
type msi_controller (line 17954) | struct msi_controller
type pci_bus (line 17956) | struct pci_bus {
type pci_channel_state (line 17994) | enum pci_channel_state {
type pcie_reset_state_t (line 18000) | typedef unsigned int pcie_reset_state_t;
type pci_dynids (line 18002) | struct pci_dynids {
type pci_error_handlers (line 18007) | struct pci_error_handlers
type pci_driver (line 18009) | struct pci_driver {
type pci_ops (line 18025) | struct pci_ops {
type pci_ers_result_t (line 18033) | typedef unsigned int pci_ers_result_t;
type pci_error_handlers (line 18035) | struct pci_error_handlers {
type pcie_bus_config_types (line 18044) | enum pcie_bus_config_types {
type syscore_ops (line 18052) | struct syscore_ops {
type ibs_states (line 18059) | enum ibs_states {
type cpu_perf_ibs (line 18067) | struct cpu_perf_ibs {
type perf_ibs (line 18072) | struct perf_ibs {
type perf_ibs_data (line 18089) | struct perf_ibs_data {
type amd_iommu (line 18098) | struct amd_iommu
type perf_amd_iommu (line 18100) | struct perf_amd_iommu {
type amd_iommu_event_desc (line 18111) | struct amd_iommu_event_desc {
type perf_msr_id (line 18116) | enum perf_msr_id {
type x86_cpu_desc (line 18128) | struct x86_cpu_desc {
type pageflags (line 18189) | enum pageflags {
type bts_ctx (line 18227) | struct bts_ctx {
type bts_phys (line 19256) | struct bts_phys {
type bts_buffer (line 19263) | struct bts_buffer {
type pebs_basic (line 19276) | struct pebs_basic {
type pebs_meminfo (line 19283) | struct pebs_meminfo {
type pebs_gprs (line 19290) | struct pebs_gprs {
type pebs_xmm (line 19311) | struct pebs_xmm {
type pebs_lbr_entry (line 19315) | struct pebs_lbr_entry {
type pebs_lbr (line 19321) | struct pebs_lbr {
type x86_perf_regs (line 19325) | struct x86_perf_regs {
type insn_attr_t (line 19330) | typedef unsigned int insn_attr_t;
type insn_byte_t (line 19332) | typedef unsigned char insn_byte_t;
type insn_value_t (line 19334) | typedef int insn_value_t;
type insn_field (line 19336) | struct insn_field {
type insn (line 19345) | struct insn {
type perf_event_header (line 19387) | struct perf_event_header {
type pebs_record_core (line 19410) | struct pebs_record_core {
type pebs_record_nhm (line 19431) | struct pebs_record_nhm {
type pebs_record_skl (line 19471) | struct pebs_record_skl {
type bts_record (line 19499) | struct bts_record {
type P4_EVENTS (line 19559) | enum P4_EVENTS {
type P4_EVENT_OPCODES (line 19608) | enum P4_EVENT_OPCODES {
type P4_ESCR_EMASKS (line 19657) | enum P4_ESCR_EMASKS {
type P4_PEBS_METRIC (line 19806) | enum P4_PEBS_METRIC {
type p4_event_bind (line 19820) | struct p4_event_bind {
type p4_pebs_bind (line 19828) | struct p4_pebs_bind {
type p4_event_alias (line 19833) | struct p4_event_alias {
type cpuid_regs_idx (line 19838) | enum cpuid_regs_idx {
type dev_ext_attribute (line 19845) | struct dev_ext_attribute {
type pt_capabilities (line 19850) | enum pt_capabilities {
type perf_addr_filter_action_t (line 19869) | enum perf_addr_filter_action_t {
type perf_addr_filter (line 19875) | struct perf_addr_filter {
type topa_entry (line 19883) | struct topa_entry {
type pt_pmu (line 19896) | struct pt_pmu {
type topa (line 19906) | struct topa
type pt_buffer (line 19908) | struct pt_buffer {
type topa (line 19927) | struct topa {
type pt_filter (line 19935) | struct pt_filter {
type pt_filters (line 19941) | struct pt_filters {
type pt (line 19946) | struct pt {
type pt_cap_desc (line 19955) | struct pt_cap_desc {
type pt_address_range (line 19962) | struct pt_address_range {
type topa_page (line 19968) | struct topa_page {
type acpi_device (line 19973) | struct acpi_device
type pci_sysdata (line 19975) | struct pci_sysdata {
type pci_extra_dev (line 19983) | struct pci_extra_dev {
type intel_uncore_pmu (line 19987) | struct intel_uncore_pmu
type intel_uncore_ops (line 19989) | struct intel_uncore_ops
type uncore_event_desc (line 19991) | struct uncore_event_desc
type freerunning_counters (line 19993) | struct freerunning_counters
type intel_uncore_type (line 19995) | struct intel_uncore_type {
type intel_uncore_box (line 20027) | struct intel_uncore_box
type intel_uncore_pmu (line 20029) | struct intel_uncore_pmu {
type intel_uncore_ops (line 20040) | struct intel_uncore_ops {
type uncore_event_desc (line 20053) | struct uncore_event_desc {
type freerunning_counters (line 20058) | struct freerunning_counters {
type intel_uncore_extra_reg (line 20067) | struct intel_uncore_extra_reg {
type intel_uncore_box (line 20075) | struct intel_uncore_box {
type pci2phy_map (line 20098) | struct pci2phy_map {
type intel_uncore_init_fun (line 20104) | struct intel_uncore_init_fun {
type perf_snb_uncore_imc_freerunning_types (line 20125) | enum perf_snb_uncore_imc_freerunning_types {
type imc_uncore_pci_dev (line 20130) | struct imc_uncore_pci_dev {
type perf_tgl_uncore_imc_freerunning_types (line 20135) | enum perf_tgl_uncore_imc_freerunning_types {
type perf_uncore_iio_freerunning_type_id (line 20193) | enum perf_uncore_iio_freerunning_type_id {
type perf_uncore_snr_iio_freerunning_type_id (line 20208) | enum perf_uncore_snr_iio_freerunning_type_id {
type perf_uncore_snr_imc_freerunning_type_id (line 20218) | enum perf_uncore_snr_imc_freerunning_type_id {
type perf_uncore_icx_iio_freerunning_type_id (line 20224) | enum perf_uncore_icx_iio_freerunning_type_id {
type perf_uncore_icx_imc_freerunning_type_id (line 20236) | enum perf_uncore_icx_imc_freerunning_type_id {
type cstate_model (line 20243) | struct cstate_model {
type perf_cstate_core_events (line 20249) | enum perf_cstate_core_events {
type perf_cstate_pkg_events (line 20257) | enum perf_cstate_pkg_events {
type real_mode_header (line 20268) | struct real_mode_header {
type trampoline_header (line 20280) | struct trampoline_header {
type xfeature (line 20287) | enum xfeature {
type pkru_state (line 20301) | struct pkru_state {
type show_regs_mode (line 20306) | enum show_regs_mode {
type shared_info (line 20312) | struct shared_info
type start_info (line 20314) | struct start_info
type which_selector (line 20316) | enum which_selector {
type task_struct (line 20321) | struct task_struct
type u64 (line 20323) | typedef u64 pto_T_____4;
type sigcontext_64 (line 20325) | struct sigcontext_64 {
type sigaltstack (line 20356) | struct sigaltstack {
type stack_t (line 20362) | typedef struct sigaltstack stack_t;
type siginfo (line 20364) | struct siginfo {
type ucontext (line 20376) | struct ucontext {
type u32 (line 20384) | typedef u32 compat_sigset_word;
type compat_sigset_t (line 20386) | typedef struct {
type mce (line 20390) | struct mce {
type smca_hwid (line 20420) | struct smca_hwid {
type smca_bank (line 20427) | struct smca_bank {
type kernel_vm86_regs (line 20433) | struct kernel_vm86_regs {
type rt_sigframe (line 20445) | struct rt_sigframe {
type siginfo_t (line 20451) | typedef struct siginfo siginfo_t;
type s32 (line 20453) | typedef s32 compat_clock_t;
type s32 (line 20455) | typedef s32 compat_pid_t;
type s32 (line 20457) | typedef s32 compat_timer_t;
type s32 (line 20459) | typedef s32 compat_int_t;
type u32 (line 20461) | typedef u32 __compat_uid32_t;
type compat_sigval_t (line 20468) | typedef union compat_sigval compat_sigval_t;
type compat_siginfo (line 20470) | struct compat_siginfo {
type compat_siginfo_t (line 20524) | typedef struct compat_siginfo compat_siginfo_t;
type bug_trap_type (line 20526) | enum bug_trap_type {
type die_val (line 20532) | enum die_val {
type kernel_gp_hint (line 20547) | enum kernel_gp_hint {
type bad_iret_stack (line 20553) | struct bad_iret_stack {
type idt_bits (line 20565) | struct idt_bits {
type gate_struct (line 20573) | struct gate_struct {
type gate_desc (line 20582) | typedef struct gate_struct gate_desc;
type idt_data (line 20584) | struct idt_data {
type irqreturn (line 20591) | enum irqreturn {
type irqreturn_t (line 20597) | typedef enum irqreturn irqreturn_t;
type irqreturn_t (line 20599) | typedef irqreturn_t (*irq_handler_t)(int, void *);
type irqaction (line 20601) | struct irqaction {
type irq_affinity_notify (line 20621) | struct irq_affinity_notify {
type irqchip_irq_state (line 20629) | enum irqchip_irq_state {
type irq_desc___2 (line 20636) | struct irq_desc___2
type irq_desc___2 (line 20638) | struct irq_desc___2
type msi_desc (line 20640) | struct msi_desc
type irq_common_data (line 20642) | struct irq_common_data {
type irq_chip (line 20651) | struct irq_chip
type irq_data (line 20653) | struct irq_data {
type irq_desc___2 (line 20664) | struct irq_desc___2 {
type msi_msg (line 20707) | struct msi_msg
type irq_chip (line 20709) | struct irq_chip {
type irq_desc___2 (line 20748) | struct irq_desc___2
type trace_event_raw_x86_irq_vector (line 20750) | struct trace_event_raw_x86_irq_vector {
type trace_event_raw_vector_config (line 20756) | struct trace_event_raw_vector_config {
type trace_event_raw_vector_mod (line 20765) | struct trace_event_raw_vector_mod {
type trace_event_raw_vector_reserve (line 20775) | struct trace_event_raw_vector_reserve {
type trace_event_raw_vector_alloc (line 20782) | struct trace_event_raw_vector_alloc {
type trace_event_raw_vector_alloc_managed (line 20791) | struct trace_event_raw_vector_alloc_managed {
type trace_event_raw_vector_activate (line 20799) | struct trace_event_raw_vector_activate {
type trace_event_raw_vector_teardown (line 20808) | struct trace_event_raw_vector_teardown {
type trace_event_raw_vector_setup (line 20816) | struct trace_event_raw_vector_setup {
type trace_event_raw_vector_free_moved (line 20824) | struct trace_event_raw_vector_free_moved {
type trace_event_data_offsets_x86_irq_vector (line 20833) | struct trace_event_data_offsets_x86_irq_vector {}
type trace_event_data_offsets_vector_config (line 20835) | struct trace_event_data_offsets_vector_config {}
type trace_event_data_offsets_vector_mod (line 20837) | struct trace_event_data_offsets_vector_mod {}
type trace_event_data_offsets_vector_reserve (line 20839) | struct trace_event_data_offsets_vector_reserve {}
type trace_event_data_offsets_vector_alloc (line 20841) | struct trace_event_data_offsets_vector_alloc {}
type trace_event_data_offsets_vector_alloc_managed (line 20843) | struct trace_event_data_offsets_vector_alloc_managed {}
type trace_event_data_offsets_vector_activate (line 20845) | struct trace_event_data_offsets_vector_activate {}
type trace_event_data_offsets_vector_teardown (line 20847) | struct trace_event_data_offsets_vector_teardown {}
type trace_event_data_offsets_vector_setup (line 20849) | struct trace_event_data_offsets_vector_setup {}
type trace_event_data_offsets_vector_free_moved (line 20851) | struct trace_event_data_offsets_vector_free_moved {}
type irq_desc___2 (line 20921) | struct irq_desc___2
type pt_regs (line 20923) | struct pt_regs
type estack_pages (line 20925) | struct estack_pages {
type clocksource (line 20931) | struct clocksource {
type clock_event_state (line 20956) | enum clock_event_state {
type clock_event_device (line 20964) | struct clock_event_device {
type irq_affinity_desc (line 21001) | struct irq_affinity_desc {
type msi_msg (line 21006) | struct msi_msg {
type platform_msi_priv_data (line 21012) | struct platform_msi_priv_data
type platform_msi_desc (line 21014) | struct platform_msi_desc {
type fsl_mc_msi_desc (line 21019) | struct fsl_mc_msi_desc {
type ti_sci_inta_msi_desc (line 21023) | struct ti_sci_inta_msi_desc {
type msi_desc (line 21027) | struct msi_desc {
type irq_chip_regs (line 21061) | struct irq_chip_regs {
type irq_chip_type (line 21071) | struct irq_chip_type {
type irq_chip_generic (line 21080) | struct irq_chip_generic {
type irq_gc_flags (line 21103) | enum irq_gc_flags {
type irq_domain_chip_generic (line 21111) | struct irq_domain_chip_generic {
type legacy_pic (line 21120) | struct legacy_pic {
type refcount_saturation_type (line 21133) | enum refcount_saturation_type {
type lockdown_reason (line 21141) | enum lockdown_reason {
type lockdep_ok (line 21168) | enum lockdep_ok {
type machine_ops (line 21175) | struct machine_ops {
type trace_event_raw_nmi_handler (line 21184) | struct trace_event_raw_nmi_handler {
type trace_event_data_offsets_nmi_handler (line 21192) | struct trace_event_data_offsets_nmi_handler {}
type nmi_desc (line 21196) | struct nmi_desc {
type nmi_stats (line 21201) | struct nmi_stats {
type nmi_states (line 21208) | enum nmi_states {
type pto_T_____7 (line 21214) | typedef enum nmi_states pto_T_____7;
type pto_T_____8 (line 21216) | typedef bool pto_T_____8;
type ldttss_desc (line 21224) | struct ldttss_desc {
type ldt_desc (line 21239) | typedef struct ldttss_desc ldt_desc;
type user_desc (line 21241) | struct user_desc {
type mmu_gather_batch (line 21254) | struct mmu_gather_batch {
type mmu_gather (line 21261) | struct mmu_gather {
type hvm_start_info (line 21280) | struct hvm_start_info {
type setup_data (line 21293) | struct setup_data {
type setup_indirect (line 21300) | struct setup_indirect {
type efi_secureboot_mode (line 21307) | enum efi_secureboot_mode {
type acpi_table_ibft (line 21314) | struct acpi_table_ibft {
type hstate (line 21319) | struct hstate {
type xen_domain_type (line 21338) | enum xen_domain_type {
type efi_scratch (line 21344) | struct efi_scratch {
type msi_controller (line 21349) | struct msi_controller {
type pci_raw_ops (line 21359) | struct pci_raw_ops {
type clock_event_device___2 (line 21364) | struct clock_event_device___2
type jump_label_type (line 21366) | enum jump_label_type {
type __kernel_old_uid_t (line 21385) | typedef short unsigned int __kernel_old_uid_t;
type __kernel_old_gid_t (line 21387) | typedef short unsigned int __kernel_old_gid_t;
type __kernel_fsid_t (line 21389) | typedef struct {
type __kernel_old_uid_t (line 21393) | typedef __kernel_old_uid_t old_uid_t;
type __kernel_old_gid_t (line 21395) | typedef __kernel_old_gid_t old_gid_t;
type kernel_clone_args (line 21397) | struct kernel_clone_args {
type kstatfs (line 21413) | struct kstatfs {
type stat64 (line 21428) | struct stat64 {
type mmap_arg_struct32 (line 21450) | struct mmap_arg_struct32 {
type vm_unmapped_area_info (line 21459) | struct vm_unmapped_area_info {
type align_flags (line 21468) | enum align_flags {
type change_member (line 21493) | struct change_member {
type iommu_fault_param (line 21498) | struct iommu_fault_param
type iommu_fwspec (line 21500) | struct iommu_fwspec
type dev_iommu (line 21502) | struct dev_iommu {
type of_phandle_args (line 21510) | struct of_phandle_args {
type iommu_fault_unrecoverable (line 21516) | struct iommu_fault_unrecoverable {
type iommu_fault_page_request (line 21525) | struct iommu_fault_page_request {
type iommu_fault (line 21534) | struct iommu_fault {
type iommu_page_response (line 21544) | struct iommu_page_response {
type iommu_inv_addr_info (line 21552) | struct iommu_inv_addr_info {
type iommu_inv_pasid_info (line 21561) | struct iommu_inv_pasid_info {
type iommu_cache_invalidate_info (line 21567) | struct iommu_cache_invalidate_info {
type iommu_gpasid_bind_data_vtd (line 21578) | struct iommu_gpasid_bind_data_vtd {
type iommu_gpasid_bind_data (line 21584) | struct iommu_gpasid_bind_data {
type iommu_domain (line 21598) | struct iommu_domain
type device (line 21598) | struct device
type iommu_domain_geometry (line 21600) | struct iommu_domain_geometry {
type iommu_domain (line 21606) | struct iommu_domain {
type iommu_fault (line 21616) | struct iommu_fault
type iommu_resv_type (line 21618) | enum iommu_resv_type {
type iommu_resv_region (line 21626) | struct iommu_resv_region {
type iommu_iotlb_gather (line 21634) | struct iommu_iotlb_gather {
type iommu_device (line 21640) | struct iommu_device {
type iommu_sva (line 21647) | struct iommu_sva {
type iommu_fault_event (line 21651) | struct iommu_fault_event {
type iommu_fault_param (line 21656) | struct iommu_fault_param {
type iommu_fwspec (line 21663) | struct iommu_fwspec {
type iommu_table_entry (line 21672) | struct iommu_table_entry {
type dmi_field (line 21680) | enum dmi_field {
type cpu (line 21717) | struct cpu {
type x86_cpu (line 21723) | struct x86_cpu {
type debugfs_blob_wrapper (line 21727) | struct debugfs_blob_wrapper {
type setup_data_node (line 21732) | struct setup_data_node {
type die_args (line 21740) | struct die_args {
type smp_alt_module (line 21748) | struct smp_alt_module {
type temp_mm_state_t (line 21758) | typedef struct {
type text_poke_loc (line 21762) | struct text_poke_loc {
type bp_patching_desc (line 21769) | struct bp_patching_desc {
type paravirt_patch_site (line 21775) | struct paravirt_patch_site
type user_i387_struct (line 21777) | struct user_i387_struct {
type user_regs_struct (line 21791) | struct user_regs_struct {
type user (line 21821) | struct user {
type u_int (line 21863) | typedef unsigned int u_int;
type cycles_t (line 21865) | typedef long long unsigned int cycles_t;
type system_counterval_t (line 21867) | struct system_counterval_t {
type plist_head (line 21904) | struct plist_head {
type pm_qos_type (line 21908) | enum pm_qos_type {
type pm_qos_constraints (line 21914) | struct pm_qos_constraints {
type freq_constraints (line 21923) | struct freq_constraints {
type pm_qos_flags (line 21930) | struct pm_qos_flags {
type dev_pm_qos_request (line 21935) | struct dev_pm_qos_request
type dev_pm_qos (line 21937) | struct dev_pm_qos {
type pm_qos_flags_request (line 21947) | struct pm_qos_flags_request {
type freq_qos_req_type (line 21952) | enum freq_qos_req_type {
type freq_qos_request (line 21957) | struct freq_qos_request {
type dev_pm_qos_req_type (line 21963) | enum dev_pm_qos_req_type {
type dev_pm_qos_request (line 21971) | struct dev_pm_qos_request {
type cpufreq_table_sorting (line 21981) | enum cpufreq_table_sorting {
type cpufreq_cpuinfo (line 21987) | struct cpufreq_cpuinfo {
type cpufreq_stats (line 21993) | struct cpufreq_stats
type clk (line 21995) | struct clk
type cpufreq_governor (line 21997) | struct cpufreq_governor
type cpufreq_frequency_table (line 21999) | struct cpufreq_frequency_table
type thermal_cooling_device (line 22001) | struct thermal_cooling_device
type cpufreq_policy (line 22003) | struct cpufreq_policy {
type cpufreq_governor (line 22048) | struct cpufreq_governor {
type cpufreq_frequency_table (line 22062) | struct cpufreq_frequency_table {
type cpufreq_freqs (line 22068) | struct cpufreq_freqs {
type freq_attr (line 22075) | struct freq_attr {
type cyc2ns (line 22081) | struct cyc2ns {
type muldiv (line 22086) | struct muldiv {
type freq_desc (line 22091) | struct freq_desc {
type dmi_strmatch (line 22098) | struct dmi_strmatch {
type dmi_system_id (line 22104) | struct dmi_system_id {
type pdev_archdata (line 22111) | struct pdev_archdata {}
type mfd_cell (line 22113) | struct mfd_cell
type platform_device_id (line 22115) | struct platform_device_id
type platform_device (line 22117) | struct platform_device {
type platform_device_id (line 22132) | struct platform_device_id {
type rtc_time (line 22137) | struct rtc_time {
type pnp_device_id (line 22149) | struct pnp_device_id {
type pnp_card_device_id (line 22154) | struct pnp_card_device_id {
type pnp_protocol (line 22162) | struct pnp_protocol
type pnp_id (line 22164) | struct pnp_id
type pnp_card (line 22166) | struct pnp_card {
type pnp_dev (line 22182) | struct pnp_dev
type pnp_protocol (line 22184) | struct pnp_protocol {
type pnp_id (line 22199) | struct pnp_id {
type pnp_card_driver (line 22204) | struct pnp_card_driver
type pnp_card_link (line 22206) | struct pnp_card_link {
type pnp_driver (line 22213) | struct pnp_driver {
type pnp_card_driver (line 22225) | struct pnp_card_driver {
type pnp_dev (line 22237) | struct pnp_dev {
type sfi_rtc_table_entry (line 22262) | struct sfi_rtc_table_entry {
type intel_mid_cpu_type (line 22267) | enum intel_mid_cpu_type {
type intel_mid_timer_options (line 22273) | enum intel_mid_timer_options {
type tss_desc (line 22279) | typedef struct ldttss_desc tss_desc;
type idle_boot_override (line 22281) | enum idle_boot_override {
type tick_broadcast_mode (line 22288) | enum tick_broadcast_mode {
type tick_broadcast_state (line 22294) | enum tick_broadcast_state {
type cpuidle_state_usage (line 22299) | struct cpuidle_state_usage {
type cpuidle_driver_kobj (line 22309) | struct cpuidle_driver_kobj
type cpuidle_state_kobj (line 22311) | struct cpuidle_state_kobj
type cpuidle_device_kobj (line 22313) | struct cpuidle_device_kobj
type cpuidle_device (line 22315) | struct cpuidle_device {
type inactive_task_frame (line 22332) | struct inactive_task_frame {
type fork_frame (line 22342) | struct fork_frame {
type ssb_state (line 22347) | struct ssb_state {
type u16 (line 22354) | typedef u16 pto_T_____9;
type trace_event_raw_x86_fpu (line 22356) | struct trace_event_raw_x86_fpu {
type trace_event_data_offsets_x86_fpu (line 22365) | struct trace_event_data_offsets_x86_fpu {}
type fpu (line 22367) | struct fpu
type fpu (line 22369) | struct fpu
type fpu (line 22371) | struct fpu
type fpu (line 22373) | struct fpu
type fpu (line 22375) | struct fpu
type fpu (line 22377) | struct fpu
type fpu (line 22379) | struct fpu
type fpu (line 22381) | struct fpu
type fpu (line 22383) | struct fpu
type fpu (line 22385) | struct fpu
type fpu (line 22387) | struct fpu
type fpu (line 22389) | struct fpu
type _fpreg (line 22391) | struct _fpreg {
type _fpxreg (line 22396) | struct _fpxreg {
type user_i387_ia32_struct (line 22402) | struct user_i387_ia32_struct {
type user_regset (line 22413) | struct user_regset
type task_struct (line 22415) | struct task_struct
type user_regset (line 22415) | struct user_regset
type task_struct (line 22417) | struct task_struct
type user_regset (line 22417) | struct user_regset
type task_struct (line 22419) | struct task_struct
type user_regset (line 22419) | struct user_regset
type task_struct (line 22421) | struct task_struct
type user_regset (line 22421) | struct user_regset
type task_struct (line 22423) | struct task_struct
type user_regset (line 22423) | struct user_regset
type user_regset (line 22425) | struct user_regset {
type _fpx_sw_bytes (line 22438) | struct _fpx_sw_bytes {
type _xmmreg (line 22446) | struct _xmmreg {
type _fpstate_32 (line 22450) | struct _fpstate_32 {
type u32 (line 22476) | typedef u32 compat_ulong_t;
type user_regset_view (line 22478) | struct user_regset_view {
type x86_regset (line 22487) | enum x86_regset {
type pt_regs_offset (line 22497) | struct pt_regs_offset {
type stack_frame_user (line 22504) | struct stack_frame_user {
type cache_type (line 22509) | enum cache_type {
type cacheinfo (line 22517) | struct cacheinfo {
type cpu_cacheinfo (line 22533) | struct cpu_cacheinfo {
type amd_nb_bus_dev_range (line 22540) | struct amd_nb_bus_dev_range {
type amd_l3_cache (line 22546) | struct amd_l3_cache {
type threshold_block (line 22551) | struct threshold_block {
type threshold_bank (line 22563) | struct threshold_bank {
type amd_northbridge (line 22570) | struct amd_northbridge {
type cpu_dev (line 22578) | struct cpu_dev {
type tsx_ctrl_states (line 22589) | enum tsx_ctrl_states {
type _cache_table (line 22595) | struct _cache_table {
type _cache_type (line 22601) | enum _cache_type {
type _cache_type (line 22610) | enum _cache_type
type _cpuid4_info_regs (line 22637) | struct _cpuid4_info_regs {
type cpuid_bit (line 22677) | struct cpuid_bit {
type cpuid_leafs (line 22685) | enum cpuid_leafs {
type cpuid_dependent_feature (line 22707) | struct cpuid_dependent_feature {
type spectre_v2_mitigation (line 22712) | enum spectre_v2_mitigation {
type spectre_v2_user_mitigation (line 22719) | enum spectre_v2_user_mitigation {
type ssb_mitigation (line 22727) | enum ssb_mitigation {
type mds_mitigations (line 22734) | enum mds_mitigations {
type vmx_l1d_flush_state (line 22740) | enum vmx_l1d_flush_state {
type x86_hypervisor_type (line 22749) | enum x86_hypervisor_type {
type taa_mitigations (line 22760) | enum taa_mitigations {
type srbds_mitigations (line 22767) | enum srbds_mitigations {
type spectre_v1_mitigation (line 22775) | enum spectre_v1_mitigation {
type spectre_v2_mitigation_cmd (line 22780) | enum spectre_v2_mitigation_cmd {
type spectre_v2_user_cmd (line 22789) | enum spectre_v2_user_cmd {
type ssb_mitigation_cmd (line 22799) | enum ssb_mitigation_cmd {
type hk_flags (line 22807) | enum hk_flags {
type aperfmperf_sample (line 22818) | struct aperfmperf_sample {
type cpuid_dep (line 22825) | struct cpuid_dep {
type vmx_feature_leafs (line 22830) | enum vmx_feature_leafs {
type _tlb_table (line 22837) | struct _tlb_table {
type split_lock_detect_state (line 22844) | enum split_lock_detect_state {
type sku_microcode (line 22850) | struct sku_microcode {
type cpuid_regs (line 22856) | struct cpuid_regs {
type pconfig_target (line 22863) | enum pconfig_target {
type u8 (line 22874) | typedef u8 pto_T_____11;
type mf_flags (line 22876) | enum mf_flags {
type mce_notifier_prios (line 22883) | enum mce_notifier_prios {
type mcp_flags (line 22894) | enum mcp_flags {
type severity_level (line 22900) | enum severity_level {
type mce_evt_llist (line 22912) | struct mce_evt_llist {
type mca_config (line 22917) | struct mca_config {
type mce_vendor_flags (line 22936) | struct mce_vendor_flags {
type mca_msr_regs (line 22944) | struct mca_msr_regs {
type trace_event_raw_mce_record (line 22951) | struct trace_event_raw_mce_record {
type trace_event_data_offsets_mce_record (line 22973) | struct trace_event_data_offsets_mce_record {}
type mce (line 22975) | struct mce
type mce_bank (line 22977) | struct mce_bank {
type mce_bank_dev (line 22982) | struct mce_bank_dev {
type pto_T_____12 (line 22988) | typedef unsigned int pto_T_____12;
type context (line 22990) | enum context {
type ser (line 22996) | enum ser {
type exception (line 23001) | enum exception {
type severity (line 23006) | struct severity {
type gen_pool (line 23019) | struct gen_pool
type gen_pool (line 23021) | struct gen_pool
type gen_pool (line 23023) | struct gen_pool {
type kobject_action (line 23038) | enum kobject_action {
type smca_bank_types (line 23050) | enum smca_bank_types {
type smca_bank_name (line 23075) | struct smca_bank_name {
type thresh_restart (line 23080) | struct thresh_restart {
type threshold_attr (line 23088) | struct threshold_attr {
type threshold_bank (line 23094) | struct threshold_bank
type _thermal_state (line 23096) | struct _thermal_state {
type thermal_state (line 23114) | struct thermal_state {
type mtrr_var_range (line 23125) | struct mtrr_var_range {
type __u8 (line 23132) | typedef __u8 mtrr_type;
type mtrr_state_type (line 23134) | struct mtrr_state_type {
type mtrr_ops (line 23142) | struct mtrr_ops {
type set_mtrr_data (line 23153) | struct set_mtrr_data {
type mtrr_value (line 23160) | struct mtrr_value {
type proc_ops (line 23166) | struct proc_ops {
type mtrr_sentry (line 23180) | struct mtrr_sentry {
type mtrr_gentry (line 23186) | struct mtrr_gentry {
type u32 (line 23194) | typedef u32 compat_uint_t;
type mtrr_sentry32 (line 23196) | struct mtrr_sentry32 {
type mtrr_gentry32 (line 23202) | struct mtrr_gentry32 {
type fixed_range_block (line 23209) | struct fixed_range_block {
type var_mtrr_range_state (line 23214) | struct var_mtrr_range_state {
type subsys_interface (line 23220) | struct subsys_interface {
type property_entry (line 23228) | struct property_entry
type platform_device_info (line 23230) | struct platform_device_info {
type dev_prop_type (line 23244) | enum dev_prop_type {
type property_entry (line 23253) | struct property_entry {
type builtin_fw (line 23270) | struct builtin_fw {
type cpio_data (line 23276) | struct cpio_data {
type ucode_state (line 23282) | enum ucode_state {
type microcode_ops (line 23290) | struct microcode_ops {
type cpu_info_ctx (line 23298) | struct cpu_info_ctx {
type firmware (line 23303) | struct firmware {
type ucode_patch (line 23309) | struct ucode_patch {
type microcode_header_intel (line 23316) | struct microcode_header_intel {
type microcode_intel (line 23329) | struct microcode_intel {
type extended_signature (line 23334) | struct extended_signature {
type extended_sigtable (line 23340) | struct extended_sigtable {
type equiv_cpu_entry (line 23347) | struct equiv_cpu_entry {
type microcode_header_amd (line 23355) | struct microcode_header_amd {
type microcode_amd (line 23372) | struct microcode_amd {
type equiv_cpu_table (line 23377) | struct equiv_cpu_table {
type cont_desc (line 23382) | struct cont_desc {
type mp_irq_source_types (line 23390) | enum mp_irq_source_types {
type IO_APIC_route_entry (line 23397) | struct IO_APIC_route_entry {
type u64 (line 23411) | typedef u64 acpi_physical_address;
type u32 (line 23413) | typedef u32 acpi_status;
type u8 (line 23417) | typedef u8 acpi_adr_space_type;
type acpi_subtable_header (line 23419) | struct acpi_subtable_header {
type acpi_table_bgrt (line 23424) | struct acpi_table_bgrt {
type acpi_table_boot (line 23434) | struct acpi_table_boot {
type acpi_hmat_structure (line 23440) | struct acpi_hmat_structure {
type acpi_table_hpet (line 23446) | struct acpi_table_hpet {
type acpi_table_madt (line 23455) | struct acpi_table_madt {
type acpi_madt_type (line 23461) | enum acpi_madt_type {
type acpi_madt_local_apic (line 23481) | struct acpi_madt_local_apic {
type acpi_madt_io_apic (line 23488) | struct acpi_madt_io_apic {
type acpi_madt_interrupt_override (line 23496) | struct acpi_madt_interrupt_override {
type acpi_madt_nmi_source (line 23504) | struct acpi_madt_nmi_source {
type acpi_madt_local_apic_nmi (line 23510) | struct acpi_madt_local_apic_nmi {
type acpi_madt_local_apic_override (line 23517) | struct acpi_madt_local_apic_override {
type acpi_madt_local_sapic (line 23523) | struct acpi_madt_local_sapic {
type acpi_madt_local_x2apic (line 23534) | struct acpi_madt_local_x2apic {
type acpi_madt_local_x2apic_nmi (line 23542) | struct acpi_madt_local_x2apic_nmi {
type acpi_subtable_header (line 23551) | struct acpi_subtable_header
type acpi_hmat_structure (line 23552) | struct acpi_hmat_structure
type acpi_subtable_proc (line 23557) | struct acpi_subtable_proc {
type u32 (line 23563) | typedef u32 phys_cpuid_t;
type gpio_desc (line 23565) | struct gpio_desc
type irq_alloc_type (line 23567) | enum irq_alloc_type {
type irq_alloc_info (line 23576) | struct irq_alloc_info {
type circ_buf (line 23607) | struct circ_buf {
type serial_icounter_struct (line 23613) | struct serial_icounter_struct {
type serial_struct (line 23628) | struct serial_struct {
type sysrq_key_op (line 23649) | struct sysrq_key_op {
type serial_rs485 (line 23656) | struct serial_rs485 {
type serial_iso7816 (line 23663) | struct serial_iso7816 {
type uart_port (line 23672) | struct uart_port
type uart_ops (line 23674) | struct uart_ops {
type uart_icount (line 23700) | struct uart_icount {
type upf_t (line 23714) | typedef unsigned int upf_t;
type upstat_t (line 23716) | typedef unsigned int upstat_t;
type uart_state (line 23718) | struct uart_state
type uart_port (line 23720) | struct uart_port {
type uart_pm_state (line 23782) | enum uart_pm_state {
type uart_state (line 23788) | struct uart_state {
type earlycon_device (line 23797) | struct earlycon_device {
type earlycon_id (line 23804) | struct earlycon_id {
type ioapic_domain_type (line 23811) | enum ioapic_domain_type {
type ioapic_domain_cfg (line 23818) | struct ioapic_domain_cfg {
type thermal_cooling_device_ops (line 23824) | struct thermal_cooling_device_ops
type thermal_cooling_device (line 23826) | struct thermal_cooling_device {
type thermal_device_mode (line 23840) | enum thermal_device_mode {
type thermal_trip_type (line 23845) | enum thermal_trip_type {
type thermal_trend (line 23852) | enum thermal_trend {
type thermal_notify_event (line 23860) | enum thermal_notify_event {
type thermal_zone_device (line 23871) | struct thermal_zone_device
type thermal_zone_device_ops (line 23873) | struct thermal_zone_device_ops {
type thermal_attr (line 23891) | struct thermal_attr
type thermal_zone_params (line 23893) | struct thermal_zone_params
type thermal_governor (line 23895) | struct thermal_governor
type thermal_zone_device (line 23897) | struct thermal_zone_device {
type thermal_cooling_device_ops (line 23930) | struct thermal_cooling_device_ops {
type thermal_bind_params (line 23939) | struct thermal_bind_params
type thermal_zone_params (line 23941) | struct thermal_zone_params {
type thermal_governor (line 23956) | struct thermal_governor {
type thermal_bind_params (line 23964) | struct thermal_bind_params {
type acpi_processor_cx (line 23972) | struct acpi_processor_cx {
type acpi_lpi_state (line 23983) | struct acpi_lpi_state {
type acpi_processor_power (line 23996) | struct acpi_processor_power {
type acpi_psd_package (line 24005) | struct acpi_psd_package {
type acpi_pct_register (line 24013) | struct acpi_pct_register {
type acpi_processor_px (line 24023) | struct acpi_processor_px {
type acpi_processor_performance (line 24032) | struct acpi_processor_performance {
type acpi_tsd_package (line 24047) | struct acpi_tsd_package {
type acpi_processor_tx_tss (line 24055) | struct acpi_processor_tx_tss {
type acpi_processor_tx (line 24063) | struct acpi_processor_tx {
type acpi_processor (line 24068) | struct acpi_processor
type acpi_processor_throttling (line 24070) | struct acpi_processor_throttling {
type acpi_processor_flags (line 24093) | struct acpi_processor_flags {
type acpi_processor_lx (line 24107) | struct acpi_processor_lx {
type acpi_processor_limit (line 24112) | struct acpi_processor_limit {
type acpi_processor (line 24118) | struct acpi_processor {
type acpi_processor_errata (line 24137) | struct acpi_processor_errata {
type cpuidle_driver (line 24147) | struct cpuidle_driver
type wakeup_header (line 24149) | struct wakeup_header {
type cpc_reg (line 24167) | struct cpc_reg {
type acpi_power_register (line 24177) | struct acpi_power_register {
type cstate_entry (line 24187) | struct cstate_entry {
type pt_regs (line 24194) | struct pt_regs
type pci_ops___2 (line 24196) | struct pci_ops___2
type cpuid_regs_done (line 24198) | struct cpuid_regs_done {
type intel_early_ops (line 24203) | struct intel_early_ops {
type chipset (line 24208) | struct chipset {
type sched_domain_shared (line 24217) | struct sched_domain_shared {
type sched_group (line 24223) | struct sched_group
type sched_domain (line 24225) | struct sched_domain {
type cpumask (line 24272) | struct cpumask
type sched_group_capacity (line 24276) | struct sched_group_capacity
type sd_data (line 24278) | struct sd_data {
type sched_domain_topology_level (line 24285) | struct sched_domain_topology_level {
type tsc_adjust (line 24293) | struct tsc_adjust {
type mpf_intel (line 24306) | struct mpf_intel {
type mpc_ioapic (line 24319) | struct mpc_ioapic {
type mpc_lintsrc (line 24327) | struct mpc_lintsrc {
type page_cache_mode (line 24337) | enum page_cache_mode {
type ioapic_irq_destination_types (line 24352) | enum ioapic_irq_destination_types {
type irq_cfg (line 24394) | struct irq_cfg {
type apic_chip_data (line 24410) | struct apic_chip_data {
type irq_matrix (line 24424) | struct irq_matrix
type IR_IO_APIC_route_entry (line 24465) | struct IR_IO_APIC_route_entry {
type irq_pin_list (line 24516) | struct irq_pin_list {
type mp_chip_data (line 24522) | struct mp_chip_data {
type mp_ioapic_gsi (line 24531) | struct mp_ioapic_gsi {
type ioapic (line 24536) | struct ioapic {
type io_apic (line 24546) | struct io_apic {
type IO_APIC_route_entry (line 24559) | struct IO_APIC_route_entry
type msi_alloc_info_t (line 24573) | typedef struct irq_alloc_info msi_alloc_info_t;
type msi_domain_info (line 24575) | struct msi_domain_info
type msi_domain_ops (line 24577) | struct msi_domain_ops {
type msi_domain_info (line 24588) | struct msi_domain_info {
type hpet_channel (line 24609) | struct hpet_channel
type x86_mapping_info (line 24611) | struct x86_mapping_info {
type kexec_file_ops (line 24620) | struct kexec_file_ops
type init_pgtable_data (line 24622) | struct init_pgtable_data {
type kretprobe_instance (line 24627) | struct kretprobe_instance
type kretprobe_instance (line 24629) | struct kretprobe_instance
type pt_regs (line 24629) | struct pt_regs
type kretprobe (line 24631) | struct kretprobe
type kretprobe_instance (line 24633) | struct kretprobe_instance {
type kretprobe (line 24642) | struct kretprobe {
type kprobe (line 24653) | struct kprobe
type __arch_relative_insn (line 24655) | struct __arch_relative_insn {
type arch_optimized_insn (line 24660) | struct arch_optimized_insn {
type optimized_kprobe (line 24666) | struct optimized_kprobe {
type __u64 (line 24672) | typedef __u64 Elf64_Off;
type elf64_rela (line 24674) | struct elf64_rela {
type Elf64_Rela (line 24680) | typedef struct elf64_rela Elf64_Rela;
type elf64_hdr (line 24682) | struct elf64_hdr {
type Elf64_Ehdr (line 24699) | typedef struct elf64_hdr Elf64_Ehdr;
type elf64_shdr (line 24701) | struct elf64_shdr {
type Elf64_Shdr (line 24714) | typedef struct elf64_shdr Elf64_Shdr;
type hpet_data (line 24716) | struct hpet_data {
type irqreturn_t (line 24724) | typedef irqreturn_t (*rtc_irq_handler)(int, void *);
type hpet_mode (line 24726) | enum hpet_mode {
type hpet_channel___2 (line 24733) | struct hpet_channel___2 {
type hpet_base (line 24748) | struct hpet_base {
type amd_northbridge_info (line 24763) | struct amd_northbridge_info {
type scan_area (line 24769) | struct scan_area {
type uprobe_xol_ops (line 24774) | struct uprobe_xol_ops
type arch_uprobe (line 24776) | struct arch_uprobe {
type uprobe_xol_ops (line 24799) | struct uprobe_xol_ops {
type rp_check (line 24806) | enum rp_check {
type fb_fix_screeninfo (line 24812) | struct fb_fix_screeninfo {
type fb_bitfield (line 24830) | struct fb_bitfield {
type fb_var_screeninfo (line 24836) | struct fb_var_screeninfo {
type fb_cmap (line 24868) | struct fb_cmap {
type fb_copyarea (line 24877) | struct fb_copyarea {
type fb_fillrect (line 24886) | struct fb_fillrect {
type fb_image (line 24895) | struct fb_image {
type fbcurpos (line 24907) | struct fbcurpos {
type fb_cursor (line 24912) | struct fb_cursor {
type fb_chroma (line 24921) | struct fb_chroma {
type fb_videomode (line 24932) | struct fb_videomode
type fb_monspecs (line 24934) | struct fb_monspecs {
type fb_info (line 24964) | struct fb_info
type fb_pixmap (line 24966) | struct fb_pixmap {
type fb_deferred_io (line 24980) | struct fb_deferred_io
type fb_ops (line 24982) | struct fb_ops
type fb_tile_ops (line 24984) | struct fb_tile_ops
type apertures_struct (line 24986) | struct apertures_struct
type fb_info (line 24988) | struct fb_info {
type fb_videomode (line 25024) | struct fb_videomode {
type fb_blit_caps (line 25041) | struct fb_blit_caps {
type fb_deferred_io (line 25048) | struct fb_deferred_io {
type fb_ops (line 25056) | struct fb_ops {
type fb_tilemap (line 25082) | struct fb_tilemap {
type fb_tilerect (line 25090) | struct fb_tilerect {
type fb_tilearea (line 25101) | struct fb_tilearea {
type fb_tileblit (line 25110) | struct fb_tileblit {
type fb_tilecursor (line 25121) | struct fb_tilecursor {
type fb_tile_ops (line 25130) | struct fb_tile_ops {
type aperture (line 25139) | struct aperture {
type apertures_struct (line 25144) | struct apertures_struct {
type dmt_videomode (line 25149) | struct dmt_videomode {
type simplefb_platform_data (line 25156) | struct simplefb_platform_data {
type efifb_dmi_info (line 25163) | struct efifb_dmi_info {
type perf_sample_regs_abi (line 25215) | enum perf_sample_regs_abi {
type __va_list_tag (line 25221) | struct __va_list_tag {
type __builtin_va_list (line 25228) | typedef __builtin_va_list __gnuc_va_list;
type __gnuc_va_list (line 25230) | typedef __gnuc_va_list va_list;
type va_format (line 25232) | struct va_format {
type pci_hostbridge_probe (line 25237) | struct pci_hostbridge_probe {
type u8 (line 25244) | typedef u8 uint8_t;
type u16 (line 25246) | typedef u16 uint16_t;
type pg_level (line 25248) | enum pg_level {
type trace_print_flags (line 25257) | struct trace_print_flags {
type tlb_flush_reason (line 25262) | enum tlb_flush_reason {
type trace_event_raw_tlb_flush (line 25277) | struct trace_event_raw_tlb_flush {
type trace_event_data_offsets_tlb_flush (line 25284) | struct trace_event_data_offsets_tlb_flush {}
type map_range (line 25288) | struct map_range {
type kcore_type (line 25294) | enum kcore_type {
type kcore_list (line 25304) | struct kcore_list {
type trace_event_raw_x86_exceptions (line 25312) | struct trace_event_raw_x86_exceptions {
type trace_event_data_offsets_x86_exceptions (line 25320) | struct trace_event_data_offsets_x86_exceptions {}
type pt_regs (line 25322) | struct pt_regs
type pt_regs (line 25324) | struct pt_regs
type ioremap_desc (line 25331) | struct ioremap_desc {
type exception_table_entry (line 25335) | struct exception_table_entry
type pt_regs (line 25335) | struct pt_regs
type flush_tlb_info (line 25337) | struct flush_tlb_info {
type mm_struct (line 25346) | struct mm_struct
type exception_stacks (line 25348) | struct exception_stacks {
type cpa_data (line 25360) | struct cpa_data {
type cpa_warn (line 25375) | enum cpa_warn {
type pfn_t (line 25381) | typedef struct {
type memtype (line 25385) | struct memtype {
type pagerange_state (line 25402) | struct pagerange_state {
type rb_augment_callbacks (line 25408) | struct rb_augment_callbacks {
type hugepage_subpool (line 25419) | struct hugepage_subpool {
type hugetlbfs_sb_info (line 25429) | struct hugetlbfs_sb_info {
type numa_memblk (line 25440) | struct numa_memblk {
type numa_meminfo (line 25446) | struct numa_meminfo {
type acpi_srat_cpu_affinity (line 25451) | struct acpi_srat_cpu_affinity {
type acpi_srat_x2apic_cpu_affinity (line 25461) | struct acpi_srat_x2apic_cpu_affinity {
type uv_system_type (line 25471) | enum uv_system_type {
type kaslr_memory_region (line 25478) | struct kaslr_memory_region {
type pti_mode (line 25483) | enum pti_mode {
type pti_clone_level (line 25489) | enum pti_clone_level {
type sigcontext_32 (line 25494) | struct sigcontext_32 {
type u32 (line 25525) | typedef u32 compat_size_t;
type compat_sigaltstack (line 25527) | struct compat_sigaltstack {
type compat_stack_t (line 25533) | typedef struct compat_sigaltstack compat_stack_t;
type ucontext_ia32 (line 25535) | struct ucontext_ia32 {
type sigframe_ia32 (line 25543) | struct sigframe_ia32 {
type rt_sigframe_ia32 (line 25552) | struct rt_sigframe_ia32 {
type efi_config_table_64_t (line 25562) | typedef struct {
type efi_memory_map_data (line 25567) | struct efi_memory_map_data {
type efi_mem_range (line 25575) | struct efi_mem_range {
type efi_setup_data (line 25580) | struct efi_setup_data {
type efi_config_table_type_t (line 25588) | typedef struct {
type efi_system_table_64_t (line 25594) | typedef struct {
type efi_system_table_32_t (line 25612) | typedef struct {
type efi_properties_table_t (line 25628) | typedef struct {
type efi_boot_services_t (line 25636) | typedef union efi_boot_services efi_boot_services_t;
type efi_simple_text_input_protocol_t (line 25640) | typedef union efi_simple_text_input_protocol efi_simple_text_input_proto...
type efi_simple_text_output_protocol_t (line 25644) | typedef union efi_simple_text_output_protocol efi_simple_text_output_pro...
type efi_system_table_t (line 25646) | typedef union {
type wait_queue_entry (line 25665) | struct wait_queue_entry
type wait_queue_entry (line 25667) | struct wait_queue_entry
type wait_queue_entry (line 25669) | struct wait_queue_entry {
type pm_qos_request (line 25676) | struct pm_qos_request {
type bpf_tramp_progs (line 25696) | struct bpf_tramp_progs {
type bpf_jit_poke_reason (line 25701) | enum bpf_jit_poke_reason {
type bpf_array_aux (line 25705) | struct bpf_array_aux {
type bpf_array (line 25714) | struct bpf_array {
type bpf_text_poke_type (line 25732) | enum bpf_text_poke_type {
type bpf_binary_header (line 25737) | struct bpf_binary_header {
type jit_context (line 25743) | struct jit_context {
type x64_jit_data (line 25747) | struct x64_jit_data {
type tk_offsets (line 25755) | enum tk_offsets {
type clone_args (line 25762) | struct clone_args {
type fdtable (line 25776) | struct fdtable {
type files_struct (line 25785) | struct files_struct {
type robust_list (line 25807) | struct robust_list {
type robust_list_head (line 25811) | struct robust_list_head {
type multiprocess_signals (line 25817) | struct multiprocess_signals {
type task_struct (line 25822) | struct task_struct
type memcg_stat_item (line 25831) | enum memcg_stat_item {
type poll_table (line 25838) | typedef struct poll_table_struct poll_table;
type proc_hidepid (line 25846) | enum proc_hidepid {
type proc_pidonly (line 25853) | enum proc_pidonly {
type proc_fs_info (line 25858) | struct proc_fs_info {
type trace_event_raw_task_newtask (line 25867) | struct trace_event_raw_task_newtask {
type trace_event_raw_task_rename (line 25876) | struct trace_event_raw_task_rename {
type trace_event_data_offsets_task_newtask (line 25885) | struct trace_event_data_offsets_task_newtask {}
type trace_event_data_offsets_task_rename (line 25887) | struct trace_event_data_offsets_task_rename {}
type task_struct (line 25889) | struct task_struct
type task_struct (line 25891) | struct task_struct
type pao_T_____3 (line 25893) | typedef long unsigned int pao_T_____3;
type kmsg_dump_reason (line 25895) | enum kmsg_dump_reason {
type vt_mode (line 25904) | struct vt_mode {
type console_font (line 25912) | struct console_font {
type uni_pagedir (line 25919) | struct uni_pagedir
type uni_screen (line 25921) | struct uni_screen
type vc_data (line 25923) | struct vc_data {
type vc (line 26007) | struct vc {
type vt_spawn_console (line 26012) | struct vt_spawn_console {
type con_flush_mode (line 26018) | enum con_flush_mode {
type warn_args (line 26023) | struct warn_args {
type smp_hotplug_thread (line 26028) | struct smp_hotplug_thread {
type trace_event_raw_cpuhp_enter (line 26042) | struct trace_event_raw_cpuhp_enter {
type trace_event_raw_cpuhp_multi_enter (line 26051) | struct trace_event_raw_cpuhp_multi_enter {
type trace_event_raw_cpuhp_exit (line 26060) | struct trace_event_raw_cpuhp_exit {
type trace_event_data_offsets_cpuhp_enter (line 26069) | struct trace_event_data_offsets_cpuhp_enter {}
type trace_event_data_offsets_cpuhp_multi_enter (line 26071) | struct trace_event_data_offsets_cpuhp_multi_enter {}
type trace_event_data_offsets_cpuhp_exit (line 26073) | struct trace_event_data_offsets_cpuhp_exit {}
type hlist_node (line 26077) | struct hlist_node
type hlist_node (line 26077) | struct hlist_node
type cpuhp_cpu_state (line 26081) | struct cpuhp_cpu_state {
type cpuhp_step (line 26098) | struct cpuhp_step {
type cpu_mitigations (line 26113) | enum cpu_mitigations {
type pto_T_____16 (line 26119) | typedef enum cpuhp_state pto_T_____16;
type __kernel_old_timeval (line 26121) | struct __kernel_old_timeval {
type wait_queue_entry_t (line 26126) | typedef struct wait_queue_entry wait_queue_entry_t;
type old_timeval32 (line 26128) | struct old_timeval32 {
type rusage (line 26133) | struct rusage {
type fd (line 26152) | struct fd {
type compat_rusage (line 26157) | struct compat_rusage {
type waitid_info (line 26176) | struct waitid_info {
type wait_opts (line 26183) | struct wait_opts {
type softirq_action (line 26194) | struct softirq_action {
type tasklet_struct (line 26198) | struct tasklet_struct {
type trace_event_raw_irq_handler_entry (line 26211) | struct trace_event_raw_irq_handler_entry {
type trace_event_raw_irq_handler_exit (line 26218) | struct trace_event_raw_irq_handler_exit {
type trace_event_raw_softirq (line 26225) | struct trace_event_raw_softirq {
type trace_event_data_offsets_irq_handler_entry (line 26231) | struct trace_event_data_offsets_irq_handler_entry {
type trace_event_data_offsets_irq_handler_exit (line 26235) | struct trace_event_data_offsets_irq_handler_exit {}
type trace_event_data_offsets_softirq (line 26237) | struct trace_event_data_offsets_softirq {}
type irqaction (line 26239) | struct irqaction
type irqaction (line 26241) | struct irqaction
type tasklet_head (line 26249) | struct tasklet_head {
type tasklet_struct (line 26254) | struct tasklet_struct
type resource_entry (line 26256) | struct resource_entry {
type resource_constraint (line 26263) | struct resource_constraint {
type region_devres (line 26275) | struct region_devres {
type sysctl_writes_mode (line 26281) | enum sysctl_writes_mode {
type do_proc_dointvec_minmax_conv_param (line 26287) | struct do_proc_dointvec_minmax_conv_param {
type do_proc_douintvec_minmax_conv_param (line 26292) | struct do_proc_douintvec_minmax_conv_param {
type __sysctl_args (line 26297) | struct __sysctl_args {
type xfs_sysctl_val (line 26396) | struct xfs_sysctl_val {
type xfs_sysctl_val_t (line 26402) | typedef struct xfs_sysctl_val xfs_sysctl_val_t;
type xfs_param (line 26404) | struct xfs_param {
type xfs_param_t (line 26424) | typedef struct xfs_param xfs_param_t;
type xfs_globals (line 26426) | struct xfs_globals {
type ethtool_link_mode_bit_indices (line 26433) | enum ethtool_link_mode_bit_indices {
type compat_sysctl_args (line 26541) | struct compat_sysctl_args {
type __user_cap_header_struct (line 26551) | struct __user_cap_header_struct {
type __user_cap_header_struct (line 26556) | struct __user_cap_header_struct
type __user_cap_data_struct (line 26558) | struct __user_cap_data_struct {
type __user_cap_data_struct (line 26564) | struct __user_cap_data_struct
type sigqueue (line 26566) | struct sigqueue {
type ptrace_peeksiginfo_args (line 26573) | struct ptrace_peeksiginfo_args {
type ptrace_syscall_info (line 26579) | struct ptrace_syscall_info {
type compat_iovec (line 26601) | struct compat_iovec {
type old_sigset_t (line 26606) | typedef long unsigned int old_sigset_t;
type siginfo_layout (line 26608) | enum siginfo_layout {
type u32 (line 26621) | typedef u32 compat_old_sigset_t;
type compat_sigaction (line 26623) | struct compat_sigaction {
type compat_old_sigaction (line 26630) | struct compat_old_sigaction {
type trace_event_raw_signal_generate (line 26645) | struct trace_event_raw_signal_generate {
type trace_event_raw_signal_deliver (line 26657) | struct trace_event_raw_signal_deliver {
type trace_event_data_offsets_signal_generate (line 26667) | struct trace_event_data_offsets_signal_generate {}
type trace_event_data_offsets_signal_deliver (line 26669) | struct trace_event_data_offsets_signal_deliver {}
type kernel_siginfo (line 26671) | struct kernel_siginfo
type task_struct (line 26671) | struct task_struct
type kernel_siginfo (line 26673) | struct kernel_siginfo
type k_sigaction (line 26673) | struct k_sigaction
type __kernel_clock_t (line 26675) | typedef __kernel_clock_t clock_t;
type sysinfo (line 26677) | struct sysinfo {
type rlimit64 (line 26720) | struct rlimit64 {
type oldold_utsname (line 26725) | struct oldold_utsname {
type old_utsname (line 26733) | struct old_utsname {
type uts_proc (line 26741) | enum uts_proc {
type prctl_mm_map (line 26749) | struct prctl_mm_map {
type tms (line 26766) | struct tms {
type getcpu_cache (line 26773) | struct getcpu_cache {
type compat_tms (line 26777) | struct compat_tms {
type compat_rlimit (line 26784) | struct compat_rlimit {
type compat_sysinfo (line 26789) | struct compat_sysinfo {
type umh_info (line 26806) | struct umh_info {
type wq_flusher (line 26815) | struct wq_flusher
type worker (line 26817) | struct worker
type workqueue_attrs (line 26819) | struct workqueue_attrs
type pool_workqueue (line 26821) | struct pool_workqueue
type wq_device (line 26823) | struct wq_device
type workqueue_struct (line 26825) | struct workqueue_struct {
type workqueue_attrs (line 26860) | struct workqueue_attrs {
type execute_work (line 26866) | struct execute_work {
type xa_mark_t (line 26887) | typedef unsigned int xa_mark_t;
type xa_lock_type (line 26889) | enum xa_lock_type {
type __una_u32 (line 26894) | struct __una_u32 {
type worker_pool (line 26898) | struct worker_pool
type worker (line 26900) | struct worker {
type pool_workqueue (line 26921) | struct pool_workqueue {
type worker_pool (line 26945) | struct worker_pool {
type wq_flusher (line 27002) | struct wq_flusher {
type wq_device (line 27008) | struct wq_device {
type trace_event_raw_workqueue_queue_work (line 27013) | struct trace_event_raw_workqueue_queue_work {
type trace_event_raw_workqueue_activate_work (line 27023) | struct trace_event_raw_workqueue_activate_work {
type trace_event_raw_workqueue_execute_start (line 27029) | struct trace_event_raw_workqueue_execute_start {
type trace_event_raw_workqueue_execute_end (line 27036) | struct trace_event_raw_workqueue_execute_end {
type trace_event_data_offsets_workqueue_queue_work (line 27043) | struct trace_event_data_offsets_workqueue_queue_work {}
type trace_event_data_offsets_workqueue_activate_work (line 27045) | struct trace_event_data_offsets_workqueue_activate_work {}
type trace_event_data_offsets_workqueue_execute_start (line 27047) | struct trace_event_data_offsets_workqueue_execute_start {}
type trace_event_data_offsets_workqueue_execute_end (line 27049) | struct trace_event_data_offsets_workqueue_execute_end {}
type pool_workqueue (line 27051) | struct pool_workqueue
type work_struct (line 27051) | struct work_struct
type work_struct (line 27053) | struct work_struct
type work_struct (line 27055) | struct work_struct
type work_struct (line 27057) | struct work_struct
type wq_barrier (line 27059) | struct wq_barrier {
type cwt_wait (line 27065) | struct cwt_wait {
type apply_wqattrs_ctx (line 27070) | struct apply_wqattrs_ctx {
type work_for_cpu (line 27078) | struct work_for_cpu {
type callback_head (line 27085) | struct callback_head
type param_attribute (line 27096) | struct param_attribute {
type module_param_attrs (line 27101) | struct module_param_attrs {
type module_version_attribute (line 27107) | struct module_version_attribute {
type kmalloced_param (line 27113) | struct kmalloced_param {
type sched_param (line 27118) | struct sched_param {
type kthread_work (line 27122) | struct kthread_work
type kthread_work (line 27124) | struct kthread_work
type kthread_worker (line 27126) | struct kthread_worker
type kthread_work (line 27128) | struct kthread_work {
type kthread_worker (line 27139) | struct kthread_worker {
type kthread_delayed_work (line 27148) | struct kthread_delayed_work {
type kthread_create_info (line 27153) | struct kthread_create_info {
type kthread (line 27162) | struct kthread {
type KTHREAD_BITS (line 27172) | enum KTHREAD_BITS {
type kthread_flush_work (line 27178) | struct kthread_flush_work {
type pt_regs___2 (line 27183) | struct pt_regs___2
type ipc_ids (line 27185) | struct ipc_ids {
type ipc_namespace (line 27195) | struct ipc_namespace {
type srcu_notifier_head (line 27224) | struct srcu_notifier_head {
type what (line 27230) | enum what {
type u64 (line 27243) | typedef u64 async_cookie_t;
type async_domain (line 27247) | struct async_domain {
type async_entry (line 27252) | struct async_entry {
type smpboot_thread_data (line 27262) | struct smpboot_thread_data {
type pin_cookie (line 27274) | struct pin_cookie {}
type dl_bw (line 27290) | struct dl_bw {
type cpudl_item (line 27296) | struct cpudl_item
type cpudl (line 27298) | struct cpudl {
type cpupri_vec (line 27305) | struct cpupri_vec {
type cpupri (line 27310) | struct cpupri {
type perf_domain (line 27315) | struct perf_domain
type root_domain___2 (line 27317) | struct root_domain___2 {
type cfs_rq (line 27341) | struct cfs_rq {
type cfs_bandwidth (line 27386) | struct cfs_bandwidth {}
type task_group (line 27388) | struct task_group {
type update_util_data (line 27415) | struct update_util_data {
type sched_group (line 27428) | struct sched_group {
type sched_group_capacity (line 27437) | struct sched_group_capacity {
type wake_q_head (line 27447) | struct wake_q_head {
type sched_attr (line 27452) | struct sched_attr {
type cpuidle_driver___2 (line 27465) | struct cpuidle_driver___2
type cpuidle_state (line 27467) | struct cpuidle_state {
type cpuidle_driver___2 (line 27481) | struct cpuidle_driver___2 {
type em_cap_state (line 27492) | struct em_cap_state {
type em_perf_domain (line 27498) | struct em_perf_domain {
type cpu_stop_done (line 27517) | struct cpu_stop_done
type cpu_stop_work (line 27519) | struct cpu_stop_work {
type cpudl_item (line 27526) | struct cpudl_item {
type rt_prio_array (line 27532) | struct rt_prio_array {
type rt_bandwidth (line 27537) | struct rt_bandwidth {
type dl_bandwidth (line 27545) | struct dl_bandwidth {
type task_group (line 27551) | struct task_group
type rt_rq (line 27553) | struct rt_rq {
type dl_rq (line 27572) | struct dl_rq {
type rq (line 27588) | struct rq {
type perf_domain (line 27669) | struct perf_domain {
type rq_flags (line 27675) | struct rq_flags {
type numa_topology_type (line 27680) | enum numa_topology_type {
type trace_event_raw_sched_kthread_stop (line 27712) | struct trace_event_raw_sched_kthread_stop {
type trace_event_raw_sched_kthread_stop_ret (line 27719) | struct trace_event_raw_sched_kthread_stop_ret {
type trace_event_raw_sched_wakeup_template (line 27725) | struct trace_event_raw_sched_wakeup_template {
type trace_event_raw_sched_switch (line 27735) | struct trace_event_raw_sched_switch {
type trace_event_raw_sched_migrate_task (line 27747) | struct trace_event_raw_sched_migrate_task {
type trace_event_raw_sched_process_template (line 27757) | struct trace_event_raw_sched_process_template {
type trace_event_raw_sched_process_wait (line 27765) | struct trace_event_raw_sched_process_wait {
type trace_event_raw_sched_process_fork (line 27773) | struct trace_event_raw_sched_process_fork {
type trace_event_raw_sched_process_exec (line 27782) | struct trace_event_raw_sched_process_exec {
type trace_event_raw_sched_stat_template (line 27790) | struct trace_event_raw_sched_stat_template {
type trace_event_raw_sched_stat_runtime (line 27798) | struct trace_event_raw_sched_stat_runtime {
type trace_event_raw_sched_pi_setprio (line 27807) | struct trace_event_raw_sched_pi_setprio {
type trace_event_raw_sched_move_numa (line 27816) | struct trace_event_raw_sched_move_numa {
type trace_event_raw_sched_numa_pair_template (line 27828) | struct trace_event_raw_sched_numa_pair_template {
type trace_event_raw_sched_wake_idle_without_ipi (line 27843) | struct trace_event_raw_sched_wake_idle_without_ipi {
type trace_event_data_offsets_sched_kthread_stop (line 27849) | struct trace_event_data_offsets_sched_kthread_stop {}
type trace_event_data_offsets_sched_kthread_stop_ret (line 27851) | struct trace_event_data_offsets_sched_kthread_stop_ret {}
type trace_event_data_offsets_sched_wakeup_template (line 27853) | struct trace_event_data_offsets_sched_wakeup_template {}
type trace_event_data_offsets_sched_switch (line 27855) | struct trace_event_data_offsets_sched_switch {}
type trace_event_data_offsets_sched_migrate_task (line 27857) | struct trace_event_data_offsets_sched_migrate_task {}
type trace_event_data_offsets_sched_process_template (line 27859) | struct trace_event_data_offsets_sched_process_template {}
type trace_event_data_offsets_sched_process_wait (line 27861) | struct trace_event_data_offsets_sched_process_wait {}
type trace_event_data_offsets_sched_process_fork (line 27863) | struct trace_event_data_offsets_sched_process_fork {}
type trace_event_data_offsets_sched_process_exec (line 27865) | struct trace_event_data_offsets_sched_process_exec {
type trace_event_data_offsets_sched_stat_template (line 27869) | struct trace_event_data_offsets_sched_stat_template {}
type trace_event_data_offsets_sched_stat_runtime (line 27871) | struct trace_event_data_offsets_sched_stat_runtime {}
type trace_event_data_offsets_sched_pi_setprio (line 27873) | struct trace_event_data_offsets_sched_pi_setprio {}
type trace_event_data_offsets_sched_move_numa (line 27875) | struct trace_event_data_offsets_sched_move_numa {}
type trace_event_data_offsets_sched_numa_pair_template (line 27877) | struct trace_event_data_offsets_sched_numa_pair_template {}
type trace_event_data_offsets_sched_wake_idle_without_ipi (line 27879) | struct trace_event_data_offsets_sched_wake_idle_without_ipi {}
type task_struct (line 27881) | struct task_struct
type task_struct (line 27885) | struct task_struct
type task_struct (line 27887) | struct task_struct
type task_struct (line 27889) | struct task_struct
type task_struct (line 27891) | struct task_struct
type task_struct (line 27891) | struct task_struct
type task_struct (line 27893) | struct task_struct
type task_struct (line 27895) | struct task_struct
type task_struct (line 27897) | struct task_struct
type task_struct (line 27899) | struct task_struct
type pid (line 27901) | struct pid
type task_struct (line 27903) | struct task_struct
type task_struct (line 27903) | struct task_struct
type task_struct (line 27905) | struct task_struct
type linux_binprm (line 27905) | struct linux_binprm
type task_struct (line 27907) | struct task_struct
type task_struct (line 27909) | struct task_struct
type task_struct (line 27911) | struct task_struct
type task_struct (line 27913) | struct task_struct
type task_struct (line 27915) | struct task_struct
type task_struct (line 27917) | struct task_struct
type task_struct (line 27917) | struct task_struct
type task_struct (line 27919) | struct task_struct
type task_struct (line 27921) | struct task_struct
type task_struct (line 27921) | struct task_struct
type task_struct (line 27923) | struct task_struct
type task_struct (line 27923) | struct task_struct
type migration_arg (line 27927) | struct migration_arg {
type tick_dep_bits (line 27938) | enum tick_dep_bits {
type sched_clock_data (line 27947) | struct sched_clock_data {
type u64 (line 27953) | typedef u64 pao_T_____4;
type idle_timer (line 27955) | struct idle_timer {
type schedutil_type (line 27960) | enum schedutil_type {
type fbq_type (line 27965) | enum fbq_type {
type group_type (line 27971) | enum group_type {
type migration_type (line 27980) | enum migration_type {
type lb_env (line 27987) | struct lb_env {
type sg_lb_stats (line 28007) | struct sg_lb_stats {
type sd_lb_stats (line 28022) | struct sd_lb_stats {
type rt_rq (line 28033) | struct rt_rq
type wait_bit_key (line 28035) | struct wait_bit_key {
type wait_bit_queue_entry (line 28041) | struct wait_bit_queue_entry {
type wait_bit_key (line 28046) | struct wait_bit_key
type swait_queue (line 28048) | struct swait_queue {
type sched_domain_attr (line 28053) | struct sched_domain_attr {
type s_data (line 28057) | struct s_data {
type s_alloc (line 28062) | enum s_alloc {
type cpuacct_stat_index (line 28069) | enum cpuacct_stat_index {
type cpuacct_usage (line 28075) | struct cpuacct_usage {
type cpuacct (line 28079) | struct cpuacct {
type gov_attr_set (line 28085) | struct gov_attr_set {
type governor_attr (line 28092) | struct governor_attr {
type sugov_tunables (line 28098) | struct sugov_tunables {
type sugov_policy (line 28103) | struct sugov_policy {
type sugov_cpu (line 28122) | struct sugov_cpu {
type membarrier_cmd (line 28138) | enum membarrier_cmd {
type ww_acquire_ctx (line 28150) | struct ww_acquire_ctx
type mutex_waiter (line 28152) | struct mutex_waiter {
type ww_acquire_ctx (line 28158) | struct ww_acquire_ctx {
type mutex_trylock_recursive_enum (line 28166) | enum mutex_trylock_recursive_enum {
type ww_mutex (line 28172) | struct ww_mutex {
type semaphore (line 28177) | struct semaphore {
type semaphore_waiter (line 28183) | struct semaphore_waiter {
type rwsem_waiter_type (line 28189) | enum rwsem_waiter_type {
type rwsem_waiter (line 28194) | struct rwsem_waiter {
type rwsem_wake_type (line 28202) | enum rwsem_wake_type {
type writer_wait_state (line 28208) | enum writer_wait_state {
type owner_state (line 28214) | enum owner_state {
type optimistic_spin_node (line 28221) | struct optimistic_spin_node {
type mcs_spinlock (line 28228) | struct mcs_spinlock {
type qnode (line 28234) | struct qnode {
type hrtimer_sleeper (line 28238) | struct hrtimer_sleeper {
type rt_mutex (line 28243) | struct rt_mutex
type rt_mutex_waiter (line 28245) | struct rt_mutex_waiter {
type rt_mutex (line 28254) | struct rt_mutex {
type rtmutex_chainwalk (line 28260) | enum rtmutex_chainwalk {
type pm_qos_req_action (line 28265) | enum pm_qos_req_action {
type miscdevice (line 28271) | struct miscdevice {
type pm_vt_switch (line 28293) | struct pm_vt_switch {
type platform_suspend_ops (line 28299) | struct platform_suspend_ops {
type platform_s2idle_ops (line 28312) | struct platform_s2idle_ops {
type platform_hibernation_ops (line 28322) | struct platform_hibernation_ops {
type swsusp_info (line 28345) | struct swsusp_info {
type snapshot_handle (line 28812) | struct snapshot_handle {
type linked_page (line 28818) | struct linked_page {
type chain_allocator (line 28823) | struct chain_allocator {
type rtree_node (line 28830) | struct rtree_node {
type mem_zone_bm_rtree (line 28835) | struct mem_zone_bm_rtree {
type bm_position (line 28846) | struct bm_position {
type memory_bitmap (line 28853) | struct memory_bitmap {
type mem_extent (line 28859) | struct mem_extent {
type nosave_region (line 28865) | struct nosave_region {
type swp_entry_t (line 28871) | typedef struct {
type req_opf (line 28892) | enum req_opf {
type req_flag_bits (line 28913) | enum req_flag_bits {
type swap_map_page (line 28936) | struct swap_map_page {
type swap_map_page_list (line 28941) | struct swap_map_page_list {
type swap_map_handle (line 28946) | struct swap_map_handle {
type swsusp_header (line 28956) | struct swsusp_header {
type swsusp_extent (line 28965) | struct swsusp_extent {
type hib_bio_batch (line 28971) | struct hib_bio_batch {
type crc_data (line 28977) | struct crc_data {
type cmp_data (line 28989) | struct cmp_data {
type dec_data (line 29003) | struct dec_data {
type s64 (line 29016) | typedef s64 compat_loff_t;
type resume_swap_area (line 29018) | struct resume_swap_area {
type snapshot_data (line 29023) | struct snapshot_data {
type compat_resume_swap_area (line 29034) | struct compat_resume_swap_area {
type kmsg_dumper (line 29039) | struct kmsg_dumper {
type trace_event_raw_console (line 29051) | struct trace_event_raw_console {
type trace_event_data_offsets_console (line 29057) | struct trace_event_data_offsets_console {
type console_cmdline (line 29063) | struct console_cmdline {
type devkmsg_log_bits (line 29070) | enum devkmsg_log_bits {
type devkmsg_log_masks (line 29076) | enum devkmsg_log_masks {
type con_msg_format_flags (line 29082) | enum con_msg_format_flags {
type log_flags (line 29087) | enum log_flags {
type printk_log (line 29092) | struct printk_log {
type devkmsg_user (line 29102) | struct devkmsg_user {
type cont (line 29110) | struct cont {
type printk_safe_seq_buf (line 29120) | struct printk_safe_seq_buf {
type irq_devres (line 29175) | struct irq_devres {
type irq_desc_devres (line 29180) | struct irq_desc_devres {
type irqchip_fwid (line 29185) | struct irqchip_fwid {
type irq_affinity (line 29199) | struct irq_affinity {
type node_vectors (line 29208) | struct node_vectors {
type cpumap (line 29216) | struct cpumap {
type irq_matrix___2 (line 29227) | struct irq_matrix___2 {
type trace_event_raw_irq_matrix_global (line 29242) | struct trace_event_raw_irq_matrix_global {
type trace_event_raw_irq_matrix_global_update (line 29251) | struct trace_event_raw_irq_matrix_global_update {
type trace_event_raw_irq_matrix_cpu (line 29261) | struct trace_event_raw_irq_matrix_cpu {
type trace_event_data_offsets_irq_matrix_global (line 29276) | struct trace_event_data_offsets_irq_matrix_global {}
type trace_event_data_offsets_irq_matrix_global_update (line 29278) | struct trace_event_data_offsets_irq_matrix_global_update {}
type trace_event_data_offsets_irq_matrix_cpu (line 29280) | struct trace_event_data_offsets_irq_matrix_cpu {}
type irq_matrix___2 (line 29282) | struct irq_matrix___2
type irq_matrix___2 (line 29284) | struct irq_matrix___2
type irq_matrix___2 (line 29286) | struct irq_matrix___2
type irq_matrix___2 (line 29288) | struct irq_matrix___2
type irq_matrix___2 (line 29290) | struct irq_matrix___2
type irq_matrix___2 (line 29292) | struct irq_matrix___2
type cpumap (line 29292) | struct cpumap
type irq_matrix___2 (line 29294) | struct irq_matrix___2
type cpumap (line 29294) | struct cpumap
type irq_matrix___2 (line 29296) | struct irq_matrix___2
type cpumap (line 29296) | struct cpumap
type irq_matrix___2 (line 29298) | struct irq_matrix___2
type cpumap (line 29298) | struct cpumap
type irq_matrix___2 (line 29300) | struct irq_matrix___2
type cpumap (line 29300) | struct cpumap
type irq_matrix___2 (line 29302) | struct irq_matrix___2
type cpumap (line 29302) | struct cpumap
type irq_matrix___2 (line 29304) | struct irq_matrix___2
type cpumap (line 29304) | struct cpumap
type callback_head (line 29306) | struct callback_head
type callback_head (line 29308) | struct callback_head
type rcu_synchronize (line 29310) | struct rcu_synchronize {
type trace_event_raw_rcu_utilization (line 29315) | struct trace_event_raw_rcu_utilization {
type trace_event_raw_rcu_grace_period (line 29321) | struct trace_event_raw_rcu_grace_period {
type trace_event_raw_rcu_future_grace_period (line 29329) | struct trace_event_raw_rcu_future_grace_period {
type trace_event_raw_rcu_grace_period_init (line 29341) | struct trace_event_raw_rcu_grace_period_init {
type trace_event_raw_rcu_exp_grace_period (line 29352) | struct trace_event_raw_rcu_exp_grace_period {
type trace_event_raw_rcu_exp_funnel_lock (line 29360) | struct trace_event_raw_rcu_exp_funnel_lock {
type trace_event_raw_rcu_preempt_task (line 29370) | struct trace_event_raw_rcu_preempt_task {
type trace_event_raw_rcu_unlock_preempted_task (line 29378) | struct trace_event_raw_rcu_unlock_preempted_task {
type trace_event_raw_rcu_quiescent_state_report (line 29386) | struct trace_event_raw_rcu_quiescent_state_report {
type trace_event_raw_rcu_fqs (line 29399) | struct trace_event_raw_rcu_fqs {
type trace_event_raw_rcu_dyntick (line 29408) | struct trace_event_raw_rcu_dyntick {
type trace_event_raw_rcu_callback (line 29417) | struct trace_event_raw_rcu_callback {
type trace_event_raw_rcu_kfree_callback (line 29426) | struct trace_event_raw_rcu_kfree_callback {
type trace_event_raw_rcu_batch_start (line 29435) | struct trace_event_raw_rcu_batch_start {
type trace_event_raw_rcu_invoke_callback (line 29443) | struct trace_event_raw_rcu_invoke_callback {
type trace_event_raw_rcu_invoke_kfree_callback (line 29451) | struct trace_event_raw_rcu_invoke_kfree_callback {
type trace_event_raw_rcu_invoke_kfree_bulk_callback (line 29459) | struct trace_event_raw_rcu_invoke_kfree_bulk_callback {
type trace_event_raw_rcu_batch_end (line 29467) | struct trace_event_raw_rcu_batch_end {
type trace_event_raw_rcu_torture_read (line 29478) | struct trace_event_raw_rcu_torture_read {
type trace_event_raw_rcu_barrier (line 29488) | struct trace_event_raw_rcu_barrier {
type trace_event_data_offsets_rcu_utilization (line 29498) | struct trace_event_data_offsets_rcu_utilization {}
type trace_event_data_offsets_rcu_grace_period (line 29500) | struct trace_event_data_offsets_rcu_grace_period {}
type trace_event_data_offsets_rcu_future_grace_period (line 29502) | struct trace_event_data_offsets_rcu_future_grace_period {}
type trace_event_data_offsets_rcu_grace_period_init (line 29504) | struct trace_event_data_offsets_rcu_grace_period_init {}
type trace_event_data_offsets_rcu_exp_grace_period (line 29506) | struct trace_event_data_offsets_rcu_exp_grace_period {}
type trace_event_data_offsets_rcu_exp_funnel_lock (line 29508) | struct trace_event_data_offsets_rcu_exp_funnel_lock {}
type trace_event_data_offsets_rcu_preempt_task (line 29510) | struct trace_event_data_offsets_rcu_preempt_task {}
type trace_event_data_offsets_rcu_unlock_preempted_task (line 29512) | struct trace_event_data_offsets_rcu_unlock_preempted_task {}
type trace_event_data_offsets_rcu_quiescent_state_report (line 29514) | struct trace_event_data_offsets_rcu_quiescent_state_report {}
type trace_event_data_offsets_rcu_fqs (line 29516) | struct trace_event_data_offsets_rcu_fqs {}
type trace_event_data_offsets_rcu_dyntick (line 29518) | struct trace_event_data_offsets_rcu_dyntick {}
type trace_event_data_offsets_rcu_callback (line 29520) | struct trace_event_data_offsets_rcu_callback {}
type trace_event_data_offsets_rcu_kfree_callback (line 29522) | struct trace_event_data_offsets_rcu_kfree_callback {}
type trace_event_data_offsets_rcu_batch_start (line 29524) | struct trace_event_data_offsets_rcu_batch_start {}
type trace_event_data_offsets_rcu_invoke_callback (line 29526) | struct trace_event_data_offsets_rcu_invoke_callback {}
type trace_event_data_offsets_rcu_invoke_kfree_callback (line 29528) | struct trace_event_data_offsets_rcu_invoke_kfree_callback {}
type trace_event_data_offsets_rcu_invoke_kfree_bulk_callback (line 29530) | struct trace_event_data_offsets_rcu_invoke_kfree_bulk_callback {}
type trace_event_data_offsets_rcu_batch_end (line 29532) | struct trace_event_data_offsets_rcu_batch_end {}
type trace_event_data_offsets_rcu_torture_read (line 29534) | struct trace_event_data_offsets_rcu_torture_read {}
type trace_event_data_offsets_rcu_barrier (line 29536) | struct trace_event_data_offsets_rcu_barrier {}
type callback_head (line 29560) | struct callback_head
type callback_head (line 29562) | struct callback_head
type callback_head (line 29566) | struct callback_head
type callback_head (line 29568) | struct callback_head
type callback_head (line 29574) | struct callback_head
type ulong (line 29586) | typedef long unsigned int ulong;
type rcu_cblist (line 29588) | struct rcu_cblist {
type rcutorture_type (line 29594) | enum rcutorture_type {
type tick_device_mode (line 29604) | enum tick_device_mode {
type tick_device___2 (line 29609) | struct tick_device___2 {
type rcu_exp_work (line 29614) | struct rcu_exp_work {
type rcu_node (line 29619) | struct rcu_node {
type rcu_data (line 29681) | struct rcu_data {
type rcu_state (line 29723) | struct rcu_state {
type kfree_rcu_bulk_data (line 29779) | struct kfree_rcu_bulk_data {
type kfree_rcu_cpu (line 29786) | struct kfree_rcu_cpu
type kfree_rcu_cpu_work (line 29788) | struct kfree_rcu_cpu_work {
type kfree_rcu_cpu (line 29795) | struct kfree_rcu_cpu {
type pto_T_____18 (line 29807) | typedef char pto_T_____18;
type dma_devres (line 29809) | struct dma_devres {
type dma_sync_target (line 29816) | enum dma_sync_target {
type trace_event_raw_swiotlb_bounced (line 29821) | struct trace_event_raw_swiotlb_bounced {
type trace_event_data_offsets_swiotlb_bounced (line 29831) | struct trace_event_data_offsets_swiotlb_bounced {
type device (line 29835) | struct device
type swiotlb_force (line 29835) | enum swiotlb_force
type profile_type (line 29837) | enum profile_type {
type profile_hit (line 29842) | struct profile_hit {
type stacktrace_cookie (line 29847) | struct stacktrace_cookie {
type __kernel_long_t (line 29854) | typedef __kernel_long_t __kernel_suseconds_t;
type __kernel_long_t (line 29856) | typedef __kernel_long_t __kernel_old_time_t;
type __kernel_suseconds_t (line 29858) | typedef __kernel_suseconds_t suseconds_t;
type __u64 (line 29860) | typedef __u64 timeu64_t;
type __kernel_itimerspec (line 29862) | struct __kernel_itimerspec {
type itimerspec64 (line 29867) | struct itimerspec64 {
type old_itimerspec32 (line 29872) | struct old_itimerspec32 {
type old_timex32 (line 29877) | struct old_timex32 {
type __kernel_timex_timeval (line 29906) | struct __kernel_timex_timeval {
type __kernel_timex (line 29911) | struct __kernel_timex {
type trace_event_raw_timer_class (line 29940) | struct trace_event_raw_timer_class {
type trace_event_raw_timer_start (line 29946) | struct trace_event_raw_timer_start {
type trace_event_raw_timer_expire_entry (line 29956) | struct trace_event_raw_timer_expire_entry {
type trace_event_raw_hrtimer_init (line 29965) | struct trace_event_raw_hrtimer_init {
type trace_event_raw_hrtimer_start (line 29973) | struct trace_event_raw_hrtimer_start {
type trace_event_raw_hrtimer_expire_entry (line 29983) | struct trace_event_raw_hrtimer_expire_entry {
type trace_event_raw_hrtimer_class (line 29991) | struct trace_event_raw_hrtimer_class {
type trace_event_raw_itimer_state (line 29997) | struct trace_event_raw_itimer_state {
type trace_event_raw_itimer_expire (line 30008) | struct trace_event_raw_itimer_expire {
type trace_event_raw_tick_stop (line 30016) | struct trace_event_raw_tick_stop {
type trace_event_data_offsets_timer_class (line 30023) | struct trace_event_data_offsets_timer_class {}
type trace_event_data_offsets_timer_start (line 30025) | struct trace_event_data_offsets_timer_start {}
type trace_event_data_offsets_timer_expire_entry (line 30027) | struct trace_event_data_offsets_timer_expire_entry {}
type trace_event_data_offsets_hrtimer_init (line 30029) | struct trace_event_data_offsets_hrtimer_init {}
type trace_event_data_offsets_hrtimer_start (line 30031) | struct trace_event_data_offsets_hrtimer_start {}
type trace_event_data_offsets_hrtimer_expire_entry (line 30033) | struct trace_event_data_offsets_hrtimer_expire_entry {}
type trace_event_data_offsets_hrtimer_class (line 30035) | struct trace_event_data_offsets_hrtimer_class {}
type trace_event_data_offsets_itimer_state (line 30037) | struct trace_event_data_offsets_itimer_state {}
type trace_event_data_offsets_itimer_expire (line 30039) | struct trace_event_data_offsets_itimer_expire {}
type trace_event_data_offsets_tick_stop (line 30041) | struct trace_event_data_offsets_tick_stop {}
type timer_list (line 30043) | struct timer_list
type timer_list (line 30045) | struct timer_list
type timer_list (line 30047) | struct timer_list
type timer_list (line 30049) | struct timer_list
type timer_list (line 30051) | struct timer_list
type hrtimer (line 30053) | struct hrtimer
type hrtimer_mode (line 30053) | enum hrtimer_mode
type hrtimer (line 30055) | struct hrtimer
type hrtimer_mode (line 30055) | enum hrtimer_mode
type hrtimer (line 30057) | struct hrtimer
type hrtimer (line 30059) | struct hrtimer
type hrtimer (line 30061) | struct hrtimer
type itimerspec64 (line 30063) | struct itimerspec64
type pid (line 30065) | struct pid
type timer_base (line 30069) | struct timer_base {
type process_timer (line 30083) | struct process_timer {
type __u32 (line 30088) | typedef __u32 pao_T_____5;
type system_time_snapshot (line 30090) | struct system_time_snapshot {
type system_device_crosststamp (line 30098) | struct system_device_crosststamp {
type tk_read_base (line 30104) | struct tk_read_base {
type timekeeper (line 30115) | struct timekeeper {
type audit_ntp_val (line 30141) | struct audit_ntp_val {
type audit_ntp_data (line 30146) | struct audit_ntp_data {
type timekeeping_adv_mode (line 30150) | enum timekeeping_adv_mode {
type tk_fast (line 30155) | struct tk_fast {
type s64 (line 30160) | typedef s64 int64_t;
type tick_nohz_mode (line 30162) | enum tick_nohz_mode {
type tick_sched (line 30168) | struct tick_sched {
type timer_list_iter (line 30195) | struct timer_list_iter {
type tm (line 30201) | struct tm {
type cyclecounter (line 30212) | struct cyclecounter {
type timecounter (line 30219) | struct timecounter {
type __kernel_timer_t (line 30227) | typedef __kernel_timer_t timer_t;
type rtc_wkalrm (line 30229) | struct rtc_wkalrm {
type alarmtimer_type (line 30235) | enum alarmtimer_type {
type alarmtimer_restart (line 30243) | enum alarmtimer_restart {
type alarm (line 30248) | struct alarm {
type cpu_timer (line 30257) | struct cpu_timer {
type k_clock (line 30265) | struct k_clock
type k_itimer (line 30267) | struct k_itimer {
type k_clock (line 30298) | struct k_clock {
type class_interface (line 30317) | struct class_interface {
type rtc_class_ops (line 30324) | struct rtc_class_ops {
type rtc_device (line 30336) | struct rtc_device
type rtc_timer (line 30338) | struct rtc_timer {
type rtc_device (line 30346) | struct rtc_device {
type platform_driver (line 30378) | struct platform_driver {
type trace_event_raw_alarmtimer_suspend (line 30389) | struct trace_event_raw_alarmtimer_suspend {
type trace_event_raw_alarm_class (line 30396) | struct trace_event_raw_alarm_class {
type trace_event_data_offsets_alarmtimer_suspend (line 30405) | struct trace_event_data_offsets_alarmtimer_suspend {}
type trace_event_data_offsets_alarm_class (line 30407) | struct trace_event_data_offsets_alarm_class {}
type alarm (line 30411) | struct alarm
type alarm (line 30413) | struct alarm
type alarm (line 30415) | struct alarm
type alarm_base (line 30417) | struct alarm_base {
type sigevent (line 30425) | struct sigevent {
type sigevent_t (line 30439) | typedef struct sigevent sigevent_t;
type compat_sigevent (line 30441) | struct compat_sigevent {
type uint (line 30455) | typedef unsigned int uint;
type posix_clock (line 30457) | struct posix_clock
type posix_clock_operations (line 30459) | struct posix_clock_operations {
type posix_clock (line 30472) | struct posix_clock {
type posix_clock_desc (line 30480) | struct posix_clock_desc {
type __kernel_old_itimerval (line 30485) | struct __kernel_old_itimerval {
type old_itimerval32 (line 30490) | struct old_itimerval32 {
type ce_unbind (line 30495) | struct ce_unbind {
type ktime_t (line 30500) | typedef ktime_t pto_T_____19;
type proc_timens_offset (line 30502) | struct proc_timens_offset {
type mm_struct (line 30515) | struct mm_struct
type futex_pi_state (line 30528) | struct futex_pi_state {
type futex_q (line 30536) | struct futex_q {
type futex_hash_bucket (line 30547) | struct futex_hash_bucket {
type futex_access (line 30558) | enum futex_access {
type dma_chan (line 30563) | struct dma_chan {
type call_function_data (line 30570) | struct call_function_data {
type smp_call_on_cpu_struct (line 30576) | struct smp_call_on_cpu_struct {
type latch_tree_root (line 30585) | struct latch_tree_root {
type latch_tree_ops (line 30590) | struct latch_tree_ops {
type module_use (line 30595) | struct module_use {
type module_sect_attr (line 30602) | struct module_sect_attr {
type module_sect_attrs (line 30607) | struct module_sect_attrs {
type module_notes_attrs (line 30613) | struct module_notes_attrs {
type symsearch (line 30619) | struct symsearch {
type kernel_read_file_id (line 30631) | enum kernel_read_file_id {
type kernel_load_data_id (line 30644) | enum kernel_load_data_id {
type _ddebug (line 30661) | struct _ddebug {
type load_info (line 30674) | struct load_info {
type trace_event_raw_module_load (line 30700) | struct trace_event_raw_module_load {
type trace_event_raw_module_free (line 30707) | struct trace_event_raw_module_free {
type trace_event_raw_module_refcnt (line 30713) | struct trace_event_raw_module_refcnt {
type trace_event_raw_module_request (line 30721) | struct trace_event_raw_module_request {
type trace_event_data_offsets_module_load (line 30729) | struct trace_event_data_offsets_module_load {
type trace_event_data_offsets_module_free (line 30733) | struct trace_event_data_offsets_module_free {
type trace_event_data_offsets_module_refcnt (line 30737) | struct trace_event_data_offsets_module_refcnt {
type trace_event_data_offsets_module_request (line 30741) | struct trace_event_data_offsets_module_request {
type module (line 30745) | struct module
type module (line 30747) | struct module
type module (line 30749) | struct module
type module (line 30751) | struct module
type mod_tree_root (line 30755) | struct mod_tree_root {
type find_symbol_arg (line 30761) | struct find_symbol_arg {
type mod_initfree (line 30770) | struct mod_initfree {
type kallsym_iter (line 30775) | struct kallsym_iter {
type __u16 (line 30797) | typedef __u16 comp_t;
type __u32 (line 30799) | typedef __u32 comp2_t;
type acct (line 30801) | struct acct {
type acct_t (line 30826) | typedef struct acct acct_t;
type fs_pin (line 30828) | struct fs_pin {
type bsd_acct_struct (line 30836) | struct bsd_acct_struct {
type elf64_note (line 30849) | struct elf64_note {
type elf_greg_t (line 30855) | typedef long unsigned int elf_greg_t;
type elf_greg_t (line 30857) | typedef elf_greg_t elf_gregset_t[27];
type elf_siginfo (line 30859) | struct elf_siginfo {
type elf_prstatus (line 30865) | struct elf_prstatus {
type compat_kexec_segment (line 30882) | struct compat_kexec_segment {
type migrate_reason (line 30889) | enum migrate_reason {
type __kernel_ulong_t (line 30900) | typedef __kernel_ulong_t __kernel_ino_t;
type __kernel_ino_t (line 30902) | typedef __kernel_ino_t ino_t;
type kernfs_node_type (line 30904) | enum kernfs_node_type {
type kernfs_root_flag (line 30910) | enum kernfs_root_flag {
type kernfs_fs_context (line 30917) | struct kernfs_fs_context {
type bpf_link_type (line 30931) | enum bpf_link_type {
type bpf_link_info (line 30941) | struct bpf_link_info {
type bpf_link_ops (line 30964) | struct bpf_link_ops
type bpf_link (line 30966) | struct bpf_link {
type bpf_link_ops (line 30975) | struct bpf_link_ops {
type bpf_cgroup_link (line 30983) | struct bpf_cgroup_link {
type cgroup_taskset (line 31013) | struct cgroup_taskset {
type css_task_iter (line 31023) | struct css_task_iter {
type cgroup_fs_context (line 31038) | struct cgroup_fs_context {
type cgrp_cset_link (line 31051) | struct cgrp_cset_link {
type cgroup_mgctx (line 31058) | struct cgroup_mgctx {
type trace_event_raw_cgroup_root (line 31065) | struct trace_event_raw_cgroup_root {
type trace_event_raw_cgroup (line 31073) | struct trace_event_raw_cgroup {
type trace_event_raw_cgroup_migrate (line 31082) | struct trace_event_raw_cgroup_migrate {
type trace_event_raw_cgroup_event (line 31093) | struct trace_event_raw_cgroup_event {
type trace_event_data_offsets_cgroup_root (line 31103) | struct trace_event_data_offsets_cgroup_root {
type trace_event_data_offsets_cgroup (line 31107) | struct trace_event_data_offsets_cgroup {
type trace_event_data_offsets_cgroup_migrate (line 31111) | struct trace_event_data_offsets_cgroup_migrate {
type trace_event_data_offsets_cgroup_event (line 31116) | struct trace_event_data_offsets_cgroup_event {
type cgroup_root (line 31120) | struct cgroup_root
type cgroup_root (line 31122) | struct cgroup_root
type cgroup_root (line 31124) | struct cgroup_root
type cgroup (line 31126) | struct cgroup
type cgroup (line 31128) | struct cgroup
type cgroup (line 31130) | struct cgroup
type cgroup (line 31132) | struct cgroup
type cgroup (line 31134) | struct cgroup
type cgroup (line 31136) | struct cgroup
type cgroup (line 31138) | struct cgroup
type task_struct (line 31138) | struct task_struct
type cgroup (line 31140) | struct cgroup
type task_struct (line 31140) | struct task_struct
type cgroup (line 31142) | struct cgroup
type cgroup (line 31144) | struct cgroup
type cgroup2_param (line 31146) | enum cgroup2_param {
type cgroupstats (line 31153) | struct cgroupstats {
type cgroup_filetype (line 31161) | enum cgroup_filetype {
type cgroup_pidlist (line 31166) | struct cgroup_pidlist {
type cgroup1_param (line 31178) | enum cgroup1_param {
type freezer_state_flags (line 31189) | enum freezer_state_flags {
type freezer (line 31197) | struct freezer {
type fmeter (line 31202) | struct fmeter {
type cpuset (line 31209) | struct cpuset {
type tmpmasks (line 31228) | struct tmpmasks {
type cpuset_flagbits_t (line 31234) | typedef enum {
type subparts_cmd (line 31245) | enum subparts_cmd {
type cpuset_migrate_mm_work (line 31251) | struct cpuset_migrate_mm_work {
type cpuset_filetype_t (line 31258) | typedef enum {
type cpu_stop_done (line 31277) | struct cpu_stop_done {
type cpu_stopper (line 31283) | struct cpu_stopper {
type multi_stop_state (line 31291) | enum multi_stop_state {
type multi_stop_data (line 31299) | struct multi_stop_data {
type __kernel_mqd_t (line 31308) | typedef int __kernel_mqd_t;
type __kernel_mqd_t (line 31310) | typedef __kernel_mqd_t mqd_t;
type audit_state (line 31312) | enum audit_state {
type audit_cap_data (line 31318) | struct audit_cap_data {
type audit_names (line 31329) | struct audit_names {
type mq_attr (line 31347) | struct mq_attr {
type audit_proctitle (line 31355) | struct audit_proctitle {
type audit_aux_data (line 31360) | struct audit_aux_data
type audit_tree_refs (line 31362) | struct audit_tree_refs
type audit_context (line 31364) | struct audit_context {
type audit_nlgrps (line 31462) | enum audit_nlgrps {
type audit_status (line 31468) | struct audit_status {
type audit_features (line 31484) | struct audit_features {
type audit_tty_status (line 31491) | struct audit_tty_status {
type audit_sig_info (line 31496) | struct audit_sig_info {
type net_generic (line 31502) | struct net_generic {
type scm_creds (line 31512) | struct scm_creds {
type netlink_skb_parms (line 31518) | struct netlink_skb_parms {
type netlink_kernel_cfg (line 31528) | struct netlink_kernel_cfg {
type audit_netlink_list (line 31538) | struct audit_netlink_list {
type audit_net (line 31544) | struct audit_net {
type auditd_connection (line 31548) | struct auditd_connection {
type audit_ctl_mutex (line 31555) | struct audit_ctl_mutex {
type audit_buffer (line 31560) | struct audit_buffer {
type audit_reply (line 31566) | struct audit_reply {
type audit_rule_data (line 31584) | struct audit_rule_data {
type audit_field (line 31596) | struct audit_field
type audit_watch (line 31598) | struct audit_watch
type audit_tree (line 31600) | struct audit_tree
type audit_fsnotify_mark (line 31602) | struct audit_fsnotify_mark
type audit_krule (line 31604) | struct audit_krule {
type audit_field (line 31624) | struct audit_field {
type audit_entry (line 31638) | struct audit_entry {
type audit_buffer___2 (line 31644) | struct audit_buffer___2
type __kernel_key_t (line 31646) | typedef int __kernel_key_t;
type __kernel_key_t (line 31648) | typedef __kernel_key_t key_t;
type cpu_vfs_cap_data (line 31650) | struct cpu_vfs_cap_data {
type kern_ipc_perm (line 31657) | struct kern_ipc_perm {
type fsnotify_mark_connector (line 31680) | struct fsnotify_mark_connector
type fsnotify_mark_connector (line 31682) | struct fsnotify_mark_connector {
type audit_nfcfgop (line 31694) | enum audit_nfcfgop {
type fsnotify_obj_type (line 31700) | enum fsnotify_obj_type {
type audit_aux_data (line 31708) | struct audit_aux_data {
type audit_chunk (line 31713) | struct
Condensed preview — 11 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (2,971K chars).
[
{
"path": ".gitignore",
"chars": 31,
"preview": "bin/knockles\n.output/\n.vscode/\n"
},
{
"path": ".gitmodules",
"chars": 77,
"preview": "[submodule \"libbpf\"]\n\tpath = libbpf\n\turl = https://github.com/libbpf/libbpf/\n"
},
{
"path": "LICENSE",
"chars": 10173,
"preview": " Apache License\n Version 2.0, January 2004\n "
},
{
"path": "README.md",
"chars": 2172,
"preview": "> **Warning**\n> This git repository was meant to be a small (and fun) demonstration of what can be done with eBPF. It wa"
},
{
"path": "src/Makefile",
"chars": 2765,
"preview": "# SPDX-License-Identifier: (LGPL-2.1 OR BSD-2-Clause)\nOUTPUT := .output\nCLANG ?= clang-11\nLLVM_STRIP ?= llvm-strip-11\nBP"
},
{
"path": "src/bin/.gitkeep",
"chars": 0,
"preview": ""
},
{
"path": "src/knockles.bpf.c",
"chars": 1767,
"preview": "#include \"vmlinux.h\"\n#include \"knockles_event.h\"\n#include <bpf/bpf_helpers.h>\n#include <bpf/bpf_tracing.h>\n#include <bpf"
},
{
"path": "src/knockles.c",
"chars": 7622,
"preview": "#include <argp.h>\n#include <unistd.h>\n#include <stdio.h>\n#include <signal.h>\n#include <fcntl.h>\n#include <sys/stat.h>\n#i"
},
{
"path": "src/knockles_event.h",
"chars": 281,
"preview": "#ifndef __KNOCKLES_EVENT_H__\n#define __KNOCKLES_EVENT_H__\n\n/****************************************************/\n/*!\n *"
},
{
"path": "src/knuckknock.py",
"chars": 1204,
"preview": "#!/usr/bin/env python3\nfrom scapy.layers.inet import IP, TCP\nfrom scapy.sendrecv import send\nfrom time import time\nimpor"
},
{
"path": "src/vmlinux.h",
"chars": 2721148,
"preview": "#ifndef __VMLINUX_H__\n#define __VMLINUX_H__\n\n#ifndef BPF_NO_PRESERVE_ACCESS_INDEX\n#pragma clang attribute push (__attrib"
}
]
About this extraction
This page contains the full source code of the eeriedusk/knockles GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 11 files (2.6 MB), approximately 687.3k tokens, and a symbol index with 15067 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.
Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.