[ SYSTEM ]: Linux srv.persadacompanies.com 4.18.0-553.56.1.el8_10.x86_64 #1 SMP Tue Jun 10 05:00:59 EDT 2025 x86_64
[ SERVER ]: Apache | PHP: 8.4.20
[ USER ]: persadamedika | IP: 45.64.1.108
GEFORCE FILE MANAGER
/
usr
/
src
/
kernels
/
4.18.0-553.63.1.el8_10.x86_64
/
arch
/
x86
/
include
/
asm
/
UPLOAD:
NAME
SIZE
QUICK PERMS
ACTIONS
📁 crypto
SET
[ DEL ]
📁 e820
SET
[ DEL ]
📁 fpu
SET
[ DEL ]
📁 numachip
SET
[ DEL ]
📁 shared
SET
[ DEL ]
📁 trace
SET
[ DEL ]
📁 uv
SET
[ DEL ]
📁 vdso
SET
[ DEL ]
📁 xen
SET
[ DEL ]
📄 Kbuild
319 B
SET
[ EDIT ]
|
[ DEL ]
📄 a.out-core.h
1,931 B
SET
[ EDIT ]
|
[ DEL ]
📄 acenv.h
1,596 B
SET
[ EDIT ]
|
[ DEL ]
📄 acpi.h
5,225 B
SET
[ EDIT ]
|
[ DEL ]
📄 agp.h
1,070 B
SET
[ EDIT ]
|
[ DEL ]
📄 alternative.h
11,407 B
SET
[ EDIT ]
|
[ DEL ]
📄 amd-ibs.h
5,020 B
SET
[ EDIT ]
|
[ DEL ]
📄 amd_hsmp.h
364 B
SET
[ EDIT ]
|
[ DEL ]
📄 amd_nb.h
3,086 B
SET
[ EDIT ]
|
[ DEL ]
📄 apb_timer.h
1,466 B
SET
[ EDIT ]
|
[ DEL ]
📄 apic.h
14,661 B
SET
[ EDIT ]
|
[ DEL ]
📄 apic_flat_64.h
151 B
SET
[ EDIT ]
|
[ DEL ]
📄 apicdef.h
11,565 B
SET
[ EDIT ]
|
[ DEL ]
📄 apm.h
1,768 B
SET
[ EDIT ]
|
[ DEL ]
📄 arch_hweight.h
1,311 B
SET
[ EDIT ]
|
[ DEL ]
📄 archrandom.h
3,221 B
SET
[ EDIT ]
|
[ DEL ]
📄 asm-offsets.h
35 B
SET
[ EDIT ]
|
[ DEL ]
📄 asm-prototypes.h
946 B
SET
[ EDIT ]
|
[ DEL ]
📄 asm.h
5,186 B
SET
[ EDIT ]
|
[ DEL ]
📄 atomic.h
6,279 B
SET
[ EDIT ]
|
[ DEL ]
📄 atomic64_32.h
8,150 B
SET
[ EDIT ]
|
[ DEL ]
📄 atomic64_64.h
5,933 B
SET
[ EDIT ]
|
[ DEL ]
📄 audit.h
170 B
SET
[ EDIT ]
|
[ DEL ]
📄 barrier.h
2,471 B
SET
[ EDIT ]
|
[ DEL ]
📄 bios_ebda.h
914 B
SET
[ EDIT ]
|
[ DEL ]
📄 bitops.h
10,727 B
SET
[ EDIT ]
|
[ DEL ]
📄 boot.h
1,825 B
SET
[ EDIT ]
|
[ DEL ]
📄 bootparam_utils.h
2,907 B
SET
[ EDIT ]
|
[ DEL ]
📄 bug.h
2,117 B
SET
[ EDIT ]
|
[ DEL ]
📄 bugs.h
533 B
SET
[ EDIT ]
|
[ DEL ]
📄 cache.h
641 B
SET
[ EDIT ]
|
[ DEL ]
📄 cacheflush.h
306 B
SET
[ EDIT ]
|
[ DEL ]
📄 cacheinfo.h
209 B
SET
[ EDIT ]
|
[ DEL ]
📄 calgary.h
2,370 B
SET
[ EDIT ]
|
[ DEL ]
📄 ce4100.h
121 B
SET
[ EDIT ]
|
[ DEL ]
📄 checksum.h
133 B
SET
[ EDIT ]
|
[ DEL ]
📄 checksum_32.h
4,964 B
SET
[ EDIT ]
|
[ DEL ]
📄 checksum_64.h
5,541 B
SET
[ EDIT ]
|
[ DEL ]
📄 clocksource.h
480 B
SET
[ EDIT ]
|
[ DEL ]
📄 cmdline.h
302 B
SET
[ EDIT ]
|
[ DEL ]
📄 cmpxchg.h
7,891 B
SET
[ EDIT ]
|
[ DEL ]
📄 cmpxchg_32.h
3,247 B
SET
[ EDIT ]
|
[ DEL ]
📄 cmpxchg_64.h
552 B
SET
[ EDIT ]
|
[ DEL ]
📄 coco.h
482 B
SET
[ EDIT ]
|
[ DEL ]
📄 compat.h
4,861 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpu.h
2,607 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpu_device_id.h
8,109 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpu_entry_area.h
4,162 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpufeature.h
9,470 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpufeatures.h
32,633 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpuid.h
498 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpuidle_haltpoll.h
189 B
SET
[ EDIT ]
|
[ DEL ]
📄 cpumask.h
408 B
SET
[ EDIT ]
|
[ DEL ]
📄 crash.h
300 B
SET
[ EDIT ]
|
[ DEL ]
📄 current.h
443 B
SET
[ EDIT ]
|
[ DEL ]
📄 debugreg.h
3,411 B
SET
[ EDIT ]
|
[ DEL ]
📄 delay.h
275 B
SET
[ EDIT ]
|
[ DEL ]
📄 desc.h
12,274 B
SET
[ EDIT ]
|
[ DEL ]
📄 desc_defs.h
3,396 B
SET
[ EDIT ]
|
[ DEL ]
📄 device.h
328 B
SET
[ EDIT ]
|
[ DEL ]
📄 disabled-features.h
3,559 B
SET
[ EDIT ]
|
[ DEL ]
📄 div64.h
2,189 B
SET
[ EDIT ]
|
[ DEL ]
📄 dma-mapping.h
288 B
SET
[ EDIT ]
|
[ DEL ]
📄 dma.h
9,827 B
SET
[ EDIT ]
|
[ DEL ]
📄 dmi.h
556 B
SET
[ EDIT ]
|
[ DEL ]
📄 dwarf2.h
2,487 B
SET
[ EDIT ]
|
[ DEL ]
📄 edac.h
474 B
SET
[ EDIT ]
|
[ DEL ]
📄 efi.h
7,416 B
SET
[ EDIT ]
|
[ DEL ]
📄 elf.h
12,640 B
SET
[ EDIT ]
|
[ DEL ]
📄 emergency-restart.h
202 B
SET
[ EDIT ]
|
[ DEL ]
📄 emulate_prefix.h
484 B
SET
[ EDIT ]
|
[ DEL ]
📄 enclu.h
181 B
SET
[ EDIT ]
|
[ DEL ]
📄 entry_arch.h
1,922 B
SET
[ EDIT ]
|
[ DEL ]
📄 espfix.h
426 B
SET
[ EDIT ]
|
[ DEL ]
📄 exec.h
37 B
SET
[ EDIT ]
|
[ DEL ]
📄 export.h
120 B
SET
[ EDIT ]
|
[ DEL ]
📄 extable.h
1,300 B
SET
[ EDIT ]
|
[ DEL ]
📄 fb.h
540 B
SET
[ EDIT ]
|
[ DEL ]
📄 fixmap.h
6,381 B
SET
[ EDIT ]
|
[ DEL ]
📄 floppy.h
6,748 B
SET
[ EDIT ]
|
[ DEL ]
📄 frame.h
2,237 B
SET
[ EDIT ]
|
[ DEL ]
📄 fsgsbase.h
2,072 B
SET
[ EDIT ]
|
[ DEL ]
📄 ftrace.h
2,777 B
SET
[ EDIT ]
|
[ DEL ]
📄 futex.h
2,269 B
SET
[ EDIT ]
|
[ DEL ]
📄 gart.h
2,682 B
SET
[ EDIT ]
|
[ DEL ]
📄 genapic.h
22 B
SET
[ EDIT ]
|
[ DEL ]
📄 geode.h
842 B
SET
[ EDIT ]
|
[ DEL ]
📄 hardirq.h
2,207 B
SET
[ EDIT ]
|
[ DEL ]
📄 highmem.h
2,466 B
SET
[ EDIT ]
|
[ DEL ]
📄 hpet.h
3,461 B
SET
[ EDIT ]
|
[ DEL ]
📄 hugetlb.h
1,867 B
SET
[ EDIT ]
|
[ DEL ]
📄 hw_breakpoint.h
2,112 B
SET
[ EDIT ]
|
[ DEL ]
📄 hw_irq.h
4,126 B
SET
[ EDIT ]
|
[ DEL ]
📄 hyperv-tlfs.h
22,337 B
SET
[ EDIT ]
|
[ DEL ]
📄 hypervisor.h
1,975 B
SET
[ EDIT ]
|
[ DEL ]
📄 i8259.h
1,975 B
SET
[ EDIT ]
|
[ DEL ]
📄 ia32.h
1,789 B
SET
[ EDIT ]
|
[ DEL ]
📄 ia32_unistd.h
313 B
SET
[ EDIT ]
|
[ DEL ]
📄 imr.h
1,849 B
SET
[ EDIT ]
|
[ DEL ]
📄 inat.h
6,736 B
SET
[ EDIT ]
|
[ DEL ]
📄 inat_types.h
1,013 B
SET
[ EDIT ]
|
[ DEL ]
📄 init.h
632 B
SET
[ EDIT ]
|
[ DEL ]
📄 insn-eval.h
1,546 B
SET
[ EDIT ]
|
[ DEL ]
📄 insn.h
8,098 B
SET
[ EDIT ]
|
[ DEL ]
📄 inst.h
5,453 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel-family.h
5,168 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel-mid.h
5,025 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_ds.h
849 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_mid_vrtc.h
330 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_pconfig.h
1,545 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_pmc_ipc.h
2,267 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_pt.h
1,276 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_punit_ipc.h
4,666 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_scu_ipc.h
2,351 B
SET
[ EDIT ]
|
[ DEL ]
📄 intel_telemetry.h
4,060 B
SET
[ EDIT ]
|
[ DEL ]
📄 invpcid.h
1,604 B
SET
[ EDIT ]
|
[ DEL ]
📄 io.h
11,872 B
SET
[ EDIT ]
|
[ DEL ]
📄 io_apic.h
5,890 B
SET
[ EDIT ]
|
[ DEL ]
📄 iomap.h
1,228 B
SET
[ EDIT ]
|
[ DEL ]
📄 iommu.h
935 B
SET
[ EDIT ]
|
[ DEL ]
📄 iosf_mbi.h
7,354 B
SET
[ EDIT ]
|
[ DEL ]
📄 ipi.h
2,873 B
SET
[ EDIT ]
|
[ DEL ]
📄 irq.h
1,415 B
SET
[ EDIT ]
|
[ DEL ]
📄 irq_regs.h
683 B
SET
[ EDIT ]
|
[ DEL ]
📄 irq_remapping.h
2,865 B
SET
[ EDIT ]
|
[ DEL ]
📄 irq_vectors.h
4,105 B
SET
[ EDIT ]
|
[ DEL ]
📄 irq_work.h
465 B
SET
[ EDIT ]
|
[ DEL ]
📄 irqdomain.h
1,796 B
SET
[ EDIT ]
|
[ DEL ]
📄 irqflags.h
4,161 B
SET
[ EDIT ]
|
[ DEL ]
📄 ist.h
735 B
SET
[ EDIT ]
|
[ DEL ]
📄 jailhouse_para.h
449 B
SET
[ EDIT ]
|
[ DEL ]
📄 jump_label.h
2,529 B
SET
[ EDIT ]
|
[ DEL ]
📄 kasan.h
1,291 B
SET
[ EDIT ]
|
[ DEL ]
📄 kaslr.h
314 B
SET
[ EDIT ]
|
[ DEL ]
📄 kbdleds.h
454 B
SET
[ EDIT ]
|
[ DEL ]
📄 kdebug.h
1,042 B
SET
[ EDIT ]
|
[ DEL ]
📄 kexec-bzimage64.h
195 B
SET
[ EDIT ]
|
[ DEL ]
📄 kexec.h
5,843 B
SET
[ EDIT ]
|
[ DEL ]
📄 kgdb.h
2,143 B
SET
[ EDIT ]
|
[ DEL ]
📄 kprobes.h
3,701 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm-x86-ops.h
3,989 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm_host.h
63,925 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm_page_track.h
2,700 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm_para.h
4,422 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm_types.h
178 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvm_vcpu_regs.h
606 B
SET
[ EDIT ]
|
[ DEL ]
📄 kvmclock.h
506 B
SET
[ EDIT ]
|
[ DEL ]
📄 linkage.h
1,268 B
SET
[ EDIT ]
|
[ DEL ]
📄 livepatch.h
1,039 B
SET
[ EDIT ]
|
[ DEL ]
📄 local.h
3,925 B
SET
[ EDIT ]
|
[ DEL ]
📄 local64.h
33 B
SET
[ EDIT ]
|
[ DEL ]
📄 mach_timer.h
1,590 B
SET
[ EDIT ]
|
[ DEL ]
📄 mach_traps.h
1,013 B
SET
[ EDIT ]
|
[ DEL ]
📄 math_emu.h
395 B
SET
[ EDIT ]
|
[ DEL ]
📄 mc146818rtc.h
2,835 B
SET
[ EDIT ]
|
[ DEL ]
📄 mce.h
11,909 B
SET
[ EDIT ]
|
[ DEL ]
📄 mcsafe_test.h
1,418 B
SET
[ EDIT ]
|
[ DEL ]
📄 mem_encrypt.h
3,543 B
SET
[ EDIT ]
|
[ DEL ]
📄 memtype.h
815 B
SET
[ EDIT ]
|
[ DEL ]
📄 microcode.h
3,557 B
SET
[ EDIT ]
|
[ DEL ]
📄 microcode_amd.h
1,373 B
SET
[ EDIT ]
|
[ DEL ]
📄 microcode_intel.h
2,619 B
SET
[ EDIT ]
|
[ DEL ]
📄 misc.h
143 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmconfig.h
374 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmu.h
1,689 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmu_context.h
10,118 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmx.h
337 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmzone.h
129 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmzone_32.h
1,188 B
SET
[ EDIT ]
|
[ DEL ]
📄 mmzone_64.h
430 B
SET
[ EDIT ]
|
[ DEL ]
📄 module.h
2,096 B
SET
[ EDIT ]
|
[ DEL ]
📄 mpspec.h
4,023 B
SET
[ EDIT ]
|
[ DEL ]
📄 mpspec_def.h
4,256 B
SET
[ EDIT ]
|
[ DEL ]
📄 mpx.h
3,125 B
SET
[ EDIT ]
|
[ DEL ]
📄 mshyperv.h
10,142 B
SET
[ EDIT ]
|
[ DEL ]
📄 msi.h
1,508 B
SET
[ EDIT ]
|
[ DEL ]
📄 msidef.h
1,814 B
SET
[ EDIT ]
|
[ DEL ]
📄 msr-index.h
42,400 B
SET
[ EDIT ]
|
[ DEL ]
📄 msr-trace.h
1,387 B
SET
[ EDIT ]
|
[ DEL ]
📄 msr.h
11,290 B
SET
[ EDIT ]
|
[ DEL ]
📄 mtrr.h
4,753 B
SET
[ EDIT ]
|
[ DEL ]
📄 mwait.h
4,968 B
SET
[ EDIT ]
|
[ DEL ]
📄 nmi.h
1,496 B
SET
[ EDIT ]
|
[ DEL ]
📄 nops.h
4,412 B
SET
[ EDIT ]
|
[ DEL ]
📄 nospec-branch.h
14,158 B
SET
[ EDIT ]
|
[ DEL ]
📄 numa.h
2,228 B
SET
[ EDIT ]
|
[ DEL ]
📄 numa_32.h
256 B
SET
[ EDIT ]
|
[ DEL ]
📄 olpc.h
3,240 B
SET
[ EDIT ]
|
[ DEL ]
📄 olpc_ofw.h
1,128 B
SET
[ EDIT ]
|
[ DEL ]
📄 orc_lookup.h
1,665 B
SET
[ EDIT ]
|
[ DEL ]
📄 orc_types.h
3,577 B
SET
[ EDIT ]
|
[ DEL ]
📄 page.h
2,517 B
SET
[ EDIT ]
|
[ DEL ]
📄 page_32.h
1,039 B
SET
[ EDIT ]
|
[ DEL ]
📄 page_32_types.h
1,691 B
SET
[ EDIT ]
|
[ DEL ]
📄 page_64.h
1,573 B
SET
[ EDIT ]
|
[ DEL ]
📄 page_64_types.h
2,208 B
SET
[ EDIT ]
|
[ DEL ]
📄 page_types.h
2,369 B
SET
[ EDIT ]
|
[ DEL ]
📄 paravirt.h
24,608 B
SET
[ EDIT ]
|
[ DEL ]
📄 paravirt_types.h
22,709 B
SET
[ EDIT ]
|
[ DEL ]
📄 parport.h
314 B
SET
[ EDIT ]
|
[ DEL ]
📄 pci-direct.h
740 B
SET
[ EDIT ]
|
[ DEL ]
📄 pci-functions.h
654 B
SET
[ EDIT ]
|
[ DEL ]
📄 pci.h
3,288 B
SET
[ EDIT ]
|
[ DEL ]
📄 pci_64.h
684 B
SET
[ EDIT ]
|
[ DEL ]
📄 pci_x86.h
6,283 B
SET
[ EDIT ]
|
[ DEL ]
📄 percpu.h
20,267 B
SET
[ EDIT ]
|
[ DEL ]
📄 perf_event.h
17,896 B
SET
[ EDIT ]
|
[ DEL ]
📄 perf_event_p4.h
26,731 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgalloc.h
6,591 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable-2level.h
2,815 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable-2level_types.h
867 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable-3level.h
8,832 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable-3level_types.h
1,007 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable-invert.h
1,091 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable.h
35,801 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable_32.h
3,159 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable_32_types.h
2,121 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable_64.h
7,474 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable_64_types.h
4,365 B
SET
[ EDIT ]
|
[ DEL ]
📄 pgtable_types.h
17,149 B
SET
[ EDIT ]
|
[ DEL ]
📄 pkeys.h
3,542 B
SET
[ EDIT ]
|
[ DEL ]
📄 pkru.h
1,346 B
SET
[ EDIT ]
|
[ DEL ]
📄 platform_sst_audio.h
3,290 B
SET
[ EDIT ]
|
[ DEL ]
📄 pm-trace.h
611 B
SET
[ EDIT ]
|
[ DEL ]
📄 posix_types.h
144 B
SET
[ EDIT ]
|
[ DEL ]
📄 preempt.h
3,217 B
SET
[ EDIT ]
|
[ DEL ]
📄 probe_roms.h
273 B
SET
[ EDIT ]
|
[ DEL ]
📄 processor-cyrix.h
879 B
SET
[ EDIT ]
|
[ DEL ]
📄 processor-flags.h
1,750 B
SET
[ EDIT ]
|
[ DEL ]
📄 processor.h
24,480 B
SET
[ EDIT ]
|
[ DEL ]
📄 prom.h
1,028 B
SET
[ EDIT ]
|
[ DEL ]
📄 proto.h
1,313 B
SET
[ EDIT ]
|
[ DEL ]
📄 pti.h
429 B
SET
[ EDIT ]
|
[ DEL ]
📄 ptrace.h
8,996 B
SET
[ EDIT ]
|
[ DEL ]
📄 purgatory.h
235 B
SET
[ EDIT ]
|
[ DEL ]
📄 pvclock-abi.h
1,530 B
SET
[ EDIT ]
|
[ DEL ]
📄 pvclock.h
2,702 B
SET
[ EDIT ]
|
[ DEL ]
📄 qrwlock.h
199 B
SET
[ EDIT ]
|
[ DEL ]
📄 qspinlock.h
2,598 B
SET
[ EDIT ]
|
[ DEL ]
📄 qspinlock_paravirt.h
1,908 B
SET
[ EDIT ]
|
[ DEL ]
📄 realmode.h
2,064 B
SET
[ EDIT ]
|
[ DEL ]
📄 reboot.h
898 B
SET
[ EDIT ]
|
[ DEL ]
📄 reboot_fixups.h
183 B
SET
[ EDIT ]
|
[ DEL ]
📄 refcount.h
2,911 B
SET
[ EDIT ]
|
[ DEL ]
📄 required-features.h
3,043 B
SET
[ EDIT ]
|
[ DEL ]
📄 resctrl.h
3,064 B
SET
[ EDIT ]
|
[ DEL ]
📄 rio.h
2,630 B
SET
[ EDIT ]
|
[ DEL ]
📄 rmwcc.h
2,259 B
SET
[ EDIT ]
|
[ DEL ]
📄 seccomp.h
510 B
SET
[ EDIT ]
|
[ DEL ]
📄 sections.h
916 B
SET
[ EDIT ]
|
[ DEL ]
📄 segment.h
11,184 B
SET
[ EDIT ]
|
[ DEL ]
📄 serial.h
1,137 B
SET
[ EDIT ]
|
[ DEL ]
📄 set_memory.h
5,381 B
SET
[ EDIT ]
|
[ DEL ]
📄 setup.h
3,751 B
SET
[ EDIT ]
|
[ DEL ]
📄 setup_arch.h
77 B
SET
[ EDIT ]
|
[ DEL ]
📄 sev-common.h
4,867 B
SET
[ EDIT ]
|
[ DEL ]
📄 sev.h
6,965 B
SET
[ EDIT ]
|
[ DEL ]
📄 sgx.h
13,157 B
SET
[ EDIT ]
|
[ DEL ]
📄 shmparam.h
193 B
SET
[ EDIT ]
|
[ DEL ]
📄 sigcontext.h
261 B
SET
[ EDIT ]
|
[ DEL ]
📄 sigframe.h
2,339 B
SET
[ EDIT ]
|
[ DEL ]
📄 sighandling.h
730 B
SET
[ EDIT ]
|
[ DEL ]
📄 signal.h
2,424 B
SET
[ EDIT ]
|
[ DEL ]
📄 simd.h
287 B
SET
[ EDIT ]
|
[ DEL ]
📄 smap.h
2,247 B
SET
[ EDIT ]
|
[ DEL ]
📄 smp.h
5,500 B
SET
[ EDIT ]
|
[ DEL ]
📄 sparsemem.h
994 B
SET
[ EDIT ]
|
[ DEL ]
📄 spec-ctrl.h
3,143 B
SET
[ EDIT ]
|
[ DEL ]
📄 special_insns.h
7,536 B
SET
[ EDIT ]
|
[ DEL ]
📄 spinlock.h
1,214 B
SET
[ EDIT ]
|
[ DEL ]
📄 spinlock_types.h
719 B
SET
[ EDIT ]
|
[ DEL ]
📄 sta2x11.h
352 B
SET
[ EDIT ]
|
[ DEL ]
📄 stackprotector.h
3,966 B
SET
[ EDIT ]
|
[ DEL ]
📄 stacktrace.h
2,619 B
SET
[ EDIT ]
|
[ DEL ]
📄 string.h
129 B
SET
[ EDIT ]
|
[ DEL ]
📄 string_32.h
7,929 B
SET
[ EDIT ]
|
[ DEL ]
📄 string_64.h
4,237 B
SET
[ EDIT ]
|
[ DEL ]
📄 suspend.h
503 B
SET
[ EDIT ]
|
[ DEL ]
📄 suspend_32.h
938 B
SET
[ EDIT ]
|
[ DEL ]
📄 suspend_64.h
1,838 B
SET
[ EDIT ]
|
[ DEL ]
📄 svm.h
14,672 B
SET
[ EDIT ]
|
[ DEL ]
📄 switch_to.h
3,258 B
SET
[ EDIT ]
|
[ DEL ]
📄 sync_bitops.h
3,503 B
SET
[ EDIT ]
|
[ DEL ]
📄 sync_core.h
3,138 B
SET
[ EDIT ]
|
[ DEL ]
📄 syscall.h
5,489 B
SET
[ EDIT ]
|
[ DEL ]
📄 syscall_wrapper.h
7,780 B
SET
[ EDIT ]
|
[ DEL ]
📄 syscalls.h
1,332 B
SET
[ EDIT ]
|
[ DEL ]
📄 sysfb.h
2,600 B
SET
[ EDIT ]
|
[ DEL ]
📄 tce.h
1,724 B
SET
[ EDIT ]
|
[ DEL ]
📄 tdx.h
2,360 B
SET
[ EDIT ]
|
[ DEL ]
📄 text-patching.h
4,812 B
SET
[ EDIT ]
|
[ DEL ]
📄 thermal.h
428 B
SET
[ EDIT ]
|
[ DEL ]
📄 thread_info.h
8,805 B
SET
[ EDIT ]
|
[ DEL ]
📄 time.h
331 B
SET
[ EDIT ]
|
[ DEL ]
📄 timer.h
1,027 B
SET
[ EDIT ]
|
[ DEL ]
📄 timex.h
305 B
SET
[ EDIT ]
|
[ DEL ]
📄 tlb.h
1,103 B
SET
[ EDIT ]
|
[ DEL ]
📄 tlbbatch.h
332 B
SET
[ EDIT ]
|
[ DEL ]
📄 tlbflush.h
17,814 B
SET
[ EDIT ]
|
[ DEL ]
📄 topology.h
6,654 B
SET
[ EDIT ]
|
[ DEL ]
📄 trace_clock.h
406 B
SET
[ EDIT ]
|
[ DEL ]
📄 trap_pf.h
709 B
SET
[ EDIT ]
|
[ DEL ]
📄 trapnr.h
1,316 B
SET
[ EDIT ]
|
[ DEL ]
📄 traps.h
5,374 B
SET
[ EDIT ]
|
[ DEL ]
📄 tsc.h
1,950 B
SET
[ EDIT ]
|
[ DEL ]
📄 uaccess.h
21,233 B
SET
[ EDIT ]
|
[ DEL ]
📄 uaccess_32.h
1,006 B
SET
[ EDIT ]
|
[ DEL ]
📄 uaccess_64.h
3,129 B
SET
[ EDIT ]
|
[ DEL ]
📄 umip.h
329 B
SET
[ EDIT ]
|
[ DEL ]
📄 unaligned.h
345 B
SET
[ EDIT ]
|
[ DEL ]
📄 unistd.h
1,482 B
SET
[ EDIT ]
|
[ DEL ]
📄 unwind.h
3,220 B
SET
[ EDIT ]
|
[ DEL ]
📄 unwind_hints.h
3,342 B
SET
[ EDIT ]
|
[ DEL ]
📄 uprobes.h
1,686 B
SET
[ EDIT ]
|
[ DEL ]
📄 user.h
2,257 B
SET
[ EDIT ]
|
[ DEL ]
📄 user32.h
2,156 B
SET
[ EDIT ]
|
[ DEL ]
📄 user_32.h
5,042 B
SET
[ EDIT ]
|
[ DEL ]
📄 user_64.h
5,339 B
SET
[ EDIT ]
|
[ DEL ]
📄 vdso.h
1,400 B
SET
[ EDIT ]
|
[ DEL ]
📄 vga.h
740 B
SET
[ EDIT ]
|
[ DEL ]
📄 vgtod.h
518 B
SET
[ EDIT ]
|
[ DEL ]
📄 virtext.h
3,102 B
SET
[ EDIT ]
|
[ DEL ]
📄 vm86.h
2,212 B
SET
[ EDIT ]
|
[ DEL ]
📄 vmware.h
1,942 B
SET
[ EDIT ]
|
[ DEL ]
📄 vmx.h
26,763 B
SET
[ EDIT ]
|
[ DEL ]
📄 vmxfeatures.h
6,049 B
SET
[ EDIT ]
|
[ DEL ]
📄 vsyscall.h
920 B
SET
[ EDIT ]
|
[ DEL ]
📄 vvar.h
1,603 B
SET
[ EDIT ]
|
[ DEL ]
📄 word-at-a-time.h
2,596 B
SET
[ EDIT ]
|
[ DEL ]
📄 x86_init.h
11,520 B
SET
[ EDIT ]
|
[ DEL ]
📄 xor.h
10,508 B
SET
[ EDIT ]
|
[ DEL ]
📄 xor_32.h
14,748 B
SET
[ EDIT ]
|
[ DEL ]
📄 xor_64.h
716 B
SET
[ EDIT ]
|
[ DEL ]
📄 xor_avx.h
4,610 B
SET
[ EDIT ]
|
[ DEL ]
DELETE SELECTED
[ CLOSE ]
EDIT: alternative.h
/* SPDX-License-Identifier: GPL-2.0 */ #ifndef _ASM_X86_ALTERNATIVE_H #define _ASM_X86_ALTERNATIVE_H #include <linux/types.h> #include <linux/stringify.h> #include <asm/asm.h> #define ALTINSTR_FLAG_INV (1 << 15) #define ALT_NOT(feat) ((feat) | ALTINSTR_FLAG_INV) #ifndef __ASSEMBLY__ #include <linux/stddef.h> /* * Alternative inline assembly for SMP. * * The LOCK_PREFIX macro defined here replaces the LOCK and * LOCK_PREFIX macros used everywhere in the source tree. * * SMP alternatives use the same data structures as the other * alternatives and the X86_FEATURE_UP flag to indicate the case of a * UP system running a SMP kernel. The existing apply_alternatives() * works fine for patching a SMP kernel for UP. * * The SMP alternative tables can be kept after boot and contain both * UP and SMP versions of the instructions to allow switching back to * SMP at runtime, when hotplugging in a new CPU, which is especially * useful in virtualized environments. * * The very common lock prefix is handled as special case in a * separate table which is a pure address list without replacement ptr * and size information. That keeps the table sizes small. */ #ifdef CONFIG_SMP #define LOCK_PREFIX_HERE \ ".pushsection .smp_locks,\"a\"\n" \ ".balign 4\n" \ ".long 671f - .\n" /* offset */ \ ".popsection\n" \ "671:" #define LOCK_PREFIX LOCK_PREFIX_HERE "\n\tlock; " #else /* ! CONFIG_SMP */ #define LOCK_PREFIX_HERE "" #define LOCK_PREFIX "" #endif /* * objtool annotation to ignore the alternatives and only consider the original * instruction(s). */ #define ANNOTATE_IGNORE_ALTERNATIVE \ "999:\n\t" \ ".pushsection .discard.ignore_alts\n\t" \ ".long 999b - .\n\t" \ ".popsection\n\t" struct alt_instr { s32 instr_offset; /* original instruction */ s32 repl_offset; /* offset to replacement instruction */ u16 cpuid; /* cpuid bit set for replacement */ u8 instrlen; /* length of original instruction */ u8 replacementlen; /* length of new instruction */ u8 padlen; /* length of build-time padding */ } __packed; /* * Debug flag that can be tested to see whether alternative * instructions were patched in already: */ extern int alternatives_patched; extern void alternative_instructions(void); extern void apply_alternatives(struct alt_instr *start, struct alt_instr *end); extern void apply_returns(s32 *start, s32 *end); struct module; #ifdef CONFIG_SMP extern void alternatives_smp_module_add(struct module *mod, char *name, void *locks, void *locks_end, void *text, void *text_end); extern void alternatives_smp_module_del(struct module *mod); extern void alternatives_enable_smp(void); extern int alternatives_text_reserved(void *start, void *end); extern bool skip_smp_alternatives; #else static inline void alternatives_smp_module_add(struct module *mod, char *name, void *locks, void *locks_end, void *text, void *text_end) {} static inline void alternatives_smp_module_del(struct module *mod) {} static inline void alternatives_enable_smp(void) {} static inline int alternatives_text_reserved(void *start, void *end) { return 0; } #endif /* CONFIG_SMP */ #define b_replacement(num) "664"#num #define e_replacement(num) "665"#num #define alt_end_marker "663" #define alt_slen "662b-661b" #define alt_pad_len alt_end_marker"b-662b" #define alt_total_slen alt_end_marker"b-661b" #define alt_rlen(num) e_replacement(num)"f-"b_replacement(num)"f" #define __OLDINSTR(oldinstr, num) \ "661:\n\t" oldinstr "\n662:\n" \ ".skip -(((" alt_rlen(num) ")-(" alt_slen ")) > 0) * " \ "((" alt_rlen(num) ")-(" alt_slen ")),0x90\n" #define OLDINSTR(oldinstr, num) \ __OLDINSTR(oldinstr, num) \ alt_end_marker ":\n" /* * gas compatible max based on the idea from: * http://graphics.stanford.edu/~seander/bithacks.html#IntegerMinOrMax * * The additional "-" is needed because gas uses a "true" value of -1. */ #define alt_max_short(a, b) "((" a ") ^ (((" a ") ^ (" b ")) & -(-((" a ") < (" b ")))))" /* * Pad the second replacement alternative with additional NOPs if it is * additionally longer than the first replacement alternative. */ #define OLDINSTR_2(oldinstr, num1, num2) \ "661:\n\t" oldinstr "\n662:\n" \ ".skip -((" alt_max_short(alt_rlen(num1), alt_rlen(num2)) " - (" alt_slen ")) > 0) * " \ "(" alt_max_short(alt_rlen(num1), alt_rlen(num2)) " - (" alt_slen ")), 0x90\n" \ alt_end_marker ":\n" #define ALTINSTR_ENTRY(feature, num) \ " .long 661b - .\n" /* label */ \ " .long " b_replacement(num)"f - .\n" /* new instruction */ \ " .word " __stringify(feature) "\n" /* feature bit */ \ " .byte " alt_total_slen "\n" /* source len */ \ " .byte " alt_rlen(num) "\n" /* replacement len */ \ " .byte " alt_pad_len "\n" /* pad len */ #define ALTINSTR_REPLACEMENT(newinstr, feature, num) /* replacement */ \ b_replacement(num)":\n\t" newinstr "\n" e_replacement(num) ":\n\t" /* alternative assembly primitive: */ #define ALTERNATIVE(oldinstr, newinstr, feature) \ OLDINSTR(oldinstr, 1) \ ".pushsection .altinstructions,\"a\"\n" \ ALTINSTR_ENTRY(feature, 1) \ ".popsection\n" \ ".pushsection .altinstr_replacement, \"ax\"\n" \ ALTINSTR_REPLACEMENT(newinstr, feature, 1) \ ".popsection\n" #define ALTERNATIVE_2(oldinstr, newinstr1, feature1, newinstr2, feature2)\ OLDINSTR_2(oldinstr, 1, 2) \ ".pushsection .altinstructions,\"a\"\n" \ ALTINSTR_ENTRY(feature1, 1) \ ALTINSTR_ENTRY(feature2, 2) \ ".popsection\n" \ ".pushsection .altinstr_replacement, \"ax\"\n" \ ALTINSTR_REPLACEMENT(newinstr1, feature1, 1) \ ALTINSTR_REPLACEMENT(newinstr2, feature2, 2) \ ".popsection\n" /* * Alternative instructions for different CPU types or capabilities. * * This allows to use optimized instructions even on generic binary * kernels. * * length of oldinstr must be longer or equal the length of newinstr * It can be padded with nops as needed. * * For non barrier like inlines please define new variants * without volatile and memory clobber. */ #define alternative(oldinstr, newinstr, feature) \ asm volatile (ALTERNATIVE(oldinstr, newinstr, feature) : : : "memory") #define alternative_2(oldinstr, newinstr1, feature1, newinstr2, feature2) \ asm volatile(ALTERNATIVE_2(oldinstr, newinstr1, feature1, newinstr2, feature2) ::: "memory") /* * Alternative inline assembly with input. * * Peculiarities: * No memory clobber here. * Argument numbers start with 1. * Best is to use constraints that are fixed size (like (%1) ... "r") * If you use variable sized constraints like "m" or "g" in the * replacement make sure to pad to the worst case length. * Leaving an unused argument 0 to keep API compatibility. */ #define alternative_input(oldinstr, newinstr, feature, input...) \ asm volatile (ALTERNATIVE(oldinstr, newinstr, feature) \ : : "i" (0), ## input) /* * This is similar to alternative_input. But it has two features and * respective instructions. * * If CPU has feature2, newinstr2 is used. * Otherwise, if CPU has feature1, newinstr1 is used. * Otherwise, oldinstr is used. */ #define alternative_input_2(oldinstr, newinstr1, feature1, newinstr2, \ feature2, input...) \ asm volatile(ALTERNATIVE_2(oldinstr, newinstr1, feature1, \ newinstr2, feature2) \ : : "i" (0), ## input) /* Like alternative_input, but with a single output argument */ #define alternative_io(oldinstr, newinstr, feature, output, input...) \ asm volatile (ALTERNATIVE(oldinstr, newinstr, feature) \ : output : "i" (0), ## input) /* Like alternative_io, but for replacing a direct call with another one. */ #define alternative_call(oldfunc, newfunc, feature, output, input...) \ asm volatile (ALTERNATIVE("call %P[old]", "call %P[new]", feature) \ : output : [old] "i" (oldfunc), [new] "i" (newfunc), ## input) /* * Like alternative_call, but there are two features and respective functions. * If CPU has feature2, function2 is used. * Otherwise, if CPU has feature1, function1 is used. * Otherwise, old function is used. */ #define alternative_call_2(oldfunc, newfunc1, feature1, newfunc2, feature2, \ output, input...) \ asm volatile (ALTERNATIVE_2("call %P[old]", "call %P[new1]", feature1,\ "call %P[new2]", feature2) \ : output, ASM_CALL_CONSTRAINT \ : [old] "i" (oldfunc), [new1] "i" (newfunc1), \ [new2] "i" (newfunc2), ## input) /* * use this macro(s) if you need more than one output parameter * in alternative_io */ #define ASM_OUTPUT2(a...) a /* * use this macro if you need clobbers but no inputs in * alternative_{input,io,call}() */ #define ASM_NO_INPUT_CLOBBER(clbr...) "i" (0) : clbr #else /* __ASSEMBLY__ */ #ifdef CONFIG_SMP .macro LOCK_PREFIX 672: lock .pushsection .smp_locks,"a" .balign 4 .long 672b - . .popsection .endm #else .macro LOCK_PREFIX .endm #endif /* * objtool annotation to ignore the alternatives and only consider the original * instruction(s). */ .macro ANNOTATE_IGNORE_ALTERNATIVE .Lannotate_\@: .pushsection .discard.ignore_alts .long .Lannotate_\@ - . .popsection .endm /* * Issue one struct alt_instr descriptor entry (need to put it into * the section .altinstructions, see below). This entry contains * enough information for the alternatives patching code to patch an * instruction. See apply_alternatives(). */ .macro altinstruction_entry orig alt feature orig_len alt_len pad_len .long \orig - . .long \alt - . .word \feature .byte \orig_len .byte \alt_len .byte \pad_len .endm /* * Define an alternative between two instructions. If @feature is * present, early code in apply_alternatives() replaces @oldinstr with * @newinstr. ".skip" directive takes care of proper instruction padding * in case @newinstr is longer than @oldinstr. */ .macro ALTERNATIVE oldinstr, newinstr, feature 140: \oldinstr 141: .skip -(((144f-143f)-(141b-140b)) > 0) * ((144f-143f)-(141b-140b)),0x90 142: .pushsection .altinstructions,"a" altinstruction_entry 140b,143f,\feature,142b-140b,144f-143f,142b-141b .popsection .pushsection .altinstr_replacement,"ax" 143: \newinstr 144: .popsection .endm #define old_len 141b-140b #define new_len1 144f-143f #define new_len2 145f-144f /* * gas compatible max based on the idea from: * http://graphics.stanford.edu/~seander/bithacks.html#IntegerMinOrMax * * The additional "-" is needed because gas uses a "true" value of -1. */ #define alt_max_short(a, b) ((a) ^ (((a) ^ (b)) & -(-((a) < (b))))) /* * Same as ALTERNATIVE macro above but for two alternatives. If CPU * has @feature1, it replaces @oldinstr with @newinstr1. If CPU has * @feature2, it replaces @oldinstr with @feature2. */ .macro ALTERNATIVE_2 oldinstr, newinstr1, feature1, newinstr2, feature2 140: \oldinstr 141: .skip -((alt_max_short(new_len1, new_len2) - (old_len)) > 0) * \ (alt_max_short(new_len1, new_len2) - (old_len)),0x90 142: .pushsection .altinstructions,"a" altinstruction_entry 140b,143f,\feature1,142b-140b,144f-143f,142b-141b altinstruction_entry 140b,144f,\feature2,142b-140b,145f-144f,142b-141b .popsection .pushsection .altinstr_replacement,"ax" 143: \newinstr1 144: \newinstr2 145: .popsection .endm #endif /* __ASSEMBLY__ */ #endif /* _ASM_X86_ALTERNATIVE_H */