Linux web-conference.aiou.edu.pk 5.4.0-204-generic #224-Ubuntu SMP Thu Dec 5 13:38:28 UTC 2024 x86_64
Apache/2.4.41 (Ubuntu)
: 172.16.50.247 | : 13.59.135.139
Cant Read [ /etc/named.conf ]
7.4.3-4ubuntu2.28
appadmin
www.github.com/MadExploits
Terminal
AUTO ROOT
Adminer
Backdoor Destroyer
Linux Exploit
Lock Shell
Lock File
Create User
CREATE RDP
PHP Mailer
BACKCONNECT
UNLOCK SHELL
HASH IDENTIFIER
CPANEL RESET
CREATE WP USER
BLACK DEFEND!
README
+ Create Folder
+ Create File
/
usr /
src /
linux-headers-5.4.0-204 /
include /
linux /
[ HOME SHELL ]
Name
Size
Permission
Action
amba
[ DIR ]
drwxr-xr-x
avf
[ DIR ]
drwxr-xr-x
bcma
[ DIR ]
drwxr-xr-x
byteorder
[ DIR ]
drwxr-xr-x
can
[ DIR ]
drwxr-xr-x
ceph
[ DIR ]
drwxr-xr-x
clk
[ DIR ]
drwxr-xr-x
crush
[ DIR ]
drwxr-xr-x
decompress
[ DIR ]
drwxr-xr-x
dma
[ DIR ]
drwxr-xr-x
dsa
[ DIR ]
drwxr-xr-x
extcon
[ DIR ]
drwxr-xr-x
firmware
[ DIR ]
drwxr-xr-x
fpga
[ DIR ]
drwxr-xr-x
fsl
[ DIR ]
drwxr-xr-x
gpio
[ DIR ]
drwxr-xr-x
greybus
[ DIR ]
drwxr-xr-x
hsi
[ DIR ]
drwxr-xr-x
i3c
[ DIR ]
drwxr-xr-x
iio
[ DIR ]
drwxr-xr-x
input
[ DIR ]
drwxr-xr-x
irqchip
[ DIR ]
drwxr-xr-x
isdn
[ DIR ]
drwxr-xr-x
lockd
[ DIR ]
drwxr-xr-x
mailbox
[ DIR ]
drwxr-xr-x
mdio
[ DIR ]
drwxr-xr-x
mfd
[ DIR ]
drwxr-xr-x
mlx4
[ DIR ]
drwxr-xr-x
mlx5
[ DIR ]
drwxr-xr-x
mmc
[ DIR ]
drwxr-xr-x
mtd
[ DIR ]
drwxr-xr-x
mux
[ DIR ]
drwxr-xr-x
netfilter
[ DIR ]
drwxr-xr-x
netfilter_arp
[ DIR ]
drwxr-xr-x
netfilter_bridge
[ DIR ]
drwxr-xr-x
netfilter_ipv4
[ DIR ]
drwxr-xr-x
netfilter_ipv6
[ DIR ]
drwxr-xr-x
perf
[ DIR ]
drwxr-xr-x
phy
[ DIR ]
drwxr-xr-x
pinctrl
[ DIR ]
drwxr-xr-x
platform_data
[ DIR ]
drwxr-xr-x
power
[ DIR ]
drwxr-xr-x
qed
[ DIR ]
drwxr-xr-x
raid
[ DIR ]
drwxr-xr-x
regulator
[ DIR ]
drwxr-xr-x
remoteproc
[ DIR ]
drwxr-xr-x
reset
[ DIR ]
drwxr-xr-x
rpmsg
[ DIR ]
drwxr-xr-x
rtc
[ DIR ]
drwxr-xr-x
sched
[ DIR ]
drwxr-xr-x
soc
[ DIR ]
drwxr-xr-x
soundwire
[ DIR ]
drwxr-xr-x
spi
[ DIR ]
drwxr-xr-x
ssb
[ DIR ]
drwxr-xr-x
sunrpc
[ DIR ]
drwxr-xr-x
ulpi
[ DIR ]
drwxr-xr-x
unaligned
[ DIR ]
drwxr-xr-x
usb
[ DIR ]
drwxr-xr-x
wimax
[ DIR ]
drwxr-xr-x
8250_pci.h
1.01
KB
-rw-r--r--
a.out.h
354
B
-rw-r--r--
acct.h
2.49
KB
-rw-r--r--
acpi.h
37.08
KB
-rw-r--r--
acpi_dma.h
3.08
KB
-rw-r--r--
acpi_iort.h
2.22
KB
-rw-r--r--
acpi_pmtmr.h
674
B
-rw-r--r--
adb.h
1.79
KB
-rw-r--r--
adfs_fs.h
574
B
-rw-r--r--
adxl.h
310
B
-rw-r--r--
aer.h
1.73
KB
-rw-r--r--
agp_backend.h
3.45
KB
-rw-r--r--
agpgart.h
3.82
KB
-rw-r--r--
ahci-remap.h
607
B
-rw-r--r--
ahci_platform.h
1.54
KB
-rw-r--r--
aio.h
651
B
-rw-r--r--
alarmtimer.h
1.83
KB
-rw-r--r--
alcor_pci.h
8.8
KB
-rw-r--r--
altera_jtaguart.h
379
B
-rw-r--r--
altera_uart.h
397
B
-rw-r--r--
amd-iommu.h
6.45
KB
-rw-r--r--
anon_inodes.h
494
B
-rw-r--r--
apm-emulation.h
1.56
KB
-rw-r--r--
apm_bios.h
2.25
KB
-rw-r--r--
apple-gmux.h
918
B
-rw-r--r--
apple_bl.h
498
B
-rw-r--r--
arch_topology.h
1.64
KB
-rw-r--r--
arm-cci.h
1.36
KB
-rw-r--r--
arm-smccc.h
12.39
KB
-rw-r--r--
arm_sdei.h
2.59
KB
-rw-r--r--
armada-37xx-rwtm-mailbox.h
432
B
-rw-r--r--
ascii85.h
532
B
-rw-r--r--
asn1.h
1.79
KB
-rw-r--r--
asn1_ber_bytecode.h
2.52
KB
-rw-r--r--
asn1_decoder.h
468
B
-rw-r--r--
assoc_array.h
2.88
KB
-rw-r--r--
assoc_array_priv.h
5.3
KB
-rw-r--r--
async.h
4.39
KB
-rw-r--r--
async_tx.h
6.21
KB
-rw-r--r--
ata.h
32.95
KB
-rw-r--r--
ata_platform.h
749
B
-rw-r--r--
atalk.h
4.48
KB
-rw-r--r--
ath9k_platform.h
1.44
KB
-rw-r--r--
atm.h
287
B
-rw-r--r--
atm_suni.h
253
B
-rw-r--r--
atm_tcp.h
511
B
-rw-r--r--
atmdev.h
10.21
KB
-rw-r--r--
atmel-mci.h
1.4
KB
-rw-r--r--
atmel-ssc.h
9.74
KB
-rw-r--r--
atmel_pdc.h
1.26
KB
-rw-r--r--
atomic-fallback.h
52.3
KB
-rw-r--r--
atomic.h
2.2
KB
-rw-r--r--
attribute_container.h
2.47
KB
-rw-r--r--
audit.h
18.23
KB
-rw-r--r--
auto_dev-ioctl.h
296
B
-rw-r--r--
auto_fs.h
278
B
-rw-r--r--
auxvec.h
304
B
-rw-r--r--
average.h
2.42
KB
-rw-r--r--
b1pcmcia.h
666
B
-rw-r--r--
backing-dev-defs.h
9.33
KB
-rw-r--r--
backing-dev.h
13.92
KB
-rw-r--r--
backlight.h
6.37
KB
-rw-r--r--
badblocks.h
2.14
KB
-rw-r--r--
balloon_compaction.h
6.59
KB
-rw-r--r--
bcd.h
559
B
-rw-r--r--
bch.h
2
KB
-rw-r--r--
bcm47xx_nvram.h
1.01
KB
-rw-r--r--
bcm47xx_sprom.h
386
B
-rw-r--r--
bcm47xx_wdt.h
555
B
-rw-r--r--
bcm963xx_nvram.h
2.96
KB
-rw-r--r--
bcm963xx_tag.h
3.6
KB
-rw-r--r--
binfmts.h
5.15
KB
-rw-r--r--
bio.h
20.71
KB
-rw-r--r--
bit_spinlock.h
2.3
KB
-rw-r--r--
bitfield.h
4.89
KB
-rw-r--r--
bitmap.h
18.76
KB
-rw-r--r--
bitops.h
6.99
KB
-rw-r--r--
bitrev.h
2.53
KB
-rw-r--r--
bits.h
883
B
-rw-r--r--
blk-cgroup.h
25.69
KB
-rw-r--r--
blk-mq-pci.h
269
B
-rw-r--r--
blk-mq-rdma.h
273
B
-rw-r--r--
blk-mq-virtio.h
293
B
-rw-r--r--
blk-mq.h
11.4
KB
-rw-r--r--
blk-pm.h
717
B
-rw-r--r--
blk_types.h
13.13
KB
-rw-r--r--
blkdev.h
52.41
KB
-rw-r--r--
blkpg.h
436
B
-rw-r--r--
blktrace_api.h
3.87
KB
-rw-r--r--
blockgroup_lock.h
810
B
-rw-r--r--
bma150.h
1.26
KB
-rw-r--r--
bottom_half.h
803
B
-rw-r--r--
bpf-cgroup.h
13.81
KB
-rw-r--r--
bpf.h
36.68
KB
-rw-r--r--
bpf_lirc.h
698
B
-rw-r--r--
bpf_trace.h
166
B
-rw-r--r--
bpf_types.h
3.15
KB
-rw-r--r--
bpf_verifier.h
15.18
KB
-rw-r--r--
bpfilter.h
728
B
-rw-r--r--
brcmphy.h
10.8
KB
-rw-r--r--
bsearch.h
275
B
-rw-r--r--
bsg-lib.h
1.7
KB
-rw-r--r--
bsg.h
1012
B
-rw-r--r--
btf.h
2.32
KB
-rw-r--r--
btree-128.h
2.67
KB
-rw-r--r--
btree-type.h
3.9
KB
-rw-r--r--
btree.h
6.83
KB
-rw-r--r--
btrfs.h
145
B
-rw-r--r--
buffer_head.h
14.4
KB
-rw-r--r--
bug.h
1.92
KB
-rw-r--r--
build-salt.h
375
B
-rw-r--r--
build_bug.h
2.86
KB
-rw-r--r--
bvec.h
4.72
KB
-rw-r--r--
c2port.h
1.35
KB
-rw-r--r--
cache.h
2.13
KB
-rw-r--r--
cacheinfo.h
3.32
KB
-rw-r--r--
capability.h
7.79
KB
-rw-r--r--
cb710.h
5.36
KB
-rw-r--r--
cciss_ioctl.h
1.03
KB
-rw-r--r--
ccp.h
18.12
KB
-rw-r--r--
cdev.h
845
B
-rw-r--r--
cdrom.h
8.78
KB
-rw-r--r--
cfag12864b.h
1.46
KB
-rw-r--r--
cgroup-defs.h
26.87
KB
-rw-r--r--
cgroup.h
28.89
KB
-rw-r--r--
cgroup_rdma.h
1.18
KB
-rw-r--r--
cgroup_subsys.h
1.17
KB
-rw-r--r--
circ_buf.h
1.09
KB
-rw-r--r--
cleancache.h
3.89
KB
-rw-r--r--
clk-provider.h
40.26
KB
-rw-r--r--
clk.h
31.76
KB
-rw-r--r--
clkdev.h
1.52
KB
-rw-r--r--
clock_cooling.h
1.65
KB
-rw-r--r--
clockchips.h
7.27
KB
-rw-r--r--
clocksource.h
8.56
KB
-rw-r--r--
cm4000_cs.h
199
B
-rw-r--r--
cma.h
1.18
KB
-rw-r--r--
cmdline-parser.h
1.21
KB
-rw-r--r--
cn_proc.h
1.85
KB
-rw-r--r--
cnt32_to_63.h
3.46
KB
-rw-r--r--
coda.h
2.16
KB
-rw-r--r--
compaction.h
7.33
KB
-rw-r--r--
compat.h
31.51
KB
-rw-r--r--
compiler-clang.h
1.35
KB
-rw-r--r--
compiler-gcc.h
4.9
KB
-rw-r--r--
compiler-intel.h
949
B
-rw-r--r--
compiler.h
13.4
KB
-rw-r--r--
compiler_attributes.h
11.54
KB
-rw-r--r--
compiler_types.h
7.44
KB
-rw-r--r--
completion.h
4.05
KB
-rw-r--r--
component.h
4.07
KB
-rw-r--r--
configfs.h
8.56
KB
-rw-r--r--
connector.h
3.8
KB
-rw-r--r--
console.h
7.45
KB
-rw-r--r--
console_struct.h
6.79
KB
-rw-r--r--
consolemap.h
1.04
KB
-rw-r--r--
const.h
157
B
-rw-r--r--
container.h
610
B
-rw-r--r--
context_tracking.h
4.43
KB
-rw-r--r--
context_tracking_state.h
1.39
KB
-rw-r--r--
cordic.h
2.08
KB
-rw-r--r--
coredump.h
797
B
-rw-r--r--
coresight-pmu.h
989
B
-rw-r--r--
coresight-stm.h
152
B
-rw-r--r--
coresight.h
10.2
KB
-rw-r--r--
count_zeros.h
1.42
KB
-rw-r--r--
counter.h
16.86
KB
-rw-r--r--
counter_enum.h
1.43
KB
-rw-r--r--
cper.h
15.64
KB
-rw-r--r--
cpu.h
7.63
KB
-rw-r--r--
cpu_cooling.h
1.72
KB
-rw-r--r--
cpu_pm.h
2.38
KB
-rw-r--r--
cpu_rmap.h
1.68
KB
-rw-r--r--
cpufeature.h
1.71
KB
-rw-r--r--
cpufreq.h
30.02
KB
-rw-r--r--
cpuhotplug.h
12.32
KB
-rw-r--r--
cpuidle.h
9.81
KB
-rw-r--r--
cpuidle_haltpoll.h
312
B
-rw-r--r--
cpumask.h
26.34
KB
-rw-r--r--
cpuset.h
7.29
KB
-rw-r--r--
crash_core.h
3.06
KB
-rw-r--r--
crash_dump.h
4.02
KB
-rw-r--r--
crc-ccitt.h
609
B
-rw-r--r--
crc-itu-t.h
531
B
-rw-r--r--
crc-t10dif.h
453
B
-rw-r--r--
crc16.h
540
B
-rw-r--r--
crc32.h
2.83
KB
-rw-r--r--
crc32c.h
331
B
-rw-r--r--
crc32poly.h
610
B
-rw-r--r--
crc4.h
192
B
-rw-r--r--
crc64.h
280
B
-rw-r--r--
crc7.h
316
B
-rw-r--r--
crc8.h
3.65
KB
-rw-r--r--
cred.h
12.34
KB
-rw-r--r--
crypto.h
63.01
KB
-rw-r--r--
cryptohash.h
319
B
-rw-r--r--
cs5535.h
6.13
KB
-rw-r--r--
ctype.h
1.75
KB
-rw-r--r--
cuda.h
613
B
-rw-r--r--
cyclades.h
10.36
KB
-rw-r--r--
davinci_emac.h
1.05
KB
-rw-r--r--
dax.h
7.21
KB
-rw-r--r--
dca.h
1.88
KB
-rw-r--r--
dcache.h
18.32
KB
-rw-r--r--
dccp.h
10.73
KB
-rw-r--r--
dcookies.h
1.3
KB
-rw-r--r--
debug_locks.h
1.54
KB
-rw-r--r--
debugfs.h
11.28
KB
-rw-r--r--
debugobjects.h
3.89
KB
-rw-r--r--
delay.h
1.88
KB
-rw-r--r--
delayacct.h
5.26
KB
-rw-r--r--
delayed_call.h
709
B
-rw-r--r--
devcoredump.h
2.21
KB
-rw-r--r--
devfreq-event.h
5.82
KB
-rw-r--r--
devfreq.h
13.06
KB
-rw-r--r--
devfreq_cooling.h
3.54
KB
-rw-r--r--
device-mapper.h
17.45
KB
-rw-r--r--
device.h
67.82
KB
-rw-r--r--
device_cgroup.h
1.86
KB
-rw-r--r--
devpts_fs.h
1.13
KB
-rw-r--r--
digsig.h
1.19
KB
-rw-r--r--
dim.h
8.81
KB
-rw-r--r--
dio.h
10.97
KB
-rw-r--r--
dirent.h
216
B
-rw-r--r--
dlm.h
5.86
KB
-rw-r--r--
dlm_plock.h
532
B
-rw-r--r--
dm-bufio.h
4.51
KB
-rw-r--r--
dm-dirty-log.h
3.94
KB
-rw-r--r--
dm-io.h
1.93
KB
-rw-r--r--
dm-kcopyd.h
2.89
KB
-rw-r--r--
dm-region-hash.h
3.11
KB
-rw-r--r--
dm9000.h
987
B
-rw-r--r--
dma-buf.h
14.57
KB
-rw-r--r--
dma-contiguous.h
4.73
KB
-rw-r--r--
dma-debug.h
4.18
KB
-rw-r--r--
dma-direct.h
2.69
KB
-rw-r--r--
dma-direction.h
220
B
-rw-r--r--
dma-fence-array.h
2.14
KB
-rw-r--r--
dma-fence-chain.h
2.04
KB
-rw-r--r--
dma-fence.h
19.71
KB
-rw-r--r--
dma-iommu.h
1.94
KB
-rw-r--r--
dma-mapping.h
29.05
KB
-rw-r--r--
dma-noncoherent.h
3.36
KB
-rw-r--r--
dma-resv.h
9.16
KB
-rw-r--r--
dmaengine.h
45.86
KB
-rw-r--r--
dmapool.h
1.79
KB
-rw-r--r--
dmar.h
7.5
KB
-rw-r--r--
dmi.h
4.07
KB
-rw-r--r--
dnotify.h
1.02
KB
-rw-r--r--
dns_resolver.h
1.36
KB
-rw-r--r--
dqblk_qtree.h
2.19
KB
-rw-r--r--
dqblk_v1.h
327
B
-rw-r--r--
dqblk_v2.h
406
B
-rw-r--r--
drbd.h
10.07
KB
-rw-r--r--
drbd_genl.h
21.49
KB
-rw-r--r--
drbd_genl_api.h
1.77
KB
-rw-r--r--
drbd_limits.h
7.82
KB
-rw-r--r--
ds2782_battery.h
158
B
-rw-r--r--
dtlk.h
3.5
KB
-rw-r--r--
dw_apb_timer.h
1.56
KB
-rw-r--r--
dynamic_debug.h
6.06
KB
-rw-r--r--
dynamic_queue_limits.h
3.7
KB
-rw-r--r--
earlycpio.h
359
B
-rw-r--r--
ecryptfs.h
3.82
KB
-rw-r--r--
edac.h
20.33
KB
-rw-r--r--
edd.h
1.05
KB
-rw-r--r--
eeprom_93cx6.h
2.31
KB
-rw-r--r--
eeprom_93xx46.h
879
B
-rw-r--r--
efi-bgrt.h
644
B
-rw-r--r--
efi.h
53.96
KB
-rw-r--r--
efs_vh.h
1.55
KB
-rw-r--r--
eisa.h
2.96
KB
-rw-r--r--
elevator.h
5.37
KB
-rw-r--r--
elf-fdpic.h
1.98
KB
-rw-r--r--
elf-randomize.h
583
B
-rw-r--r--
elf.h
1.53
KB
-rw-r--r--
elfcore-compat.h
1.23
KB
-rw-r--r--
elfcore.h
2.52
KB
-rw-r--r--
elfnote.h
3.54
KB
-rw-r--r--
enclosure.h
4.02
KB
-rw-r--r--
energy_model.h
6.47
KB
-rw-r--r--
err.h
1.55
KB
-rw-r--r--
errno.h
1.39
KB
-rw-r--r--
error-injection.h
607
B
-rw-r--r--
errqueue.h
524
B
-rw-r--r--
errseq.h
382
B
-rw-r--r--
etherdevice.h
16.97
KB
-rw-r--r--
ethtool.h
17.89
KB
-rw-r--r--
eventfd.h
2.12
KB
-rw-r--r--
eventpoll.h
1.95
KB
-rw-r--r--
evm.h
2.65
KB
-rw-r--r--
export.h
6.16
KB
-rw-r--r--
exportfs.h
7.46
KB
-rw-r--r--
ext2_fs.h
967
B
-rw-r--r--
extable.h
1.06
KB
-rw-r--r--
extcon-provider.h
3.92
KB
-rw-r--r--
extcon.h
10.18
KB
-rw-r--r--
f2fs_fs.h
18.66
KB
-rw-r--r--
f75375s.h
541
B
-rw-r--r--
falloc.h
792
B
-rw-r--r--
fanotify.h
2.66
KB
-rw-r--r--
fault-inject.h
1.93
KB
-rw-r--r--
fb.h
27.82
KB
-rw-r--r--
fbcon.h
2.09
KB
-rw-r--r--
fcdevice.h
774
B
-rw-r--r--
fcntl.h
1.29
KB
-rw-r--r--
fd.h
490
B
-rw-r--r--
fddidevice.h
833
B
-rw-r--r--
fdtable.h
3.34
KB
-rw-r--r--
fec.h
463
B
-rw-r--r--
file.h
2.24
KB
-rw-r--r--
filter.h
33.82
KB
-rw-r--r--
fips.h
303
B
-rw-r--r--
firewire.h
13.4
KB
-rw-r--r--
firmware-map.h
959
B
-rw-r--r--
firmware.h
2.66
KB
-rw-r--r--
fixp-arith.h
3.76
KB
-rw-r--r--
flat.h
2.57
KB
-rw-r--r--
flex_proportions.h
2.81
KB
-rw-r--r--
font.h
1.6
KB
-rw-r--r--
frame.h
1.12
KB
-rw-r--r--
freezer.h
8.67
KB
-rw-r--r--
frontswap.h
3.05
KB
-rw-r--r--
fs.h
118.49
KB
-rw-r--r--
fs_context.h
7.8
KB
-rw-r--r--
fs_enet_pd.h
3.38
KB
-rw-r--r--
fs_parser.h
4.6
KB
-rw-r--r--
fs_pin.h
539
B
-rw-r--r--
fs_stack.h
811
B
-rw-r--r--
fs_struct.h
1.03
KB
-rw-r--r--
fs_types.h
2.02
KB
-rw-r--r--
fs_uart_pd.h
1.49
KB
-rw-r--r--
fscache-cache.h
18.6
KB
-rw-r--r--
fscache.h
28.68
KB
-rw-r--r--
fscrypt.h
25.72
KB
-rw-r--r--
fsi-occ.h
681
B
-rw-r--r--
fsi-sbefifo.h
629
B
-rw-r--r--
fsi.h
2.26
KB
-rw-r--r--
fsl-diu-fb.h
3.87
KB
-rw-r--r--
fsl_devices.h
4.16
KB
-rw-r--r--
fsl_hypervisor.h
2.76
KB
-rw-r--r--
fsl_ifc.h
24.48
KB
-rw-r--r--
fsldma.h
202
B
-rw-r--r--
fsnotify.h
9.45
KB
-rw-r--r--
fsnotify_backend.h
20.3
KB
-rw-r--r--
fsverity.h
5.97
KB
-rw-r--r--
ftrace.h
30.13
KB
-rw-r--r--
ftrace_irq.h
823
B
-rw-r--r--
futex.h
2.44
KB
-rw-r--r--
fwnode.h
4.42
KB
-rw-r--r--
gameport.h
5.42
KB
-rw-r--r--
gcd.h
193
B
-rw-r--r--
genalloc.h
7.67
KB
-rw-r--r--
generic-radix-tree.h
6.36
KB
-rw-r--r--
genetlink.h
1.35
KB
-rw-r--r--
genhd.h
24.04
KB
-rw-r--r--
genl_magic_func.h
11.59
KB
-rw-r--r--
genl_magic_struct.h
7.66
KB
-rw-r--r--
getcpu.h
641
B
-rw-r--r--
gfp.h
23.94
KB
-rw-r--r--
glob.h
256
B
-rw-r--r--
gnss.h
1.56
KB
-rw-r--r--
goldfish.h
738
B
-rw-r--r--
gpio-pxa.h
571
B
-rw-r--r--
gpio.h
5.35
KB
-rw-r--r--
gpio_keys.h
1.74
KB
-rw-r--r--
greybus.h
4.14
KB
-rw-r--r--
hardirq.h
1.95
KB
-rw-r--r--
hash.h
3
KB
-rw-r--r--
hashtable.h
6.63
KB
-rw-r--r--
hdlc.h
3.19
KB
-rw-r--r--
hdlcdrv.h
6.32
KB
-rw-r--r--
hdmi.h
12.26
KB
-rw-r--r--
hid-debug.h
1.42
KB
-rw-r--r--
hid-roccat.h
484
B
-rw-r--r--
hid-sensor-hub.h
8.64
KB
-rw-r--r--
hid-sensor-ids.h
6.67
KB
-rw-r--r--
hid.h
36.89
KB
-rw-r--r--
hiddev.h
1.42
KB
-rw-r--r--
hidraw.h
1.12
KB
-rw-r--r--
highmem.h
6.77
KB
-rw-r--r--
highuid.h
3.12
KB
-rw-r--r--
hil.h
18.42
KB
-rw-r--r--
hil_mlc.h
5.13
KB
-rw-r--r--
hippidevice.h
1.03
KB
-rw-r--r--
hmm.h
14.21
KB
-rw-r--r--
host1x.h
8.22
KB
-rw-r--r--
hp_sdc.h
14.02
KB
-rw-r--r--
hpet.h
2.55
KB
-rw-r--r--
hrtimer.h
15.93
KB
-rw-r--r--
hrtimer_defs.h
660
B
-rw-r--r--
htcpld.h
617
B
-rw-r--r--
huge_mm.h
12.06
KB
-rw-r--r--
hugetlb.h
19.64
KB
-rw-r--r--
hugetlb_cgroup.h
2.93
KB
-rw-r--r--
hugetlb_inline.h
374
B
-rw-r--r--
hw_breakpoint.h
4.1
KB
-rw-r--r--
hw_random.h
2.12
KB
-rw-r--r--
hwmon-sysfs.h
2.77
KB
-rw-r--r--
hwmon-vid.h
862
B
-rw-r--r--
hwmon.h
13.31
KB
-rw-r--r--
hwspinlock.h
15.64
KB
-rw-r--r--
hyperv.h
42.44
KB
-rw-r--r--
hypervisor.h
608
B
-rw-r--r--
i2c-algo-bit.h
1.4
KB
-rw-r--r--
i2c-algo-pca.h
2.89
KB
-rw-r--r--
i2c-algo-pcf.h
1.21
KB
-rw-r--r--
i2c-dev.h
371
B
-rw-r--r--
i2c-mux.h
1.63
KB
-rw-r--r--
i2c-pxa.h
438
B
-rw-r--r--
i2c-smbus.h
1.29
KB
-rw-r--r--
i2c.h
36.54
KB
-rw-r--r--
i8042.h
1.99
KB
-rw-r--r--
i8253.h
809
B
-rw-r--r--
icmp.h
652
B
-rw-r--r--
icmpv6.h
2.5
KB
-rw-r--r--
ide.h
46.21
KB
-rw-r--r--
idle_inject.h
832
B
-rw-r--r--
idr.h
9.39
KB
-rw-r--r--
ieee80211.h
107.09
KB
-rw-r--r--
ieee802154.h
11.12
KB
-rw-r--r--
if_arp.h
1.81
KB
-rw-r--r--
if_bridge.h
3.72
KB
-rw-r--r--
if_eql.h
1.07
KB
-rw-r--r--
if_ether.h
1.26
KB
-rw-r--r--
if_fddi.h
3.24
KB
-rw-r--r--
if_frad.h
2.66
KB
-rw-r--r--
if_link.h
592
B
-rw-r--r--
if_ltalk.h
188
B
-rw-r--r--
if_macvlan.h
2.67
KB
-rw-r--r--
if_phonet.h
319
B
-rw-r--r--
if_pppol2tp.h
516
B
-rw-r--r--
if_pppox.h
2.84
KB
-rw-r--r--
if_rmnet.h
1.14
KB
-rw-r--r--
if_tap.h
2.21
KB
-rw-r--r--
if_team.h
7.94
KB
-rw-r--r--
if_tun.h
1.29
KB
-rw-r--r--
if_tunnel.h
409
B
-rw-r--r--
if_vlan.h
20.73
KB
-rw-r--r--
igmp.h
4.44
KB
-rw-r--r--
ihex.h
2.16
KB
-rw-r--r--
ima.h
3.51
KB
-rw-r--r--
imx-media.h
605
B
-rw-r--r--
in.h
2.29
KB
-rw-r--r--
in6.h
1.63
KB
-rw-r--r--
indirect_call_wrapper.h
1.53
KB
-rw-r--r--
inet.h
2.64
KB
-rw-r--r--
inet_diag.h
2.42
KB
-rw-r--r--
inetdevice.h
8.65
KB
-rw-r--r--
init.h
9.55
KB
-rw-r--r--
init_ohci1394_dma.h
196
B
-rw-r--r--
init_task.h
1.37
KB
-rw-r--r--
initrd.h
836
B
-rw-r--r--
inotify.h
713
B
-rw-r--r--
input-polldev.h
2.03
KB
-rw-r--r--
input.h
19.37
KB
-rw-r--r--
integrity.h
1.13
KB
-rw-r--r--
intel-iommu.h
22.91
KB
-rw-r--r--
intel-ish-client-if.h
3.73
KB
-rw-r--r--
intel-pti.h
1.18
KB
-rw-r--r--
intel-svm.h
4.57
KB
-rw-r--r--
intel_rapl.h
4.12
KB
-rw-r--r--
intel_th.h
2.44
KB
-rw-r--r--
interconnect-provider.h
4.09
KB
-rw-r--r--
interconnect.h
1.68
KB
-rw-r--r--
interrupt.h
22.65
KB
-rw-r--r--
interval_tree.h
831
B
-rw-r--r--
interval_tree_generic.h
6.7
KB
-rw-r--r--
io-64-nonatomic-hi-lo.h
2.4
KB
-rw-r--r--
io-64-nonatomic-lo-hi.h
2.4
KB
-rw-r--r--
io-mapping.h
3.77
KB
-rw-r--r--
io-pgtable.h
7.85
KB
-rw-r--r--
io.h
5.3
KB
-rw-r--r--
ioc3.h
3.14
KB
-rw-r--r--
iocontext.h
4.76
KB
-rw-r--r--
iomap.h
7.18
KB
-rw-r--r--
iommu-helper.h
1.07
KB
-rw-r--r--
iommu.h
31.06
KB
-rw-r--r--
iopoll.h
5.32
KB
-rw-r--r--
ioport.h
11.41
KB
-rw-r--r--
ioprio.h
2.41
KB
-rw-r--r--
iova.h
7.09
KB
-rw-r--r--
ip.h
1
KB
-rw-r--r--
ipack.h
8.69
KB
-rw-r--r--
ipc.h
613
B
-rw-r--r--
ipc_namespace.h
4.96
KB
-rw-r--r--
ipmi-fru.h
3.61
KB
-rw-r--r--
ipmi.h
10.85
KB
-rw-r--r--
ipmi_smi.h
7.98
KB
-rw-r--r--
ipv6.h
9.11
KB
-rw-r--r--
ipv6_route.h
372
B
-rw-r--r--
irq.h
40.35
KB
-rw-r--r--
irq_cpustat.h
845
B
-rw-r--r--
irq_poll.h
575
B
-rw-r--r--
irq_sim.h
985
B
-rw-r--r--
irq_work.h
1.34
KB
-rw-r--r--
irqbypass.h
3.45
KB
-rw-r--r--
irqchip.h
1.54
KB
-rw-r--r--
irqdesc.h
8.21
KB
-rw-r--r--
irqdomain.h
20.1
KB
-rw-r--r--
irqflags.h
5.09
KB
-rw-r--r--
irqhandler.h
362
B
-rw-r--r--
irqnr.h
856
B
-rw-r--r--
irqreturn.h
503
B
-rw-r--r--
isa.h
2.12
KB
-rw-r--r--
isapnp.h
3.14
KB
-rw-r--r--
iscsi_boot_sysfs.h
3.71
KB
-rw-r--r--
iscsi_ibft.h
917
B
-rw-r--r--
isicom.h
1.49
KB
-rw-r--r--
iversion.h
12.12
KB
-rw-r--r--
jbd2.h
46.81
KB
-rw-r--r--
jhash.h
4.62
KB
-rw-r--r--
jiffies.h
15.67
KB
-rw-r--r--
journal-head.h
2.87
KB
-rw-r--r--
joystick.h
437
B
-rw-r--r--
jump_label.h
14.94
KB
-rw-r--r--
jump_label_ratelimit.h
2.77
KB
-rw-r--r--
jz4740-adc.h
1023
B
-rw-r--r--
jz4780-nemc.h
976
B
-rw-r--r--
kallsyms.h
4.27
KB
-rw-r--r--
kasan-checks.h
1.18
KB
-rw-r--r--
kasan.h
5.66
KB
-rw-r--r--
kbd_diacr.h
198
B
-rw-r--r--
kbd_kern.h
3.84
KB
-rw-r--r--
kbuild.h
380
B
-rw-r--r--
kconfig.h
2.42
KB
-rw-r--r--
kcore.h
941
B
-rw-r--r--
kcov.h
1.13
KB
-rw-r--r--
kdb.h
7.3
KB
-rw-r--r--
kdebug.h
487
B
-rw-r--r--
kdev_t.h
1.8
KB
-rw-r--r--
kern_levels.h
1.57
KB
-rw-r--r--
kernel-page-flags.h
505
B
-rw-r--r--
kernel.h
34.31
KB
-rw-r--r--
kernel_stat.h
2.5
KB
-rw-r--r--
kernelcapi.h
4.45
KB
-rw-r--r--
kernfs.h
17.47
KB
-rw-r--r--
kexec.h
11.65
KB
-rw-r--r--
key-type.h
6.45
KB
-rw-r--r--
key.h
15.4
KB
-rw-r--r--
keyboard.h
665
B
-rw-r--r--
keyctl.h
1.25
KB
-rw-r--r--
kfifo.h
24.19
KB
-rw-r--r--
kgdb.h
10.88
KB
-rw-r--r--
khugepaged.h
2.65
KB
-rw-r--r--
klist.h
1.88
KB
-rw-r--r--
kmemleak.h
3.27
KB
-rw-r--r--
kmod.h
1.02
KB
-rw-r--r--
kmsg_dump.h
2.85
KB
-rw-r--r--
kobj_map.h
545
B
-rw-r--r--
kobject.h
7.69
KB
-rw-r--r--
kobject_ns.h
1.89
KB
-rw-r--r--
kprobes.h
13.32
KB
-rw-r--r--
kref.h
3.08
KB
-rw-r--r--
ks0108.h
960
B
-rw-r--r--
ks8842.h
632
B
-rw-r--r--
ks8851_mll.h
472
B
-rw-r--r--
ksm.h
2.69
KB
-rw-r--r--
kthread.h
6.69
KB
-rw-r--r--
ktime.h
6.71
KB
-rw-r--r--
kvm_host.h
41.15
KB
-rw-r--r--
kvm_irqfd.h
1.99
KB
-rw-r--r--
kvm_para.h
402
B
-rw-r--r--
kvm_types.h
1.05
KB
-rw-r--r--
l2tp.h
261
B
-rw-r--r--
lantiq.h
365
B
-rw-r--r--
lapb.h
1.71
KB
-rw-r--r--
latencytop.h
1.18
KB
-rw-r--r--
lcd.h
3.78
KB
-rw-r--r--
lcm.h
275
B
-rw-r--r--
led-class-flash.h
5.61
KB
-rw-r--r--
led-lm3530.h
3.7
KB
-rw-r--r--
leds-bd2802.h
493
B
-rw-r--r--
leds-lp3944.h
950
B
-rw-r--r--
leds-lp3952.h
2.35
KB
-rw-r--r--
leds-pca9532.h
866
B
-rw-r--r--
leds-regulator.h
1.14
KB
-rw-r--r--
leds-tca6507.h
433
B
-rw-r--r--
leds-ti-lmu-common.h
1.12
KB
-rw-r--r--
leds.h
18.11
KB
-rw-r--r--
leds_pwm.h
407
B
-rw-r--r--
libata.h
65.1
KB
-rw-r--r--
libfdt.h
202
B
-rw-r--r--
libfdt_env.h
491
B
-rw-r--r--
libgcc.h
463
B
-rw-r--r--
libnvdimm.h
9.53
KB
-rw-r--r--
libps2.h
1.89
KB
-rw-r--r--
license.h
374
B
-rw-r--r--
lightnvm.h
14.88
KB
-rw-r--r--
limits.h
1.05
KB
-rw-r--r--
linkage.h
9.11
KB
-rw-r--r--
linkmode.h
1.95
KB
-rw-r--r--
linux_logo.h
1.91
KB
-rw-r--r--
lis3lv02d.h
5
KB
-rw-r--r--
list.h
26.9
KB
-rw-r--r--
list_bl.h
4.79
KB
-rw-r--r--
list_lru.h
7.29
KB
-rw-r--r--
list_nulls.h
3.47
KB
-rw-r--r--
list_sort.h
307
B
-rw-r--r--
livepatch.h
7.43
KB
-rw-r--r--
llc.h
749
B
-rw-r--r--
llist.h
8.56
KB
-rw-r--r--
lockdep.h
20.23
KB
-rw-r--r--
lockref.h
1.5
KB
-rw-r--r--
log2.h
6.19
KB
-rw-r--r--
logic_pio.h
3.24
KB
-rw-r--r--
lp.h
2.76
KB
-rw-r--r--
lru_cache.h
11.82
KB
-rw-r--r--
lsm_audit.h
2.73
KB
-rw-r--r--
lsm_hooks.h
93.79
KB
-rw-r--r--
lz4.h
26.44
KB
-rw-r--r--
lzo.h
1.55
KB
-rw-r--r--
mISDNdsp.h
1.19
KB
-rw-r--r--
mISDNhw.h
5.39
KB
-rw-r--r--
mISDNif.h
14.91
KB
-rw-r--r--
mailbox_client.h
1.71
KB
-rw-r--r--
mailbox_controller.h
5.7
KB
-rw-r--r--
maple.h
2.71
KB
-rw-r--r--
marvell_phy.h
1.41
KB
-rw-r--r--
math64.h
6.86
KB
-rw-r--r--
max17040_battery.h
328
B
-rw-r--r--
mbcache.h
2.16
KB
-rw-r--r--
mbus.h
3.09
KB
-rw-r--r--
mc146818rtc.h
4.57
KB
-rw-r--r--
mc6821.h
1.18
KB
-rw-r--r--
mcb.h
3.71
KB
-rw-r--r--
mdev.h
5.21
KB
-rw-r--r--
mdio-bitbang.h
1.12
KB
-rw-r--r--
mdio-gpio.h
177
B
-rw-r--r--
mdio-mux.h
1021
B
-rw-r--r--
mdio.h
10.86
KB
-rw-r--r--
mei_cl_bus.h
3.43
KB
-rw-r--r--
mem_encrypt.h
885
B
-rw-r--r--
memblock.h
18.46
KB
-rw-r--r--
memcontrol.h
36.66
KB
-rw-r--r--
memfd.h
365
B
-rw-r--r--
memory.h
4.74
KB
-rw-r--r--
memory_hotplug.h
10.96
KB
-rw-r--r--
mempolicy.h
7.44
KB
-rw-r--r--
mempool.h
3.35
KB
-rw-r--r--
memremap.h
5.36
KB
-rw-r--r--
memstick.h
9.6
KB
-rw-r--r--
mic_bus.h
2.7
KB
-rw-r--r--
micrel_phy.h
1.28
KB
-rw-r--r--
microchipphy.h
2.65
KB
-rw-r--r--
migrate.h
5.96
KB
-rw-r--r--
migrate_mode.h
758
B
-rw-r--r--
mii.h
14.04
KB
-rw-r--r--
miscdevice.h
2.81
KB
-rw-r--r--
mm-arch-hooks.h
533
B
-rw-r--r--
mm.h
92.34
KB
-rw-r--r--
mm_inline.h
3.37
KB
-rw-r--r--
mm_types.h
23.61
KB
-rw-r--r--
mm_types_task.h
2.5
KB
-rw-r--r--
mman.h
3.28
KB
-rw-r--r--
mmap_lock.h
1.06
KB
-rw-r--r--
mmdebug.h
2.32
KB
-rw-r--r--
mmiotrace.h
3.05
KB
-rw-r--r--
mmu_context.h
378
B
-rw-r--r--
mmu_notifier.h
19.84
KB
-rw-r--r--
mmzone.h
41.85
KB
-rw-r--r--
mnt_namespace.h
617
B
-rw-r--r--
mod_devicetable.h
21.91
KB
-rw-r--r--
module.h
24.34
KB
-rw-r--r--
module_signature.h
1.22
KB
-rw-r--r--
moduleloader.h
2.87
KB
-rw-r--r--
moduleparam.h
19.53
KB
-rw-r--r--
mount.h
3.64
KB
-rw-r--r--
moxtet.h
2.37
KB
-rw-r--r--
mpage.h
761
B
-rw-r--r--
mpi.h
2.51
KB
-rw-r--r--
mpls.h
394
B
-rw-r--r--
mpls_iptunnel.h
178
B
-rw-r--r--
mroute.h
1.95
KB
-rw-r--r--
mroute6.h
2.39
KB
-rw-r--r--
mroute_base.h
12.03
KB
-rw-r--r--
msdos_fs.h
273
B
-rw-r--r--
msg.h
395
B
-rw-r--r--
msi.h
12.84
KB
-rw-r--r--
mutex.h
6.55
KB
-rw-r--r--
mv643xx.h
51.27
KB
-rw-r--r--
mv643xx_eth.h
1.95
KB
-rw-r--r--
mv643xx_i2c.h
335
B
-rw-r--r--
mvebu-pmsu.h
520
B
-rw-r--r--
mxm-wmi.h
399
B
-rw-r--r--
n_r3964.h
4.06
KB
-rw-r--r--
namei.h
3.34
KB
-rw-r--r--
nd.h
5.52
KB
-rw-r--r--
ndctl.h
674
B
-rw-r--r--
net.h
11.75
KB
-rw-r--r--
netdev_features.h
9.7
KB
-rw-r--r--
netdevice.h
152.29
KB
-rw-r--r--
netfilter.h
13.36
KB
-rw-r--r--
netfilter_bridge.h
2.08
KB
-rw-r--r--
netfilter_defs.h
242
B
-rw-r--r--
netfilter_ingress.h
1.44
KB
-rw-r--r--
netfilter_ipv4.h
1.05
KB
-rw-r--r--
netfilter_ipv6.h
5.85
KB
-rw-r--r--
netlink.h
7.19
KB
-rw-r--r--
netpoll.h
2.69
KB
-rw-r--r--
nfs.h
1.31
KB
-rw-r--r--
nfs3.h
260
B
-rw-r--r--
nfs4.h
17.86
KB
-rw-r--r--
nfs_fs.h
17.2
KB
-rw-r--r--
nfs_fs_i.h
308
B
-rw-r--r--
nfs_fs_sb.h
9.54
KB
-rw-r--r--
nfs_iostat.h
4.18
KB
-rw-r--r--
nfs_page.h
6.38
KB
-rw-r--r--
nfs_xdr.h
40.17
KB
-rw-r--r--
nfsacl.h
1.15
KB
-rw-r--r--
nl802154.h
3.85
KB
-rw-r--r--
nls.h
3.09
KB
-rw-r--r--
nmi.h
6.86
KB
-rw-r--r--
node.h
4.69
KB
-rw-r--r--
nodemask.h
17.1
KB
-rw-r--r--
nospec.h
2.21
KB
-rw-r--r--
notifier.h
8.21
KB
-rw-r--r--
ns_common.h
235
B
-rw-r--r--
nsc_gpio.h
1.42
KB
-rw-r--r--
nsproxy.h
2.48
KB
-rw-r--r--
ntb.h
52.43
KB
-rw-r--r--
ntb_transport.h
3.8
KB
-rw-r--r--
nubus.h
5.54
KB
-rw-r--r--
numa.h
292
B
-rw-r--r--
nvme-fc-driver.h
37.18
KB
-rw-r--r--
nvme-fc.h
9.69
KB
-rw-r--r--
nvme-rdma.h
2.04
KB
-rw-r--r--
nvme-tcp.h
4.42
KB
-rw-r--r--
nvme.h
33.32
KB
-rw-r--r--
nvmem-consumer.h
5.8
KB
-rw-r--r--
nvmem-provider.h
3.88
KB
-rw-r--r--
nvram.h
3.47
KB
-rw-r--r--
objagg.h
1.94
KB
-rw-r--r--
of.h
42.38
KB
-rw-r--r--
of_address.h
4.47
KB
-rw-r--r--
of_clk.h
795
B
-rw-r--r--
of_device.h
2.99
KB
-rw-r--r--
of_dma.h
2.3
KB
-rw-r--r--
of_fdt.h
3.69
KB
-rw-r--r--
of_gpio.h
3.96
KB
-rw-r--r--
of_graph.h
3.41
KB
-rw-r--r--
of_iommu.h
821
B
-rw-r--r--
of_irq.h
3.62
KB
-rw-r--r--
of_mdio.h
2.98
KB
-rw-r--r--
of_net.h
720
B
-rw-r--r--
of_pci.h
935
B
-rw-r--r--
of_pdt.h
1.14
KB
-rw-r--r--
of_platform.h
3.88
KB
-rw-r--r--
of_reserved_mem.h
2.15
KB
-rw-r--r--
oid_registry.h
4.44
KB
-rw-r--r--
olpc-ec.h
1.95
KB
-rw-r--r--
omap-dma.h
10.47
KB
-rw-r--r--
omap-gpmc.h
2.73
KB
-rw-r--r--
omap-iommu.h
880
B
-rw-r--r--
omap-mailbox.h
689
B
-rw-r--r--
omapfb.h
576
B
-rw-r--r--
once.h
2.79
KB
-rw-r--r--
oom.h
3.26
KB
-rw-r--r--
openvswitch.h
403
B
-rw-r--r--
oprofile.h
6.1
KB
-rw-r--r--
osq_lock.h
1.04
KB
-rw-r--r--
overflow.h
11.25
KB
-rw-r--r--
packing.h
1.78
KB
-rw-r--r--
padata.h
6.35
KB
-rw-r--r--
page-flags-layout.h
3.28
KB
-rw-r--r--
page-flags.h
27.15
KB
-rw-r--r--
page-isolation.h
1.65
KB
-rw-r--r--
page_counter.h
1.94
KB
-rw-r--r--
page_ext.h
1.68
KB
-rw-r--r--
page_idle.h
2.62
KB
-rw-r--r--
page_owner.h
2.29
KB
-rw-r--r--
page_ref.h
4.99
KB
-rw-r--r--
pageblock-flags.h
2.72
KB
-rw-r--r--
pagemap.h
18.76
KB
-rw-r--r--
pagevec.h
2.34
KB
-rw-r--r--
pagewalk.h
2.39
KB
-rw-r--r--
parman.h
2.87
KB
-rw-r--r--
parport.h
17.84
KB
-rw-r--r--
parport_pc.h
6.56
KB
-rw-r--r--
parser.h
1.04
KB
-rw-r--r--
pata_arasan_cf_data.h
1.22
KB
-rw-r--r--
patchkey.h
757
B
-rw-r--r--
path.h
572
B
-rw-r--r--
pch_dma.h
408
B
-rw-r--r--
pci-acpi.h
3.48
KB
-rw-r--r--
pci-ats.h
1.52
KB
-rw-r--r--
pci-dma-compat.h
3.66
KB
-rw-r--r--
pci-ecam.h
2.19
KB
-rw-r--r--
pci-ep-cfs.h
951
B
-rw-r--r--
pci-epc.h
6.93
KB
-rw-r--r--
pci-epf.h
4.75
KB
-rw-r--r--
pci-p2pdma.h
3.95
KB
-rw-r--r--
pci.h
86.42
KB
-rw-r--r--
pci_hotplug.h
4.25
KB
-rw-r--r--
pci_ids.h
121.45
KB
-rw-r--r--
pda_power.h
1005
B
-rw-r--r--
pe.h
15.05
KB
-rw-r--r--
percpu-defs.h
18.12
KB
-rw-r--r--
percpu-refcount.h
10.46
KB
-rw-r--r--
percpu-rwsem.h
3.93
KB
-rw-r--r--
percpu.h
4.65
KB
-rw-r--r--
percpu_counter.h
4.27
KB
-rw-r--r--
perf_event.h
42.54
KB
-rw-r--r--
perf_regs.h
1.13
KB
-rw-r--r--
personality.h
393
B
-rw-r--r--
pfn.h
666
B
-rw-r--r--
pfn_t.h
3.21
KB
-rw-r--r--
phonet.h
537
B
-rw-r--r--
phy.h
40.59
KB
-rw-r--r--
phy_fixed.h
1.77
KB
-rw-r--r--
phy_led_triggers.h
1.01
KB
-rw-r--r--
phylink.h
10.47
KB
-rw-r--r--
pid.h
5.85
KB
-rw-r--r--
pid_namespace.h
2.33
KB
-rw-r--r--
pim.h
2.67
KB
-rw-r--r--
pipe_fs_i.h
6.17
KB
-rw-r--r--
pkeys.h
1016
B
-rw-r--r--
pktcdvd.h
5.87
KB
-rw-r--r--
pl320-ipc.h
209
B
-rw-r--r--
pl353-smc.h
739
B
-rw-r--r--
platform_device.h
13.05
KB
-rw-r--r--
plist.h
8.66
KB
-rw-r--r--
pm-trace.h
940
B
-rw-r--r--
pm.h
33.27
KB
-rw-r--r--
pm2301_charger.h
1.09
KB
-rw-r--r--
pm_clock.h
2.45
KB
-rw-r--r--
pm_domain.h
11.74
KB
-rw-r--r--
pm_opp.h
11.41
KB
-rw-r--r--
pm_qos.h
9.83
KB
-rw-r--r--
pm_runtime.h
9.56
KB
-rw-r--r--
pm_wakeirq.h
1.48
KB
-rw-r--r--
pm_wakeup.h
5.74
KB
-rw-r--r--
pmbus.h
970
B
-rw-r--r--
pmu.h
2.44
KB
-rw-r--r--
pnfs_osd_xdr.h
9.27
KB
-rw-r--r--
pnp.h
14.89
KB
-rw-r--r--
poison.h
2.56
KB
-rw-r--r--
poll.h
4.01
KB
-rw-r--r--
posix-clock.h
3.91
KB
-rw-r--r--
posix-timers.h
6.31
KB
-rw-r--r--
posix_acl.h
3.09
KB
-rw-r--r--
posix_acl_xattr.h
1.58
KB
-rw-r--r--
power_supply.h
16.06
KB
-rw-r--r--
powercap.h
12.04
KB
-rw-r--r--
ppp-comp.h
2.95
KB
-rw-r--r--
ppp_channel.h
2.87
KB
-rw-r--r--
ppp_defs.h
305
B
-rw-r--r--
pps-gpio.h
395
B
-rw-r--r--
pps_kernel.h
2.9
KB
-rw-r--r--
pr.h
566
B
-rw-r--r--
prandom.h
3.38
KB
-rw-r--r--
preempt.h
10
KB
-rw-r--r--
prefetch.h
1.7
KB
-rw-r--r--
prime_numbers.h
1.35
KB
-rw-r--r--
printk.h
15.92
KB
-rw-r--r--
proc_fs.h
6.58
KB
-rw-r--r--
proc_ns.h
2.6
KB
-rw-r--r--
processor.h
1.84
KB
-rw-r--r--
profile.h
2.68
KB
-rw-r--r--
projid.h
2.22
KB
-rw-r--r--
property.h
14.29
KB
-rw-r--r--
psci.h
1.48
KB
-rw-r--r--
pseudo_fs.h
355
B
-rw-r--r--
psi.h
1.53
KB
-rw-r--r--
psi_types.h
3.53
KB
-rw-r--r--
psp-sev.h
17.04
KB
-rw-r--r--
pstore.h
7.28
KB
-rw-r--r--
pstore_ram.h
3.81
KB
-rw-r--r--
pti.h
240
B
-rw-r--r--
ptp_classify.h
2.33
KB
-rw-r--r--
ptp_clock_kernel.h
9.01
KB
-rw-r--r--
ptr_ring.h
16.27
KB
-rw-r--r--
ptrace.h
14.65
KB
-rw-r--r--
purgatory.h
589
B
-rw-r--r--
pvclock_gtod.h
548
B
-rw-r--r--
pwm.h
16.08
KB
-rw-r--r--
pwm_backlight.h
802
B
-rw-r--r--
pxa168_eth.h
728
B
-rw-r--r--
pxa2xx_ssp.h
9.85
KB
-rw-r--r--
qcom-geni-se.h
12.21
KB
-rw-r--r--
qcom_scm.h
4.09
KB
-rw-r--r--
qnx6_fs.h
3.27
KB
-rw-r--r--
quota.h
18.7
KB
-rw-r--r--
quotaops.h
10.37
KB
-rw-r--r--
radix-tree.h
15.61
KB
-rw-r--r--
raid_class.h
2
KB
-rw-r--r--
ramfs.h
659
B
-rw-r--r--
random.h
3.98
KB
-rw-r--r--
range.h
651
B
-rw-r--r--
ras.h
1.18
KB
-rw-r--r--
ratelimit.h
2.81
KB
-rw-r--r--
rational.h
639
B
-rw-r--r--
rbtree.h
5.09
KB
-rw-r--r--
rbtree_augmented.h
9.6
KB
-rw-r--r--
rbtree_latch.h
6.64
KB
-rw-r--r--
rcu_node_tree.h
3.7
KB
-rw-r--r--
rcu_segcblist.h
2.77
KB
-rw-r--r--
rcu_sync.h
1.46
KB
-rw-r--r--
rculist.h
25.42
KB
-rw-r--r--
rculist_bl.h
4.36
KB
-rw-r--r--
rculist_nulls.h
6.17
KB
-rw-r--r--
rcupdate.h
34.54
KB
-rw-r--r--
rcupdate_wait.h
897
B
-rw-r--r--
rcutiny.h
2.58
KB
-rw-r--r--
rcutree.h
1.93
KB
-rw-r--r--
rcuwait.h
1.23
KB
-rw-r--r--
reboot-mode.h
600
B
-rw-r--r--
reboot.h
2.11
KB
-rw-r--r--
reciprocal_div.h
3.28
KB
-rw-r--r--
refcount.h
10.3
KB
-rw-r--r--
regmap.h
52.3
KB
-rw-r--r--
regset.h
14.92
KB
-rw-r--r--
relay.h
8.84
KB
-rw-r--r--
remoteproc.h
22.07
KB
-rw-r--r--
reset-controller.h
3.03
KB
-rw-r--r--
reset.h
15.74
KB
-rw-r--r--
resource.h
339
B
-rw-r--r--
resource_ext.h
1.83
KB
-rw-r--r--
restart_block.h
1.09
KB
-rw-r--r--
rfkill.h
9.86
KB
-rw-r--r--
rhashtable-types.h
3.45
KB
-rw-r--r--
rhashtable.h
37.82
KB
-rw-r--r--
ring_buffer.h
7.24
KB
-rw-r--r--
rio.h
19.02
KB
-rw-r--r--
rio_drv.h
14.5
KB
-rw-r--r--
rio_ids.h
1.08
KB
-rw-r--r--
rio_regs.h
19.07
KB
-rw-r--r--
rmap.h
9.08
KB
-rw-r--r--
rmi.h
12.02
KB
-rw-r--r--
rndis.h
16.86
KB
-rw-r--r--
rodata_test.h
394
B
-rw-r--r--
root_dev.h
619
B
-rw-r--r--
rpmsg.h
7.3
KB
-rw-r--r--
rslib.h
3.67
KB
-rw-r--r--
rtc.h
9
KB
-rw-r--r--
rtmutex.h
3.47
KB
-rw-r--r--
rtnetlink.h
4.46
KB
-rw-r--r--
rtsx_common.h
890
B
-rw-r--r--
rtsx_pci.h
39.6
KB
-rw-r--r--
rtsx_usb.h
15.38
KB
-rw-r--r--
rwlock.h
4.35
KB
-rw-r--r--
rwlock_api_smp.h
7.67
KB
-rw-r--r--
rwlock_types.h
1.12
KB
-rw-r--r--
rwsem.h
6.4
KB
-rw-r--r--
s3c_adc_battery.h
971
B
-rw-r--r--
sbitmap.h
16.52
KB
-rw-r--r--
scatterlist.h
16.16
KB
-rw-r--r--
scc.h
2.84
KB
-rw-r--r--
sched.h
55.47
KB
-rw-r--r--
sched_clock.h
520
B
-rw-r--r--
scif.h
58.87
KB
-rw-r--r--
scmi_protocol.h
10.44
KB
-rw-r--r--
scpi_protocol.h
2.04
KB
-rw-r--r--
screen_info.h
191
B
-rw-r--r--
sctp.h
21.99
KB
-rw-r--r--
scx200.h
1.82
KB
-rw-r--r--
scx200_gpio.h
2.38
KB
-rw-r--r--
sdb.h
4.17
KB
-rw-r--r--
sdla.h
6.69
KB
-rw-r--r--
seccomp.h
2.94
KB
-rw-r--r--
securebits.h
239
B
-rw-r--r--
security.h
51.54
KB
-rw-r--r--
sed-opal.h
1.62
KB
-rw-r--r--
seg6.h
121
B
-rw-r--r--
seg6_genl.h
136
B
-rw-r--r--
seg6_hmac.h
136
B
-rw-r--r--
seg6_iptunnel.h
148
B
-rw-r--r--
seg6_local.h
100
B
-rw-r--r--
selection.h
1.74
KB
-rw-r--r--
sem.h
599
B
-rw-r--r--
semaphore.h
1.35
KB
-rw-r--r--
seq_buf.h
3.15
KB
-rw-r--r--
seq_file.h
7.43
KB
-rw-r--r--
seq_file_net.h
730
B
-rw-r--r--
seqlock.h
16.46
KB
-rw-r--r--
seqno-fence.h
3.57
KB
-rw-r--r--
serdev.h
9.45
KB
-rw-r--r--
serial.h
630
B
-rw-r--r--
serial_8250.h
6
KB
-rw-r--r--
serial_bcm63xx.h
4.73
KB
-rw-r--r--
serial_core.h
19.48
KB
-rw-r--r--
serial_max3100.h
1.19
KB
-rw-r--r--
serial_pnx8xxx.h
1.96
KB
-rw-r--r--
serial_s3c.h
8.58
KB
-rw-r--r--
serial_sci.h
1.6
KB
-rw-r--r--
serio.h
4.28
KB
-rw-r--r--
set_memory.h
1.24
KB
-rw-r--r--
sfi.h
5.75
KB
-rw-r--r--
sfi_acpi.h
3.39
KB
-rw-r--r--
sfp.h
14.11
KB
-rw-r--r--
sh_clk.h
5.96
KB
-rw-r--r--
sh_dma.h
3.47
KB
-rw-r--r--
sh_eth.h
369
B
-rw-r--r--
sh_intc.h
3.59
KB
-rw-r--r--
sh_timer.h
172
B
-rw-r--r--
shdma-base.h
4.27
KB
-rw-r--r--
shm.h
968
B
-rw-r--r--
shmem_fs.h
5.15
KB
-rw-r--r--
shrinker.h
3.21
KB
-rw-r--r--
signal.h
12.94
KB
-rw-r--r--
signal_types.h
1.21
KB
-rw-r--r--
signalfd.h
817
B
-rw-r--r--
siox.h
2.26
KB
-rw-r--r--
siphash.h
5.59
KB
-rw-r--r--
sirfsoc_dma.h
162
B
-rw-r--r--
sizes.h
1.16
KB
-rw-r--r--
skb_array.h
5.18
KB
-rw-r--r--
skbuff.h
129.45
KB
-rw-r--r--
skmsg.h
11.52
KB
-rw-r--r--
slab.h
21.09
KB
-rw-r--r--
slab_def.h
2.88
KB
-rw-r--r--
slimbus.h
6.93
KB
-rw-r--r--
slub_def.h
5.56
KB
-rw-r--r--
sm501-regs.h
11.62
KB
-rw-r--r--
sm501.h
4.02
KB
-rw-r--r--
smc911x.h
294
B
-rw-r--r--
smc91x.h
1.57
KB
-rw-r--r--
smp.h
5.98
KB
-rw-r--r--
smpboot.h
1.68
KB
-rw-r--r--
smsc911x.h
1.63
KB
-rw-r--r--
smscphy.h
1.25
KB
-rw-r--r--
sock_diag.h
2.16
KB
-rw-r--r--
socket.h
13.61
KB
-rw-r--r--
sonet.h
469
B
-rw-r--r--
sony-laptop.h
1.41
KB
-rw-r--r--
sonypi.h
1.71
KB
-rw-r--r--
sort.h
420
B
-rw-r--r--
sound.h
685
B
-rw-r--r--
soundcard.h
1.59
KB
-rw-r--r--
spinlock.h
13.44
KB
-rw-r--r--
spinlock_api_smp.h
5.4
KB
-rw-r--r--
spinlock_api_up.h
3.31
KB
-rw-r--r--
spinlock_types.h
1.99
KB
-rw-r--r--
spinlock_types_up.h
726
B
-rw-r--r--
spinlock_up.h
2.16
KB
-rw-r--r--
splice.h
3.01
KB
-rw-r--r--
spmi.h
5.55
KB
-rw-r--r--
sram.h
844
B
-rw-r--r--
srcu.h
6.57
KB
-rw-r--r--
srcutiny.h
2.59
KB
-rw-r--r--
srcutree.h
4.87
KB
-rw-r--r--
ssbi.h
726
B
-rw-r--r--
stackdepot.h
539
B
-rw-r--r--
stackleak.h
909
B
-rw-r--r--
stackprotector.h
321
B
-rw-r--r--
stacktrace.h
3.42
KB
-rw-r--r--
start_kernel.h
415
B
-rw-r--r--
stat.h
1.18
KB
-rw-r--r--
statfs.h
1.4
KB
-rw-r--r--
static_key.h
30
B
-rw-r--r--
stddef.h
1.24
KB
-rw-r--r--
stm.h
4.35
KB
-rw-r--r--
stmmac.h
4.79
KB
-rw-r--r--
stmp3xxx_rtc_wdt.h
331
B
-rw-r--r--
stmp_device.h
412
B
-rw-r--r--
stop_machine.h
4.74
KB
-rw-r--r--
string.h
16.59
KB
-rw-r--r--
string_helpers.h
2.53
KB
-rw-r--r--
stringhash.h
2.65
KB
-rw-r--r--
stringify.h
341
B
-rw-r--r--
sungem_phy.h
3.94
KB
-rw-r--r--
sunserialcore.h
1.08
KB
-rw-r--r--
sunxi-rsb.h
2.89
KB
-rw-r--r--
superhyway.h
2.81
KB
-rw-r--r--
suspend.h
20.62
KB
-rw-r--r--
svga.h
3.75
KB
-rw-r--r--
sw842.h
328
B
-rw-r--r--
swab.h
569
B
-rw-r--r--
swait.h
10.04
KB
-rw-r--r--
swap.h
21.37
KB
-rw-r--r--
swap_cgroup.h
971
B
-rw-r--r--
swap_slots.h
840
B
-rw-r--r--
swapfile.h
556
B
-rw-r--r--
swapops.h
8.56
KB
-rw-r--r--
swiotlb.h
3
KB
-rw-r--r--
switchtec.h
8.33
KB
-rw-r--r--
sxgbe_platform.h
1.2
KB
-rw-r--r--
sync_core.h
581
B
-rw-r--r--
sync_file.h
1.57
KB
-rw-r--r--
synclink.h
989
B
-rw-r--r--
sys.h
960
B
-rw-r--r--
sys_soc.h
1.21
KB
-rw-r--r--
syscalls.h
55.6
KB
-rw-r--r--
syscore_ops.h
633
B
-rw-r--r--
sysctl.h
7.78
KB
-rw-r--r--
sysfs.h
17.13
KB
-rw-r--r--
syslog.h
1.24
KB
-rw-r--r--
sysrq.h
1.79
KB
-rw-r--r--
sysv_fs.h
9.03
KB
-rw-r--r--
t10-pi.h
1.5
KB
-rw-r--r--
task_io_accounting.h
1.13
KB
-rw-r--r--
task_io_accounting_ops.h
2.55
KB
-rw-r--r--
task_work.h
617
B
-rw-r--r--
taskstats_kern.h
957
B
-rw-r--r--
tboot.h
3.38
KB
-rw-r--r--
tc.h
3.45
KB
-rw-r--r--
tca6416_keypad.h
701
B
-rw-r--r--
tcp.h
16.11
KB
-rw-r--r--
tee_drv.h
18.2
KB
-rw-r--r--
textsearch.h
4.73
KB
-rw-r--r--
textsearch_fsm.h
1.19
KB
-rw-r--r--
tfrc.h
1.68
KB
-rw-r--r--
thermal.h
19.34
KB
-rw-r--r--
thread_info.h
4.44
KB
-rw-r--r--
threads.h
1.28
KB
-rw-r--r--
thunderbolt.h
19.24
KB
-rw-r--r--
ti-emif-sram.h
5.15
KB
-rw-r--r--
ti_wilink_st.h
13.46
KB
-rw-r--r--
tick.h
9.41
KB
-rw-r--r--
tifm.h
4.66
KB
-rw-r--r--
timb_dma.h
1.17
KB
-rw-r--r--
timb_gpio.h
717
B
-rw-r--r--
time.h
3.75
KB
-rw-r--r--
time32.h
5.76
KB
-rw-r--r--
time64.h
4.6
KB
-rw-r--r--
timecounter.h
4.14
KB
-rw-r--r--
timekeeper_internal.h
5.33
KB
-rw-r--r--
timekeeping.h
7.18
KB
-rw-r--r--
timekeeping32.h
920
B
-rw-r--r--
timer.h
7.54
KB
-rw-r--r--
timerfd.h
508
B
-rw-r--r--
timeriomem-rng.h
432
B
-rw-r--r--
timerqueue.h
1.4
KB
-rw-r--r--
timex.h
6.7
KB
-rw-r--r--
tnum.h
2.95
KB
-rw-r--r--
topology.h
5.55
KB
-rw-r--r--
torture.h
3.21
KB
-rw-r--r--
toshiba.h
460
B
-rw-r--r--
tpm.h
5.48
KB
-rw-r--r--
tpm_command.h
847
B
-rw-r--r--
tpm_eventlog.h
6.53
KB
-rw-r--r--
trace.h
964
B
-rw-r--r--
trace_clock.h
667
B
-rw-r--r--
trace_events.h
20.52
KB
-rw-r--r--
trace_seq.h
3.74
KB
-rw-r--r--
tracefs.h
1.05
KB
-rw-r--r--
tracehook.h
7.25
KB
-rw-r--r--
tracepoint-defs.h
1.03
KB
-rw-r--r--
tracepoint.h
17.97
KB
-rw-r--r--
transport_class.h
2.51
KB
-rw-r--r--
ts-nbus.h
532
B
-rw-r--r--
tsacct_kern.h
1.2
KB
-rw-r--r--
tty.h
28.04
KB
-rw-r--r--
tty_driver.h
15.61
KB
-rw-r--r--
tty_flip.h
1.62
KB
-rw-r--r--
tty_ldisc.h
7.96
KB
-rw-r--r--
typecheck.h
624
B
-rw-r--r--
types.h
5.41
KB
-rw-r--r--
u64_stats_sync.h
5.17
KB
-rw-r--r--
uaccess.h
13.08
KB
-rw-r--r--
ucb1400.h
4.12
KB
-rw-r--r--
ucs2_string.h
662
B
-rw-r--r--
udp.h
4.22
KB
-rw-r--r--
uidgid.h
4.07
KB
-rw-r--r--
uio.h
8.55
KB
-rw-r--r--
uio_driver.h
4.1
KB
-rw-r--r--
umh.h
2.26
KB
-rw-r--r--
unicode.h
946
B
-rw-r--r--
units.h
2.18
KB
-rw-r--r--
uprobes.h
6
KB
-rw-r--r--
usb.h
77.19
KB
-rw-r--r--
usb_usual.h
3.58
KB
-rw-r--r--
usbdevice_fs.h
2.18
KB
-rw-r--r--
user-return-notifier.h
1.18
KB
-rw-r--r--
user.h
22
B
-rw-r--r--
user_namespace.h
4.65
KB
-rw-r--r--
userfaultfd_k.h
3.69
KB
-rw-r--r--
util_macros.h
1.17
KB
-rw-r--r--
uts.h
388
B
-rw-r--r--
utsname.h
1.79
KB
-rw-r--r--
uuid.h
1.99
KB
-rw-r--r--
vbox_utils.h
1.69
KB
-rw-r--r--
verification.h
1.75
KB
-rw-r--r--
vermagic.h
1.13
KB
-rw-r--r--
vexpress.h
1.06
KB
-rw-r--r--
vfio.h
6.29
KB
-rw-r--r--
vfs.h
116
B
-rw-r--r--
vga_switcheroo.h
8.62
KB
-rw-r--r--
vgaarb.h
5.24
KB
-rw-r--r--
via-core.h
6.6
KB
-rw-r--r--
via-gpio.h
310
B
-rw-r--r--
via.h
932
B
-rw-r--r--
via_i2c.h
844
B
-rw-r--r--
videodev2.h
2.68
KB
-rw-r--r--
virtio.h
6.79
KB
-rw-r--r--
virtio_byteorder.h
1.46
KB
-rw-r--r--
virtio_caif.h
492
B
-rw-r--r--
virtio_config.h
13.39
KB
-rw-r--r--
virtio_console.h
1.93
KB
-rw-r--r--
virtio_net.h
5.49
KB
-rw-r--r--
virtio_ring.h
2.96
KB
-rw-r--r--
virtio_vsock.h
5.06
KB
-rw-r--r--
visorbus.h
12.23
KB
-rw-r--r--
vlynq.h
3.22
KB
-rw-r--r--
vm_event_item.h
2.96
KB
-rw-r--r--
vm_sockets.h
287
B
-rw-r--r--
vmacache.h
722
B
-rw-r--r--
vmalloc.h
7.21
KB
-rw-r--r--
vme.h
5.66
KB
-rw-r--r--
vmpressure.h
1.69
KB
-rw-r--r--
vmstat.h
10.51
KB
-rw-r--r--
vmw_vmci_api.h
2.78
KB
-rw-r--r--
vmw_vmci_defs.h
27.47
KB
-rw-r--r--
vringh.h
7.11
KB
-rw-r--r--
vt.h
611
B
-rw-r--r--
vt_buffer.h
1.49
KB
-rw-r--r--
vt_kern.h
6.04
KB
-rw-r--r--
vtime.h
3.57
KB
-rw-r--r--
w1-gpio.h
493
B
-rw-r--r--
w1.h
8.88
KB
-rw-r--r--
wait.h
41.35
KB
-rw-r--r--
wait_bit.h
11.2
KB
-rw-r--r--
watchdog.h
7.73
KB
-rw-r--r--
win_minmax.h
832
B
-rw-r--r--
wireless.h
1.4
KB
-rw-r--r--
wkup_m3_ipc.h
1.75
KB
-rw-r--r--
wl12xx.h
810
B
-rw-r--r--
wm97xx.h
10.61
KB
-rw-r--r--
wmi.h
1.56
KB
-rw-r--r--
workqueue.h
21.03
KB
-rw-r--r--
writeback.h
13.02
KB
-rw-r--r--
ww_mutex.h
12.78
KB
-rw-r--r--
xarray.h
54.24
KB
-rw-r--r--
xattr.h
3.49
KB
-rw-r--r--
xxhash.h
8.27
KB
-rw-r--r--
xz.h
11.16
KB
-rw-r--r--
yam.h
2.18
KB
-rw-r--r--
z2_battery.h
318
B
-rw-r--r--
zbud.h
740
B
-rw-r--r--
zconf.h
1.73
KB
-rw-r--r--
zlib.h
28.11
KB
-rw-r--r--
zorro.h
3.94
KB
-rw-r--r--
zpool.h
3.11
KB
-rw-r--r--
zsmalloc.h
1.63
KB
-rw-r--r--
zstd.h
48.64
KB
-rw-r--r--
zutil.h
2.73
KB
-rw-r--r--
Delete
Unzip
Zip
${this.title}
Close
Code Editor : overflow.h
/* SPDX-License-Identifier: GPL-2.0 OR MIT */ #ifndef __LINUX_OVERFLOW_H #define __LINUX_OVERFLOW_H #include <linux/compiler.h> #include <linux/limits.h> /* * In the fallback code below, we need to compute the minimum and * maximum values representable in a given type. These macros may also * be useful elsewhere, so we provide them outside the * COMPILER_HAS_GENERIC_BUILTIN_OVERFLOW block. * * It would seem more obvious to do something like * * #define type_min(T) (T)(is_signed_type(T) ? (T)1 << (8*sizeof(T)-1) : 0) * #define type_max(T) (T)(is_signed_type(T) ? ((T)1 << (8*sizeof(T)-1)) - 1 : ~(T)0) * * Unfortunately, the middle expressions, strictly speaking, have * undefined behaviour, and at least some versions of gcc warn about * the type_max expression (but not if -fsanitize=undefined is in * effect; in that case, the warning is deferred to runtime...). * * The slightly excessive casting in type_min is to make sure the * macros also produce sensible values for the exotic type _Bool. [The * overflow checkers only almost work for _Bool, but that's * a-feature-not-a-bug, since people shouldn't be doing arithmetic on * _Bools. Besides, the gcc builtins don't allow _Bool* as third * argument.] * * Idea stolen from * https://mail-index.netbsd.org/tech-misc/2007/02/05/0000.html - * credit to Christian Biere. */ #define is_signed_type(type) (((type)(-1)) < (type)1) #define __type_half_max(type) ((type)1 << (8*sizeof(type) - 1 - is_signed_type(type))) #define type_max(T) ((T)((__type_half_max(T) - 1) + __type_half_max(T))) #define type_min(T) ((T)((T)-type_max(T)-(T)1)) /* * Avoids triggering -Wtype-limits compilation warning, * while using unsigned data types to check a < 0. */ #define is_non_negative(a) ((a) > 0 || (a) == 0) #define is_negative(a) (!(is_non_negative(a))) #ifdef COMPILER_HAS_GENERIC_BUILTIN_OVERFLOW /* * For simplicity and code hygiene, the fallback code below insists on * a, b and *d having the same type (similar to the min() and max() * macros), whereas gcc's type-generic overflow checkers accept * different types. Hence we don't just make check_add_overflow an * alias for __builtin_add_overflow, but add type checks similar to * below. */ #define check_add_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ __builtin_add_overflow(__a, __b, __d); \ }) #define check_sub_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ __builtin_sub_overflow(__a, __b, __d); \ }) #define check_mul_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ __builtin_mul_overflow(__a, __b, __d); \ }) #else /* Checking for unsigned overflow is relatively easy without causing UB. */ #define __unsigned_add_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = __a + __b; \ *__d < __a; \ }) #define __unsigned_sub_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = __a - __b; \ __a < __b; \ }) /* * If one of a or b is a compile-time constant, this avoids a division. */ #define __unsigned_mul_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = __a * __b; \ __builtin_constant_p(__b) ? \ __b > 0 && __a > type_max(typeof(__a)) / __b : \ __a > 0 && __b > type_max(typeof(__b)) / __a; \ }) /* * For signed types, detecting overflow is much harder, especially if * we want to avoid UB. But the interface of these macros is such that * we must provide a result in *d, and in fact we must produce the * result promised by gcc's builtins, which is simply the possibly * wrapped-around value. Fortunately, we can just formally do the * operations in the widest relevant unsigned type (u64) and then * truncate the result - gcc is smart enough to generate the same code * with and without the (u64) casts. */ /* * Adding two signed integers can overflow only if they have the same * sign, and overflow has happened iff the result has the opposite * sign. */ #define __signed_add_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = (u64)__a + (u64)__b; \ (((~(__a ^ __b)) & (*__d ^ __a)) \ & type_min(typeof(__a))) != 0; \ }) /* * Subtraction is similar, except that overflow can now happen only * when the signs are opposite. In this case, overflow has happened if * the result has the opposite sign of a. */ #define __signed_sub_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = (u64)__a - (u64)__b; \ ((((__a ^ __b)) & (*__d ^ __a)) \ & type_min(typeof(__a))) != 0; \ }) /* * Signed multiplication is rather hard. gcc always follows C99, so * division is truncated towards 0. This means that we can write the * overflow check like this: * * (a > 0 && (b > MAX/a || b < MIN/a)) || * (a < -1 && (b > MIN/a || b < MAX/a) || * (a == -1 && b == MIN) * * The redundant casts of -1 are to silence an annoying -Wtype-limits * (included in -Wextra) warning: When the type is u8 or u16, the * __b_c_e in check_mul_overflow obviously selects * __unsigned_mul_overflow, but unfortunately gcc still parses this * code and warns about the limited range of __b. */ #define __signed_mul_overflow(a, b, d) ({ \ typeof(a) __a = (a); \ typeof(b) __b = (b); \ typeof(d) __d = (d); \ typeof(a) __tmax = type_max(typeof(a)); \ typeof(a) __tmin = type_min(typeof(a)); \ (void) (&__a == &__b); \ (void) (&__a == __d); \ *__d = (u64)__a * (u64)__b; \ (__b > 0 && (__a > __tmax/__b || __a < __tmin/__b)) || \ (__b < (typeof(__b))-1 && (__a > __tmin/__b || __a < __tmax/__b)) || \ (__b == (typeof(__b))-1 && __a == __tmin); \ }) #define check_add_overflow(a, b, d) \ __builtin_choose_expr(is_signed_type(typeof(a)), \ __signed_add_overflow(a, b, d), \ __unsigned_add_overflow(a, b, d)) #define check_sub_overflow(a, b, d) \ __builtin_choose_expr(is_signed_type(typeof(a)), \ __signed_sub_overflow(a, b, d), \ __unsigned_sub_overflow(a, b, d)) #define check_mul_overflow(a, b, d) \ __builtin_choose_expr(is_signed_type(typeof(a)), \ __signed_mul_overflow(a, b, d), \ __unsigned_mul_overflow(a, b, d)) #endif /* COMPILER_HAS_GENERIC_BUILTIN_OVERFLOW */ /** check_shl_overflow() - Calculate a left-shifted value and check overflow * * @a: Value to be shifted * @s: How many bits left to shift * @d: Pointer to where to store the result * * Computes *@d = (@a << @s) * * Returns true if '*d' cannot hold the result or when 'a << s' doesn't * make sense. Example conditions: * - 'a << s' causes bits to be lost when stored in *d. * - 's' is garbage (e.g. negative) or so large that the result of * 'a << s' is guaranteed to be 0. * - 'a' is negative. * - 'a << s' sets the sign bit, if any, in '*d'. * * '*d' will hold the results of the attempted shift, but is not * considered "safe for use" if false is returned. */ #define check_shl_overflow(a, s, d) ({ \ typeof(a) _a = a; \ typeof(s) _s = s; \ typeof(d) _d = d; \ u64 _a_full = _a; \ unsigned int _to_shift = \ is_non_negative(_s) && _s < 8 * sizeof(*d) ? _s : 0; \ *_d = (_a_full << _to_shift); \ (_to_shift != _s || is_negative(*_d) || is_negative(_a) || \ (*_d >> _to_shift) != _a); \ }) /** * size_mul() - Calculate size_t multiplication with saturation at SIZE_MAX * * @factor1: first factor * @factor2: second factor * * Returns: calculate @factor1 * @factor2, both promoted to size_t, * with any overflow causing the return value to be SIZE_MAX. The * lvalue must be size_t to avoid implicit type conversion. */ static inline size_t __must_check size_mul(size_t factor1, size_t factor2) { size_t bytes; if (check_mul_overflow(factor1, factor2, &bytes)) return SIZE_MAX; return bytes; } /** * size_add() - Calculate size_t addition with saturation at SIZE_MAX * * @addend1: first addend * @addend2: second addend * * Returns: calculate @addend1 + @addend2, both promoted to size_t, * with any overflow causing the return value to be SIZE_MAX. The * lvalue must be size_t to avoid implicit type conversion. */ static inline size_t __must_check size_add(size_t addend1, size_t addend2) { size_t bytes; if (check_add_overflow(addend1, addend2, &bytes)) return SIZE_MAX; return bytes; } /** * size_sub() - Calculate size_t subtraction with saturation at SIZE_MAX * * @minuend: value to subtract from * @subtrahend: value to subtract from @minuend * * Returns: calculate @minuend - @subtrahend, both promoted to size_t, * with any overflow causing the return value to be SIZE_MAX. For * composition with the size_add() and size_mul() helpers, neither * argument may be SIZE_MAX (or the result with be forced to SIZE_MAX). * The lvalue must be size_t to avoid implicit type conversion. */ static inline size_t __must_check size_sub(size_t minuend, size_t subtrahend) { size_t bytes; if (minuend == SIZE_MAX || subtrahend == SIZE_MAX || check_sub_overflow(minuend, subtrahend, &bytes)) return SIZE_MAX; return bytes; } /** * array_size() - Calculate size of 2-dimensional array. * * @a: dimension one * @b: dimension two * * Calculates size of 2-dimensional array: @a * @b. * * Returns: number of bytes needed to represent the array or SIZE_MAX on * overflow. */ #define array_size(a, b) size_mul(a, b) /** * array3_size() - Calculate size of 3-dimensional array. * * @a: dimension one * @b: dimension two * @c: dimension three * * Calculates size of 3-dimensional array: @a * @b * @c. * * Returns: number of bytes needed to represent the array or SIZE_MAX on * overflow. */ #define array3_size(a, b, c) size_mul(size_mul(a, b), c) /** * flex_array_size() - Calculate size of a flexible array member * within an enclosing structure. * * @p: Pointer to the structure. * @member: Name of the flexible array member. * @count: Number of elements in the array. * * Calculates size of a flexible array of @count number of @member * elements, at the end of structure @p. * * Return: number of bytes needed or SIZE_MAX on overflow. */ #define flex_array_size(p, member, count) \ size_mul(count, \ sizeof(*(p)->member) + __must_be_array((p)->member)) /** * struct_size() - Calculate size of structure with trailing flexible array. * * @p: Pointer to the structure. * @member: Name of the array member. * @count: Number of elements in the array. * * Calculates size of memory needed for structure @p followed by an * array of @count number of @member elements. * * Return: number of bytes needed or SIZE_MAX on overflow. */ #define struct_size(p, member, count) \ size_add(sizeof(*(p)), flex_array_size(p, member, count)) #endif /* __LINUX_OVERFLOW_H */
Close