diff --git a/repos/dde_linux/lib/import/import-lx_emul_common.inc b/repos/dde_linux/lib/import/import-lx_emul_common.inc index da786556a1..52582622f7 100644 --- a/repos/dde_linux/lib/import/import-lx_emul_common.inc +++ b/repos/dde_linux/lib/import/import-lx_emul_common.inc @@ -31,12 +31,9 @@ SRC_C += lx_emul/shadow/kernel/rcu/tree.c SRC_C += lx_emul/shadow/kernel/sched/cputime.c SRC_C += lx_emul/shadow/kernel/sched/core.c SRC_C += lx_emul/shadow/kernel/sched/fair.c -SRC_C += lx_emul/shadow/kernel/sched/isolation.c -SRC_C += lx_emul/shadow/kernel/sched/loadavg.c SRC_C += lx_emul/shadow/kernel/sched/sched.c SRC_C += lx_emul/shadow/kernel/smp.c SRC_C += lx_emul/shadow/kernel/stop_machine.c -SRC_C += lx_emul/shadow/lib/cpumask.c SRC_C += lx_emul/shadow/lib/delay.c SRC_C += lx_emul/shadow/mm/percpu.c SRC_C += lx_emul/shadow/mm/slab_common.c @@ -131,6 +128,7 @@ ifeq ($(filter-out $(SPECS),arm),) CC_DEF += -include asm/unified.h endif +CC_DEF += -include $(LX_SRC_DIR)/include/linux/compiler-version.h CC_DEF += -include $(LX_SRC_DIR)/include/linux/kconfig.h CC_DEF += -include $(LX_SRC_DIR)/include/linux/compiler_types.h CC_DEF += -D__KERNEL__ -DCONFIG_CC_HAS_K_CONSTRAINT=1 @@ -138,14 +136,15 @@ CC_DEF += -DKASAN_SHADOW_SCALE_SHIFT=3 CC_C_OPT += -std=gnu89 CC_C_OPT += -Wall -Wundef -Werror=strict-prototypes -Wno-trigraphs CC_C_OPT += -Werror=implicit-function-declaration -Werror=implicit-int -CC_C_OPT += -Wno-format-security -Wno-psabi -CC_C_OPT += -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -CC_C_OPT += -Wframe-larger-than=2048 -Wno-unused-but-set-variable -Wimplicit-fallthrough +CC_C_OPT += -Werror=return-type -Wno-format-security -Wno-psabi -Wno-sign-compare +CC_C_OPT += -Wno-frame-address -Wno-format-truncation -Wno-format-overflow -Wno-address-of-packed-member +CC_C_OPT += -Wframe-larger-than=2048 -Wno-main -Wno-unused-but-set-variable -Wimplicit-fallthrough CC_C_OPT += -Wno-unused-const-variable -Wdeclaration-after-statement -Wvla -CC_C_OPT += -Wno-pointer-sign -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow +CC_C_OPT += -Wno-pointer-sign -Wcast-function-type -Wno-stringop-truncation -Wno-array-bounds -Wno-stringop-overflow CC_C_OPT += -Wno-restrict -Wno-maybe-uninitialized -Werror=date-time +CC_C_OPT += -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time CC_C_OPT += -Werror=incompatible-pointer-types -Werror=designated-init -CC_C_OPT += -Wno-packed-not-aligned +CC_C_OPT += -Wno-packed-not-aligned -Wno-unused-but-set-variable CC_C_OPT += -Wno-discarded-qualifiers # avoid link errors whenever the build config's CC_OLEVEL is set to -O0 diff --git a/repos/dde_linux/patches/i915_fb_resize.patch b/repos/dde_linux/patches/i915_fb_resize.patch new file mode 100644 index 0000000000..d7a8eeb9c6 --- /dev/null +++ b/repos/dde_linux/patches/i915_fb_resize.patch @@ -0,0 +1,21 @@ +--- a/drivers/gpu/drm/i915/display/intel_fbdev.c ++++ b/drivers/gpu/drm/i915/display/intel_fbdev.c +@@ -251,6 +251,18 @@ + &view, false, &flags); + if (IS_ERR(vma)) { + ret = PTR_ERR(vma); ++ ++ /* If the partial allocation is not reverted, the next ++ * i915_fb()->funcs->fb_probe (which calls intelfb_create) ++ * will try the old resolution, which failed and fails again, ++ * instead of using the new smaller resolution. ++ */ ++ if (ret == -ENOMEM && ifbdev->fb) { ++ printk("%s -ENOMEM, remove fb\n", __func__); ++ drm_framebuffer_put(&ifbdev->fb->base); ++ ifbdev->fb = NULL; ++ } ++ + goto out_unlock; + } + diff --git a/repos/dde_linux/patches/workqueue_deadlock.patch b/repos/dde_linux/patches/workqueue_deadlock.patch index bffdd0fb5e..5644584561 100644 --- a/repos/dde_linux/patches/workqueue_deadlock.patch +++ b/repos/dde_linux/patches/workqueue_deadlock.patch @@ -3,18 +3,18 @@ when a work is submitted. The patch implies that three workers will be used for three works (before it was one). The fourth work will be queued. diff --git a/kernel/workqueue.c b/kernel/workqueue.c -index ccad28b..ed16e05 100644 +index 7cd5f5e7e..c717a06b7 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c -@@ -763,7 +763,10 @@ static bool work_is_canceling(struct work_struct *work) +@@ -782,7 +782,10 @@ static bool work_is_canceling(struct work_struct *work) static bool __need_more_worker(struct worker_pool *pool) { -- return !atomic_read(&pool->nr_running); +- return !pool->nr_running; + /* + * Assume two works can deadlock and make a third available + */ -+ return atomic_read(&pool->nr_running) < 3; ++ return pool->nr_running < 3; } /* diff --git a/repos/dde_linux/ports/linux.hash b/repos/dde_linux/ports/linux.hash index c090c2e7c6..b91ef7b9ca 100644 --- a/repos/dde_linux/ports/linux.hash +++ b/repos/dde_linux/ports/linux.hash @@ -1 +1 @@ -417db2da739fdf54788613353118bb904cc57ea9 +f1d1430a9c52da43e837a5d788f312a17100311e diff --git a/repos/dde_linux/ports/linux.port b/repos/dde_linux/ports/linux.port index dbefd33d27..defb34981d 100644 --- a/repos/dde_linux/ports/linux.port +++ b/repos/dde_linux/ports/linux.port @@ -1,23 +1,20 @@ LICENSE := GPLv2 -VERSION := 5.14.21 +VERSION := 6.1.20 DOWNLOADS := linux.archive -URL(linux) := https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-$(VERSION).tar.xz -SHA(linux) := f41a259cb2002dd2e3286524b2bb4e803f4f982992d092706ecea613584023b3 +URL(linux) := https://cdn.kernel.org/pub/linux/kernel/v6.x/linux-$(VERSION).tar.xz +SHA(linux) := 76322de8c01a3c63b42c4d1e9b9e7d1897ddb91276e10d73d1f9df3562f031f0 DIR(linux) := src/linux # # Patches # -PATCH_FILES := i915_irq.patch i915_alderlake.patch xhci_fix_event_37.patch \ - xhci_abort_ring.patch iwlwifi_enable_irq_before_pnvm.patch \ - realloc-fix-gcc-12.patch \ - workqueue_deadlock.patch \ - usb_message.patch +PATCH_FILES := i915_irq.patch i915_fb_resize.patch \ + iwlwifi_enable_irq_before_pnvm.patch \ + usb_message.patch \ + workqueue_deadlock.patch PATCHES += $(addprefix patches/,$(PATCH_FILES)) -# i915 -PATCH_OPT(patches/i915_irq.patch) := -p1 -d${DIR(linux)} -PATCH_OPT(patches/xhci_abort_ring.patch) := -p1 -d${DIR(linux)} -PATCH_OPT(patches/xhci_fix_event_37.patch) := -p1 -d${DIR(linux)} +PATCH_OPT(patches/i915_irq.patch) := -p1 -d${DIR(linux)} +PATCH_OPT(patches/i915_fb_resize.patch) := -p1 -d${DIR(linux)} PATCH_OPT(patches/workqueue_deadlock.patch) := -p1 -d${DIR(linux)} diff --git a/repos/dde_linux/recipes/src/wireguard/content.mk b/repos/dde_linux/recipes/src/wireguard/content.mk index ab1836e134..6f6a836738 100644 --- a/repos/dde_linux/recipes/src/wireguard/content.mk +++ b/repos/dde_linux/recipes/src/wireguard/content.mk @@ -62,6 +62,8 @@ LX_FILES += Kbuild \ arch/arm64/tools/Makefile \ arch/arm64/tools/cpucaps \ arch/arm64/tools/gen-cpucaps.awk \ + arch/arm64/tools/gen-sysreg.awk \ + arch/arm64/tools/sysreg \ arch/x86/Makefile \ arch/x86/Makefile_32.cpu \ arch/x86/configs \ @@ -94,19 +96,20 @@ LX_FILES += Kbuild \ scripts/Makefile.lib \ scripts/as-version.sh \ scripts/asn1_compiler.c \ - scripts/atomic/check-atomics.sh \ scripts/basic/Makefile \ scripts/basic/fixdep.c \ scripts/cc-version.sh \ + scripts/check-local-export \ scripts/checksyscalls.sh \ scripts/config \ scripts/dtc \ - scripts/extract-cert.c \ - scripts/gcc-goto.sh \ scripts/kconfig/merge_config.sh \ scripts/ld-version.sh \ + scripts/mkcompile_h \ scripts/min-tool-version.sh \ scripts/mod \ + scripts/pahole-flags.sh \ + scripts/pahole-version.sh \ scripts/remove-stale-files \ scripts/setlocalversion \ scripts/sorttable.c \ diff --git a/repos/dde_linux/src/app/wireguard/dep.list b/repos/dde_linux/src/app/wireguard/dep.list index 2ef8cb4b42..25f10824c5 100644 --- a/repos/dde_linux/src/app/wireguard/dep.list +++ b/repos/dde_linux/src/app/wireguard/dep.list @@ -1,3 +1,257 @@ +arch/arm64/include/asm/alternative-macros.h +arch/arm64/include/asm/alternative.h +arch/arm64/include/asm/arch_timer.h +arch/arm64/include/asm/archrandom.h +arch/arm64/include/asm/asm-bug.h +arch/arm64/include/asm/asm-extable.h +arch/arm64/include/asm/asm-offsets.h +arch/arm64/include/asm/assembler.h +arch/arm64/include/asm/atomic.h +arch/arm64/include/asm/atomic_ll_sc.h +arch/arm64/include/asm/barrier.h +arch/arm64/include/asm/bitops.h +arch/arm64/include/asm/bitrev.h +arch/arm64/include/asm/boot.h +arch/arm64/include/asm/brk-imm.h +arch/arm64/include/asm/bug.h +arch/arm64/include/asm/cache.h +arch/arm64/include/asm/cacheflush.h +arch/arm64/include/asm/checksum.h +arch/arm64/include/asm/clocksource.h +arch/arm64/include/asm/cmpxchg.h +arch/arm64/include/asm/compat.h +arch/arm64/include/asm/compiler.h +arch/arm64/include/asm/cpufeature.h +arch/arm64/include/asm/cputype.h +arch/arm64/include/asm/debug-monitors.h +arch/arm64/include/asm/device.h +arch/arm64/include/asm/elf.h +arch/arm64/include/asm/esr.h +arch/arm64/include/asm/exception.h +arch/arm64/include/asm/exec.h +arch/arm64/include/asm/extable.h +arch/arm64/include/asm/fpsimd.h +arch/arm64/include/asm/fpsimdmacros.h +arch/arm64/include/asm/ftrace.h +arch/arm64/include/asm/gpr-num.h +arch/arm64/include/asm/hardirq.h +arch/arm64/include/asm/hw_breakpoint.h +arch/arm64/include/asm/hwcap.h +arch/arm64/include/asm/insn-def.h +arch/arm64/include/asm/insn.h +arch/arm64/include/asm/io.h +arch/arm64/include/asm/irq.h +arch/arm64/include/asm/irq_work.h +arch/arm64/include/asm/kasan.h +arch/arm64/include/asm/kernel-pgtable.h +arch/arm64/include/asm/kgdb.h +arch/arm64/include/asm/kprobes.h +arch/arm64/include/asm/kvm_arm.h +arch/arm64/include/asm/linkage.h +arch/arm64/include/asm/lse.h +arch/arm64/include/asm/mmu.h +arch/arm64/include/asm/mmu_context.h +arch/arm64/include/asm/module.h +arch/arm64/include/asm/mte-def.h +arch/arm64/include/asm/mte-kasan.h +arch/arm64/include/asm/mte.h +arch/arm64/include/asm/neon.h +arch/arm64/include/asm/page-def.h +arch/arm64/include/asm/percpu.h +arch/arm64/include/asm/pgtable-hwdef.h +arch/arm64/include/asm/pgtable-prot.h +arch/arm64/include/asm/pgtable-types.h +arch/arm64/include/asm/pointer_auth.h +arch/arm64/include/asm/preempt.h +arch/arm64/include/asm/proc-fns.h +arch/arm64/include/asm/processor.h +arch/arm64/include/asm/ptrace.h +arch/arm64/include/asm/rwonce.h +arch/arm64/include/asm/sections.h +arch/arm64/include/asm/set_memory.h +arch/arm64/include/asm/shmparam.h +arch/arm64/include/asm/signal.h +arch/arm64/include/asm/simd.h +arch/arm64/include/asm/smp.h +arch/arm64/include/asm/sparsemem.h +arch/arm64/include/asm/spectre.h +arch/arm64/include/asm/spinlock_types.h +arch/arm64/include/asm/stack_pointer.h +arch/arm64/include/asm/stat.h +arch/arm64/include/asm/string.h +arch/arm64/include/asm/syscall_wrapper.h +arch/arm64/include/asm/sysreg.h +arch/arm64/include/asm/thread_info.h +arch/arm64/include/asm/timex.h +arch/arm64/include/asm/tlbflush.h +arch/arm64/include/asm/topology.h +arch/arm64/include/asm/traps.h +arch/arm64/include/asm/uaccess.h +arch/arm64/include/asm/unistd.h +arch/arm64/include/asm/vdso/clocksource.h +arch/arm64/include/asm/vdso/processor.h +arch/arm64/include/asm/virt.h +arch/arm64/include/asm/vmalloc.h +arch/arm64/include/asm/word-at-a-time.h +arch/arm64/include/uapi/asm/auxvec.h +arch/arm64/include/uapi/asm/bitsperlong.h +arch/arm64/include/uapi/asm/bpf_perf_event.h +arch/arm64/include/uapi/asm/byteorder.h +arch/arm64/include/uapi/asm/fcntl.h +arch/arm64/include/uapi/asm/hwcap.h +arch/arm64/include/uapi/asm/param.h +arch/arm64/include/uapi/asm/perf_regs.h +arch/arm64/include/uapi/asm/posix_types.h +arch/arm64/include/uapi/asm/ptrace.h +arch/arm64/include/uapi/asm/sigcontext.h +arch/arm64/include/uapi/asm/signal.h +arch/arm64/include/uapi/asm/sve_context.h +arch/arm64/include/uapi/asm/unistd.h +arch/x86/include/asm/alternative.h +arch/x86/include/asm/apicdef.h +arch/x86/include/asm/arch_hweight.h +arch/x86/include/asm/archrandom.h +arch/x86/include/asm/asm.h +arch/x86/include/asm/atomic.h +arch/x86/include/asm/atomic64_64.h +arch/x86/include/asm/barrier.h +arch/x86/include/asm/bitops.h +arch/x86/include/asm/bug.h +arch/x86/include/asm/cache.h +arch/x86/include/asm/cacheflush.h +arch/x86/include/asm/checksum.h +arch/x86/include/asm/checksum_64.h +arch/x86/include/asm/clocksource.h +arch/x86/include/asm/cmpxchg.h +arch/x86/include/asm/cmpxchg_64.h +arch/x86/include/asm/compat.h +arch/x86/include/asm/cpu.h +arch/x86/include/asm/cpu_entry_area.h +arch/x86/include/asm/cpufeature.h +arch/x86/include/asm/cpufeatures.h +arch/x86/include/asm/cpumask.h +arch/x86/include/asm/delay.h +arch/x86/include/asm/desc.h +arch/x86/include/asm/desc_defs.h +arch/x86/include/asm/device.h +arch/x86/include/asm/disabled-features.h +arch/x86/include/asm/div64.h +arch/x86/include/asm/elf.h +arch/x86/include/asm/emergency-restart.h +arch/x86/include/asm/exec.h +arch/x86/include/asm/extable.h +arch/x86/include/asm/extable_fixup_types.h +arch/x86/include/asm/fixmap.h +arch/x86/include/asm/fpu/api.h +arch/x86/include/asm/fpu/types.h +arch/x86/include/asm/frame.h +arch/x86/include/asm/fsgsbase.h +arch/x86/include/asm/ftrace.h +arch/x86/include/asm/hardirq.h +arch/x86/include/asm/hw_breakpoint.h +arch/x86/include/asm/hw_irq.h +arch/x86/include/asm/ibt.h +arch/x86/include/asm/intel-family.h +arch/x86/include/asm/intel_ds.h +arch/x86/include/asm/invpcid.h +arch/x86/include/asm/irq.h +arch/x86/include/asm/irq_stack.h +arch/x86/include/asm/irq_vectors.h +arch/x86/include/asm/irq_work.h +arch/x86/include/asm/ist.h +arch/x86/include/asm/kaslr.h +arch/x86/include/asm/kdebug.h +arch/x86/include/asm/kprobes.h +arch/x86/include/asm/kvm_para.h +arch/x86/include/asm/linkage.h +arch/x86/include/asm/local.h +arch/x86/include/asm/math_emu.h +arch/x86/include/asm/mem_encrypt.h +arch/x86/include/asm/mmu.h +arch/x86/include/asm/mmu_context.h +arch/x86/include/asm/module.h +arch/x86/include/asm/msr-index.h +arch/x86/include/asm/msr.h +arch/x86/include/asm/nops.h +arch/x86/include/asm/orc_types.h +arch/x86/include/asm/page_64_types.h +arch/x86/include/asm/page_types.h +arch/x86/include/asm/paravirt.h +arch/x86/include/asm/percpu.h +arch/x86/include/asm/perf_event.h +arch/x86/include/asm/pgtable_64_types.h +arch/x86/include/asm/pgtable_areas.h +arch/x86/include/asm/pgtable_types.h +arch/x86/include/asm/posix_types.h +arch/x86/include/asm/preempt.h +arch/x86/include/asm/processor-flags.h +arch/x86/include/asm/processor.h +arch/x86/include/asm/proto.h +arch/x86/include/asm/pti.h +arch/x86/include/asm/ptrace.h +arch/x86/include/asm/required-features.h +arch/x86/include/asm/rmwcc.h +arch/x86/include/asm/segment.h +arch/x86/include/asm/set_memory.h +arch/x86/include/asm/shared/msr.h +arch/x86/include/asm/shared/tdx.h +arch/x86/include/asm/shmparam.h +arch/x86/include/asm/signal.h +arch/x86/include/asm/simd.h +arch/x86/include/asm/smap.h +arch/x86/include/asm/smp.h +arch/x86/include/asm/softirq_stack.h +arch/x86/include/asm/sparsemem.h +arch/x86/include/asm/spinlock_types.h +arch/x86/include/asm/stacktrace.h +arch/x86/include/asm/static_call.h +arch/x86/include/asm/string.h +arch/x86/include/asm/string_64.h +arch/x86/include/asm/syscall_wrapper.h +arch/x86/include/asm/tdx.h +arch/x86/include/asm/text-patching.h +arch/x86/include/asm/thread_info.h +arch/x86/include/asm/timex.h +arch/x86/include/asm/tlbbatch.h +arch/x86/include/asm/tlbflush.h +arch/x86/include/asm/topology.h +arch/x86/include/asm/trace_clock.h +arch/x86/include/asm/tsc.h +arch/x86/include/asm/uaccess.h +arch/x86/include/asm/unistd.h +arch/x86/include/asm/unwind_hints.h +arch/x86/include/asm/user.h +arch/x86/include/asm/user32.h +arch/x86/include/asm/user_64.h +arch/x86/include/asm/vdso.h +arch/x86/include/asm/vdso/clocksource.h +arch/x86/include/asm/vdso/processor.h +arch/x86/include/asm/vmalloc.h +arch/x86/include/asm/vmxfeatures.h +arch/x86/include/asm/word-at-a-time.h +arch/x86/include/uapi/asm/auxvec.h +arch/x86/include/uapi/asm/bitsperlong.h +arch/x86/include/uapi/asm/bootparam.h +arch/x86/include/uapi/asm/byteorder.h +arch/x86/include/uapi/asm/hw_breakpoint.h +arch/x86/include/uapi/asm/ist.h +arch/x86/include/uapi/asm/kvm_para.h +arch/x86/include/uapi/asm/ldt.h +arch/x86/include/uapi/asm/msr.h +arch/x86/include/uapi/asm/perf_regs.h +arch/x86/include/uapi/asm/posix_types_64.h +arch/x86/include/uapi/asm/processor-flags.h +arch/x86/include/uapi/asm/ptrace-abi.h +arch/x86/include/uapi/asm/ptrace.h +arch/x86/include/uapi/asm/sembuf.h +arch/x86/include/uapi/asm/shmbuf.h +arch/x86/include/uapi/asm/sigcontext.h +arch/x86/include/uapi/asm/siginfo.h +arch/x86/include/uapi/asm/signal.h +arch/x86/include/uapi/asm/stat.h +arch/x86/include/uapi/asm/swab.h +arch/x86/include/uapi/asm/unistd.h +arch/x86/include/uapi/asm/vsyscall.h crypto/internal.h drivers/net/wireguard/allowedips.h drivers/net/wireguard/cookie.h @@ -15,18 +269,964 @@ drivers/net/wireguard/selftest/ratelimiter.c drivers/net/wireguard/socket.h drivers/net/wireguard/timers.h drivers/net/wireguard/version.h +include/acpi/acbuffer.h +include/acpi/acconfig.h +include/acpi/acexcep.h +include/acpi/acnames.h +include/acpi/acoutput.h +include/acpi/acpi.h +include/acpi/acpi_numa.h +include/acpi/acpiosxf.h +include/acpi/acpixf.h +include/acpi/acrestyp.h +include/acpi/actbl.h +include/acpi/actbl1.h +include/acpi/actbl2.h +include/acpi/actbl3.h +include/acpi/actypes.h +include/acpi/platform/acenv.h +include/acpi/platform/acenvex.h +include/acpi/platform/acgcc.h +include/acpi/platform/acgccex.h +include/acpi/platform/aclinux.h +include/acpi/platform/aclinuxex.h +include/asm-generic/access_ok.h +include/asm-generic/barrier.h +include/asm-generic/bitops/arch_hweight.h +include/asm-generic/bitops/atomic.h +include/asm-generic/bitops/builtin-__ffs.h +include/asm-generic/bitops/builtin-__fls.h +include/asm-generic/bitops/builtin-ffs.h +include/asm-generic/bitops/builtin-fls.h +include/asm-generic/bitops/const_hweight.h +include/asm-generic/bitops/ext2-atomic-setbit.h +include/asm-generic/bitops/ffz.h +include/asm-generic/bitops/fls64.h +include/asm-generic/bitops/generic-non-atomic.h +include/asm-generic/bitops/hweight.h +include/asm-generic/bitops/instrumented-atomic.h +include/asm-generic/bitops/instrumented-lock.h +include/asm-generic/bitops/instrumented-non-atomic.h +include/asm-generic/bitops/le.h +include/asm-generic/bitops/lock.h +include/asm-generic/bitops/non-atomic.h +include/asm-generic/bitops/non-instrumented-non-atomic.h +include/asm-generic/bitops/sched.h +include/asm-generic/bitsperlong.h +include/asm-generic/bug.h +include/asm-generic/cacheflush.h +include/asm-generic/checksum.h +include/asm-generic/compat.h +include/asm-generic/delay.h +include/asm-generic/div64.h +include/asm-generic/early_ioremap.h +include/asm-generic/emergency-restart.h +include/asm-generic/error-injection.h +include/asm-generic/export.h +include/asm-generic/fixmap.h +include/asm-generic/getorder.h +include/asm-generic/hardirq.h +include/asm-generic/hw_irq.h +include/asm-generic/int-ll64.h +include/asm-generic/io.h +include/asm-generic/ioctl.h +include/asm-generic/iomap.h +include/asm-generic/irq.h +include/asm-generic/irq_regs.h +include/asm-generic/kdebug.h +include/asm-generic/kmap_size.h +include/asm-generic/kprobes.h +include/asm-generic/kvm_para.h +include/asm-generic/local.h +include/asm-generic/local64.h +include/asm-generic/mm_hooks.h +include/asm-generic/mmiowb.h +include/asm-generic/mmu_context.h +include/asm-generic/module.h +include/asm-generic/param.h +include/asm-generic/pci_iomap.h +include/asm-generic/percpu.h +include/asm-generic/pgtable-nop4d.h +include/asm-generic/pgtable-nopud.h +include/asm-generic/pgtable_uffd.h +include/asm-generic/qrwlock_types.h +include/asm-generic/qspinlock_types.h +include/asm-generic/resource.h +include/asm-generic/rwonce.h +include/asm-generic/sections.h +include/asm-generic/set_memory.h +include/asm-generic/shmparam.h +include/asm-generic/signal.h +include/asm-generic/softirq_stack.h +include/asm-generic/switch_to.h +include/asm-generic/timex.h +include/asm-generic/topology.h +include/asm-generic/trace_clock.h +include/asm-generic/unaligned.h +include/asm-generic/user.h +include/clocksource/arm_arch_timer.h +include/crypto/aead.h +include/crypto/algapi.h +include/crypto/blake2s.h +include/crypto/chacha.h +include/crypto/chacha20poly1305.h +include/crypto/curve25519.h +include/crypto/hash.h +include/crypto/internal/aead.h +include/crypto/internal/blake2s.h +include/crypto/internal/chacha.h +include/crypto/internal/cipher.h +include/crypto/internal/hash.h +include/crypto/internal/kpp.h +include/crypto/internal/poly1305.h +include/crypto/internal/simd.h +include/crypto/internal/skcipher.h +include/crypto/kpp.h +include/crypto/poly1305.h +include/crypto/scatterwalk.h +include/crypto/sha1.h +include/crypto/skcipher.h +include/linux/acpi.h +include/linux/alarmtimer.h +include/linux/align.h +include/linux/apm_bios.h +include/linux/arch_topology.h +include/linux/arm-smccc.h +include/linux/assoc_array.h +include/linux/atomic.h +include/linux/atomic/atomic-arch-fallback.h +include/linux/atomic/atomic-instrumented.h +include/linux/atomic/atomic-long.h +include/linux/audit.h +include/linux/audit_arch.h +include/linux/auxvec.h +include/linux/backing-dev-defs.h +include/linux/binfmts.h +include/linux/bit_spinlock.h +include/linux/bitfield.h +include/linux/bitmap.h +include/linux/bitops.h +include/linux/bitrev.h +include/linux/bits.h +include/linux/blk_types.h +include/linux/bottom_half.h +include/linux/bpf-cgroup-defs.h +include/linux/bpf-cgroup.h +include/linux/bpf-netns.h +include/linux/bpf.h +include/linux/bpfptr.h +include/linux/btf.h +include/linux/bug.h +include/linux/build_bug.h +include/linux/buildid.h +include/linux/bvec.h +include/linux/byteorder/generic.h +include/linux/byteorder/little_endian.h +include/linux/cache.h +include/linux/cacheflush.h +include/linux/capability.h +include/linux/cc_platform.h +include/linux/cdev.h +include/linux/cgroup-defs.h +include/linux/cgroup.h +include/linux/cgroup_api.h +include/linux/clk-provider.h +include/linux/clk.h +include/linux/clockchips.h +include/linux/clocksource.h +include/linux/clocksource_ids.h +include/linux/compat.h +include/linux/compiler-gcc.h +include/linux/compiler-version.h +include/linux/compiler.h +include/linux/compiler_attributes.h +include/linux/compiler_types.h +include/linux/completion.h +include/linux/const.h +include/linux/container_of.h +include/linux/context_tracking.h +include/linux/context_tracking_irq.h +include/linux/context_tracking_state.h +include/linux/cpu.h +include/linux/cpu_pm.h +include/linux/cpufeature.h +include/linux/cpufreq.h +include/linux/cpuhotplug.h +include/linux/cpumask.h +include/linux/cpumask_api.h +include/linux/cpuset.h +include/linux/crc-ccitt.h +include/linux/crc32.h +include/linux/cred.h +include/linux/crypto.h +include/linux/ctype.h +include/linux/dcache.h +include/linux/dccp.h +include/linux/debug_locks.h +include/linux/debugfs.h +include/linux/debugobjects.h +include/linux/delay.h +include/linux/delayed_call.h +include/linux/dev_printk.h +include/linux/device.h +include/linux/device/bus.h +include/linux/device/class.h +include/linux/device/driver.h +include/linux/dma-direction.h +include/linux/dma-mapping.h +include/linux/dqblk_qtree.h +include/linux/dqblk_v1.h +include/linux/dqblk_v2.h +include/linux/dynamic_queue_limits.h +include/linux/edd.h +include/linux/elf.h +include/linux/energy_model.h +include/linux/err.h +include/linux/errname.h +include/linux/errno.h +include/linux/error-injection.h +include/linux/errqueue.h +include/linux/errseq.h +include/linux/etherdevice.h +include/linux/ethtool.h +include/linux/eventfd.h +include/linux/export.h +include/linux/fault-inject-usercopy.h +include/linux/fault-inject.h +include/linux/fcntl.h +include/linux/file.h +include/linux/filter.h +include/linux/find.h +include/linux/fips.h +include/linux/firmware.h +include/linux/flex_proportions.h +include/linux/freelist.h +include/linux/freezer.h +include/linux/fs.h +include/linux/fs_api.h +include/linux/fs_types.h +include/linux/ftrace.h +include/linux/ftrace_irq.h +include/linux/fwnode.h +include/linux/genetlink.h +include/linux/gfp.h +include/linux/gfp_types.h +include/linux/gpio/consumer.h +include/linux/hardirq.h +include/linux/hash.h +include/linux/hashtable.h +include/linux/hashtable_api.h +include/linux/highmem-internal.h +include/linux/highmem.h +include/linux/highuid.h +include/linux/hrtimer.h +include/linux/hrtimer_api.h +include/linux/hrtimer_defs.h +include/linux/huge_mm.h +include/linux/hugetlb_inline.h +include/linux/icmp.h +include/linux/icmpv6.h +include/linux/idr.h +include/linux/if_arp.h +include/linux/if_ether.h +include/linux/if_hsr.h +include/linux/if_link.h +include/linux/if_pppol2tp.h +include/linux/if_pppox.h +include/linux/if_tunnel.h +include/linux/if_vlan.h +include/linux/igmp.h +include/linux/in.h +include/linux/in6.h +include/linux/indirect_call_wrapper.h +include/linux/inet.h +include/linux/inetdevice.h +include/linux/init.h +include/linux/init_task.h +include/linux/instruction_pointer.h +include/linux/instrumentation.h +include/linux/instrumented.h +include/linux/interrupt.h +include/linux/io.h +include/linux/ioasid.h +include/linux/iocontext.h +include/linux/iopoll.h +include/linux/ioport.h +include/linux/ioprio.h +include/linux/ip.h +include/linux/ipc.h +include/linux/ipv6.h +include/linux/ipv6_route.h +include/linux/irq.h +include/linux/irq_work.h +include/linux/irqchip.h +include/linux/irqdesc.h +include/linux/irqdomain.h +include/linux/irqflags.h +include/linux/irqhandler.h +include/linux/irqnr.h +include/linux/irqreturn.h +include/linux/jhash.h +include/linux/jiffies.h +include/linux/jump_label.h +include/linux/jump_label_ratelimit.h +include/linux/kallsyms.h +include/linux/kasan-checks.h +include/linux/kasan-enabled.h +include/linux/kasan-tags.h +include/linux/kasan.h +include/linux/kconfig.h +include/linux/kcov.h +include/linux/kcsan-checks.h +include/linux/kcsan.h +include/linux/kdebug.h +include/linux/kdev_t.h +include/linux/kern_levels.h +include/linux/kernel.h +include/linux/kernel_read_file.h +include/linux/kernel_stat.h +include/linux/kernfs.h +include/linux/key.h +include/linux/kgdb.h +include/linux/klist.h +include/linux/kmemleak.h +include/linux/kmod.h +include/linux/kmsan-checks.h +include/linux/kmsan.h +include/linux/kmsan_types.h +include/linux/kobject.h +include/linux/kobject_api.h +include/linux/kobject_ns.h +include/linux/kprobes.h +include/linux/kref.h +include/linux/kref_api.h +include/linux/kstrtox.h +include/linux/kthread.h +include/linux/ktime.h +include/linux/ktime_api.h +include/linux/kvm_para.h +include/linux/l2tp.h +include/linux/latencytop.h +include/linux/limits.h +include/linux/linkage.h +include/linux/linkmode.h +include/linux/list.h +include/linux/list_bl.h +include/linux/list_lru.h +include/linux/list_nulls.h +include/linux/livepatch.h +include/linux/llist.h +include/linux/local_lock.h +include/linux/local_lock_internal.h +include/linux/lockdep.h +include/linux/lockdep_api.h +include/linux/lockdep_types.h +include/linux/lockref.h +include/linux/log2.h +include/linux/logic_pio.h +include/linux/maple_tree.h +include/linux/math.h +include/linux/math64.h +include/linux/mdio.h +include/linux/mem_encrypt.h +include/linux/memcontrol.h +include/linux/memory_hotplug.h +include/linux/mempolicy.h +include/linux/memremap.h +include/linux/migrate_mode.h +include/linux/mii.h +include/linux/mii_timestamper.h +include/linux/minmax.h +include/linux/mm.h +include/linux/mm_types.h +include/linux/mm_types_task.h +include/linux/mmap_lock.h +include/linux/mmdebug.h +include/linux/mmu_context.h +include/linux/mmzone.h +include/linux/mnt_idmapping.h +include/linux/mod_devicetable.h +include/linux/module.h +include/linux/moduleparam.h +include/linux/mount.h +include/linux/mpls.h +include/linux/mutex.h +include/linux/mutex_api.h +include/linux/net.h +include/linux/netdev_features.h +include/linux/netdevice.h +include/linux/netfilter.h +include/linux/netfilter/nf_conntrack_common.h +include/linux/netfilter/nf_conntrack_dccp.h +include/linux/netfilter/nf_conntrack_proto_gre.h +include/linux/netfilter/nf_conntrack_sctp.h +include/linux/netfilter/nf_conntrack_tcp.h +include/linux/netfilter/x_tables.h +include/linux/netfilter_defs.h +include/linux/netfilter_ipv4.h +include/linux/netlink.h +include/linux/nfs_fs_i.h +include/linux/nmi.h +include/linux/node.h +include/linux/nodemask.h +include/linux/nospec.h +include/linux/notifier.h +include/linux/ns_common.h +include/linux/nsproxy.h +include/linux/numa.h +include/linux/nvmem-provider.h +include/linux/objtool.h +include/linux/of.h +include/linux/of_address.h +include/linux/of_clk.h +include/linux/of_device.h +include/linux/of_fdt.h +include/linux/of_irq.h +include/linux/of_platform.h +include/linux/once.h +include/linux/once_lite.h +include/linux/osq_lock.h +include/linux/overflow.h +include/linux/page-flags-layout.h +include/linux/page-flags.h +include/linux/page_counter.h +include/linux/page_ext.h +include/linux/page_ref.h +include/linux/pageblock-flags.h +include/linux/pagemap.h +include/linux/panic.h +include/linux/path.h +include/linux/percpu-defs.h +include/linux/percpu-refcount.h +include/linux/percpu-rwsem.h +include/linux/percpu.h +include/linux/percpu_counter.h +include/linux/perf_event.h +include/linux/perf_regs.h +include/linux/personality.h +include/linux/pfn.h +include/linux/phy.h +include/linux/phylink.h +include/linux/pid.h +include/linux/pid_namespace.h +include/linux/pipe_fs_i.h +include/linux/pkeys.h +include/linux/platform_data/dsa.h +include/linux/platform_device.h +include/linux/plist.h +include/linux/pm.h +include/linux/pm_opp.h +include/linux/pm_qos.h +include/linux/pm_runtime.h +include/linux/pm_wakeup.h +include/linux/poison.h +include/linux/poll.h +include/linux/posix-timers.h +include/linux/ppp_channel.h +include/linux/ppp_defs.h +include/linux/prandom.h +include/linux/preempt.h +include/linux/prefetch.h +include/linux/printk.h +include/linux/proc_fs.h +include/linux/profile.h +include/linux/projid.h +include/linux/property.h +include/linux/psi.h +include/linux/psi_types.h +include/linux/ptp_classify.h +include/linux/ptr_ring.h +include/linux/ptrace.h +include/linux/ptrace_api.h +include/linux/pvclock_gtod.h +include/linux/quota.h +include/linux/radix-tree.h +include/linux/random.h +include/linux/range.h +include/linux/ratelimit.h +include/linux/ratelimit_types.h +include/linux/rbtree.h +include/linux/rbtree_latch.h +include/linux/rbtree_types.h +include/linux/rcu_node_tree.h +include/linux/rcu_segcblist.h +include/linux/rcu_sync.h +include/linux/rculist.h +include/linux/rculist_bl.h +include/linux/rculist_nulls.h +include/linux/rcupdate.h +include/linux/rcupdate_trace.h +include/linux/rcutree.h +include/linux/rcuwait.h +include/linux/reboot.h +include/linux/ref_tracker.h +include/linux/refcount.h +include/linux/resource.h +include/linux/resource_ext.h +include/linux/restart_block.h +include/linux/rethook.h +include/linux/rhashtable-types.h +include/linux/ring_buffer.h +include/linux/rmap.h +include/linux/rtc.h +include/linux/rtmutex.h +include/linux/rtnetlink.h +include/linux/rv.h +include/linux/rwlock.h +include/linux/rwlock_api_smp.h +include/linux/rwlock_types.h +include/linux/rwsem.h +include/linux/scatterlist.h +include/linux/sched.h +include/linux/sched/affinity.h +include/linux/sched/autogroup.h +include/linux/sched/clock.h +include/linux/sched/coredump.h +include/linux/sched/cpufreq.h +include/linux/sched/cputime.h +include/linux/sched/deadline.h +include/linux/sched/debug.h +include/linux/sched/hotplug.h +include/linux/sched/idle.h +include/linux/sched/isolation.h +include/linux/sched/jobctl.h +include/linux/sched/loadavg.h +include/linux/sched/mm.h +include/linux/sched/nohz.h +include/linux/sched/numa_balancing.h +include/linux/sched/prio.h +include/linux/sched/rseq_api.h +include/linux/sched/rt.h +include/linux/sched/sd_flags.h +include/linux/sched/signal.h +include/linux/sched/smt.h +include/linux/sched/stat.h +include/linux/sched/sysctl.h +include/linux/sched/task.h +include/linux/sched/task_flags.h +include/linux/sched/task_stack.h +include/linux/sched/topology.h +include/linux/sched/types.h +include/linux/sched/user.h +include/linux/sched/wake_q.h +include/linux/sched_clock.h +include/linux/screen_info.h +include/linux/sctp.h +include/linux/seccomp.h +include/linux/securebits.h +include/linux/security.h +include/linux/sem.h +include/linux/semaphore.h +include/linux/seq_buf.h +include/linux/seq_file.h +include/linux/seq_file_net.h +include/linux/seqlock.h +include/linux/set_memory.h +include/linux/shm.h +include/linux/shrinker.h +include/linux/signal.h +include/linux/signal_types.h +include/linux/siphash.h +include/linux/sizes.h +include/linux/skb_array.h +include/linux/skbuff.h +include/linux/slab.h +include/linux/smp.h +include/linux/smp_types.h +include/linux/smpboot.h +include/linux/socket.h +include/linux/sockptr.h +include/linux/softirq.h +include/linux/spinlock.h +include/linux/spinlock_api.h +include/linux/spinlock_api_smp.h +include/linux/spinlock_types.h +include/linux/spinlock_types_raw.h +include/linux/splice.h +include/linux/srcu.h +include/linux/srcutree.h +include/linux/stackdepot.h +include/linux/stacktrace.h +include/linux/stat.h +include/linux/static_call.h +include/linux/static_call_types.h +include/linux/static_key.h +include/linux/stdarg.h +include/linux/stddef.h +include/linux/stop_machine.h +include/linux/string.h +include/linux/string_helpers.h +include/linux/stringhash.h +include/linux/stringify.h +include/linux/suspend.h +include/linux/swab.h +include/linux/swait.h +include/linux/swait_api.h +include/linux/swap.h +include/linux/sync_core.h +include/linux/syscall_user_dispatch.h +include/linux/syscalls.h +include/linux/syscalls_api.h +include/linux/syscore_ops.h +include/linux/sysctl.h +include/linux/sysfs.h +include/linux/task_io_accounting.h +include/linux/tcp.h +include/linux/textsearch.h +include/linux/thread_info.h +include/linux/threads.h +include/linux/tick.h +include/linux/time.h +include/linux/time32.h +include/linux/time64.h +include/linux/timecounter.h +include/linux/timekeeper_internal.h +include/linux/timekeeping.h +include/linux/timer.h +include/linux/timerqueue.h +include/linux/timex.h +include/linux/topology.h +include/linux/trace_clock.h +include/linux/trace_events.h +include/linux/trace_recursion.h +include/linux/trace_seq.h +include/linux/tracepoint-defs.h +include/linux/tracepoint.h +include/linux/typecheck.h +include/linux/types.h +include/linux/u64_stats_sync.h +include/linux/u64_stats_sync_api.h +include/linux/uaccess.h +include/linux/udp.h +include/linux/uidgid.h +include/linux/uio.h +include/linux/umh.h +include/linux/unaligned/packed_struct.h +include/linux/uprobes.h +include/linux/user_namespace.h +include/linux/utsname.h +include/linux/uuid.h +include/linux/vm_event_item.h +include/linux/vmalloc.h +include/linux/vmpressure.h +include/linux/vmstat.h +include/linux/vtime.h +include/linux/wait.h +include/linux/wait_api.h +include/linux/wait_bit.h +include/linux/win_minmax.h +include/linux/workqueue.h +include/linux/workqueue_api.h +include/linux/writeback.h +include/linux/ww_mutex.h +include/linux/xarray.h +include/net/addrconf.h +include/net/arp.h +include/net/checksum.h +include/net/devlink.h +include/net/dropreason.h +include/net/dsa.h +include/net/dsfield.h +include/net/dst.h +include/net/dst_cache.h +include/net/dst_metadata.h +include/net/dst_ops.h +include/net/fib_notifier.h +include/net/fib_rules.h +include/net/flow.h +include/net/flow_dissector.h +include/net/flow_offload.h +include/net/gen_stats.h +include/net/genetlink.h +include/net/gre.h +include/net/gro_cells.h +include/net/icmp.h +include/net/if_inet6.h +include/net/inet_connection_sock.h +include/net/inet_dscp.h +include/net/inet_ecn.h +include/net/inet_frag.h +include/net/inet_hashtables.h +include/net/inet_sock.h +include/net/inet_timewait_sock.h +include/net/inetpeer.h +include/net/ip.h +include/net/ip6_checksum.h +include/net/ip6_fib.h +include/net/ip6_route.h +include/net/ip_fib.h +include/net/ip_tunnels.h +include/net/ipv6.h +include/net/ipv6_stubs.h +include/net/l3mdev.h +include/net/lwtunnel.h +include/net/macsec.h +include/net/mctp.h +include/net/mpls.h +include/net/mptcp.h +include/net/ndisc.h +include/net/neighbour.h +include/net/net_debug.h +include/net/net_namespace.h +include/net/net_trackers.h +include/net/netfilter/ipv4/nf_conntrack_ipv4.h +include/net/netfilter/ipv6/nf_conntrack_ipv6.h +include/net/netfilter/nf_conntrack.h +include/net/netfilter/nf_conntrack_tuple.h +include/net/netlink.h +include/net/netns/bpf.h +include/net/netns/can.h +include/net/netns/core.h +include/net/netns/generic.h +include/net/netns/hash.h +include/net/netns/ieee802154_6lowpan.h +include/net/netns/ipv4.h +include/net/netns/ipv6.h +include/net/netns/mctp.h +include/net/netns/mib.h +include/net/netns/mpls.h +include/net/netns/netfilter.h +include/net/netns/nexthop.h +include/net/netns/nftables.h +include/net/netns/packet.h +include/net/netns/sctp.h +include/net/netns/smc.h +include/net/netns/unix.h +include/net/netns/xdp.h +include/net/netns/xfrm.h +include/net/netprio_cgroup.h +include/net/nexthop.h +include/net/page_pool.h +include/net/pptp.h +include/net/protocol.h +include/net/request_sock.h +include/net/route.h +include/net/rtnetlink.h +include/net/sch_generic.h +include/net/scm.h +include/net/snmp.h +include/net/sock.h +include/net/sock_reuseport.h +include/net/switchdev.h +include/net/tcp.h +include/net/tcp_states.h +include/net/timewait_sock.h +include/net/tipc.h +include/net/udp.h +include/net/udp_tunnel.h +include/net/xdp.h +include/net/xfrm.h +include/scsi/fc/fc_fcoe.h +include/trace/define_trace.h +include/trace/events/irq.h +include/trace/events/lock.h +include/trace/events/power.h +include/trace/events/sched.h +include/trace/events/skb.h +include/trace/events/timer.h +include/trace/events/tlb.h +include/trace/events/workqueue.h +include/trace/syscall.h +include/uapi/asm-generic/bitsperlong.h +include/uapi/asm-generic/bpf_perf_event.h +include/uapi/asm-generic/errno-base.h +include/uapi/asm-generic/errno.h +include/uapi/asm-generic/fcntl.h +include/uapi/asm-generic/hugetlb_encode.h +include/uapi/asm-generic/int-ll64.h +include/uapi/asm-generic/ioctl.h +include/uapi/asm-generic/ipcbuf.h +include/uapi/asm-generic/kvm_para.h +include/uapi/asm-generic/param.h +include/uapi/asm-generic/poll.h +include/uapi/asm-generic/posix_types.h +include/uapi/asm-generic/resource.h +include/uapi/asm-generic/sembuf.h +include/uapi/asm-generic/shmbuf.h +include/uapi/asm-generic/siginfo.h +include/uapi/asm-generic/signal-defs.h +include/uapi/asm-generic/signal.h +include/uapi/asm-generic/socket.h +include/uapi/asm-generic/sockios.h +include/uapi/asm-generic/stat.h +include/uapi/asm-generic/swab.h +include/uapi/asm-generic/types.h +include/uapi/asm-generic/unistd.h +include/uapi/linux/aio_abi.h +include/uapi/linux/apm_bios.h +include/uapi/linux/audit.h +include/uapi/linux/auxvec.h +include/uapi/linux/batadv_packet.h +include/uapi/linux/binfmts.h +include/uapi/linux/bpf.h +include/uapi/linux/bpf_common.h +include/uapi/linux/bpf_perf_event.h +include/uapi/linux/btf.h +include/uapi/linux/byteorder/little_endian.h +include/uapi/linux/capability.h +include/uapi/linux/cgroupstats.h +include/uapi/linux/const.h +include/uapi/linux/cryptouser.h +include/uapi/linux/dccp.h +include/uapi/linux/devlink.h +include/uapi/linux/dqblk_xfs.h +include/uapi/linux/edd.h +include/uapi/linux/elf-em.h +include/uapi/linux/elf.h +include/uapi/linux/errno.h +include/uapi/linux/errqueue.h +include/uapi/linux/ethtool.h +include/uapi/linux/eventpoll.h +include/uapi/linux/fcntl.h +include/uapi/linux/fib_rules.h +include/uapi/linux/filter.h +include/uapi/linux/fs.h +include/uapi/linux/gen_stats.h +include/uapi/linux/genetlink.h +include/uapi/linux/hdlc/ioctl.h +include/uapi/linux/icmp.h +include/uapi/linux/icmpv6.h +include/uapi/linux/if.h +include/uapi/linux/if_addr.h +include/uapi/linux/if_arp.h +include/uapi/linux/if_bonding.h +include/uapi/linux/if_ether.h +include/uapi/linux/if_link.h +include/uapi/linux/if_macsec.h +include/uapi/linux/if_packet.h +include/uapi/linux/if_pppol2tp.h +include/uapi/linux/if_pppox.h +include/uapi/linux/if_tunnel.h +include/uapi/linux/if_vlan.h +include/uapi/linux/igmp.h +include/uapi/linux/in.h +include/uapi/linux/in6.h +include/uapi/linux/in_route.h +include/uapi/linux/ioctl.h +include/uapi/linux/ioprio.h +include/uapi/linux/ip.h +include/uapi/linux/ipc.h +include/uapi/linux/ipsec.h +include/uapi/linux/ipv6.h +include/uapi/linux/ipv6_route.h +include/uapi/linux/irqnr.h +include/uapi/linux/kcov.h +include/uapi/linux/kdev_t.h +include/uapi/linux/kernel.h +include/uapi/linux/kvm_para.h +include/uapi/linux/l2tp.h +include/uapi/linux/libc-compat.h +include/uapi/linux/limits.h +include/uapi/linux/lwtunnel.h +include/uapi/linux/magic.h +include/uapi/linux/mctp.h +include/uapi/linux/mdio.h +include/uapi/linux/membarrier.h +include/uapi/linux/mempolicy.h +include/uapi/linux/mii.h +include/uapi/linux/mpls.h +include/uapi/linux/neighbour.h +include/uapi/linux/net.h +include/uapi/linux/net_tstamp.h +include/uapi/linux/netdevice.h +include/uapi/linux/netfilter.h +include/uapi/linux/netfilter/nf_conntrack_common.h +include/uapi/linux/netfilter/nf_conntrack_sctp.h +include/uapi/linux/netfilter/nf_conntrack_tcp.h +include/uapi/linux/netfilter/nf_conntrack_tuple_common.h +include/uapi/linux/netfilter/nf_tables.h +include/uapi/linux/netfilter/x_tables.h +include/uapi/linux/netfilter_ipv4.h +include/uapi/linux/netlink.h +include/uapi/linux/openat2.h +include/uapi/linux/param.h +include/uapi/linux/perf_event.h +include/uapi/linux/personality.h +include/uapi/linux/pfkeyv2.h +include/uapi/linux/pkt_cls.h +include/uapi/linux/pkt_sched.h +include/uapi/linux/poll.h +include/uapi/linux/posix_types.h +include/uapi/linux/ppp_defs.h +include/uapi/linux/prctl.h +include/uapi/linux/ptrace.h +include/uapi/linux/quota.h +include/uapi/linux/random.h +include/uapi/linux/reboot.h +include/uapi/linux/resource.h +include/uapi/linux/route.h +include/uapi/linux/rseq.h +include/uapi/linux/rtc.h +include/uapi/linux/rtnetlink.h +include/uapi/linux/sched.h +include/uapi/linux/sched/types.h +include/uapi/linux/screen_info.h +include/uapi/linux/sctp.h +include/uapi/linux/seccomp.h +include/uapi/linux/securebits.h +include/uapi/linux/sem.h +include/uapi/linux/shm.h +include/uapi/linux/signal.h +include/uapi/linux/snmp.h +include/uapi/linux/socket.h +include/uapi/linux/sockios.h +include/uapi/linux/stat.h +include/uapi/linux/stddef.h +include/uapi/linux/string.h +include/uapi/linux/swab.h +include/uapi/linux/sysctl.h +include/uapi/linux/sysinfo.h +include/uapi/linux/taskstats.h +include/uapi/linux/tcp.h +include/uapi/linux/time.h +include/uapi/linux/time_types.h +include/uapi/linux/timex.h +include/uapi/linux/types.h +include/uapi/linux/udp.h +include/uapi/linux/uio.h +include/uapi/linux/unistd.h +include/uapi/linux/utsname.h +include/uapi/linux/uuid.h +include/uapi/linux/wait.h +include/uapi/linux/wireguard.h +include/uapi/linux/xfrm.h +include/uapi/video/edid.h +include/vdso/bits.h +include/vdso/clocksource.h +include/vdso/const.h +include/vdso/jiffies.h +include/vdso/ktime.h +include/vdso/limits.h +include/vdso/math64.h +include/vdso/processor.h +include/vdso/time.h +include/vdso/time32.h +include/vdso/time64.h +include/video/edid.h kernel/irq/debug.h kernel/irq/internals.h kernel/irq/settings.h kernel/locking/lock_events.h kernel/locking/lock_events_list.h kernel/locking/mutex.h +kernel/locking/ww_mutex.h kernel/sched/autogroup.h +kernel/sched/clock.c +kernel/sched/completion.c kernel/sched/cpudeadline.h +kernel/sched/cpupri.c kernel/sched/cpupri.h kernel/sched/features.h +kernel/sched/isolation.c +kernel/sched/loadavg.c +kernel/sched/sched-pelt.h kernel/sched/sched.h kernel/sched/stats.h +kernel/sched/stop_task.c +kernel/sched/swait.c +kernel/sched/topology.c +kernel/sched/wait.c +kernel/sched/wait_bit.c kernel/smpboot.h kernel/time/ntp_internal.h kernel/time/tick-internal.h @@ -37,4 +1237,5 @@ kernel/workqueue_internal.h lib/kstrtox.h mm/internal.h mm/slab.h -net/core/datagram.h +net/core/dev.h +net/core/sock_destructor.h diff --git a/repos/dde_linux/src/app/wireguard/dummies.c b/repos/dde_linux/src/app/wireguard/dummies.c index 2817603062..c2b5d2a24b 100644 --- a/repos/dde_linux/src/app/wireguard/dummies.c +++ b/repos/dde_linux/src/app/wireguard/dummies.c @@ -136,3 +136,25 @@ __wsum csum_partial(const void * buff,int len,__wsum sum) { lx_emul_trace_and_stop(__func__); } + + +#include + +DEFINE_STATIC_KEY_FALSE(force_irqthreads_key); + + +#include + +void __init net_ns_init(void) +{ + lx_emul_trace(__func__); +} + + +#ifdef CONFIG_ARM64 +extern void flush_dcache_page(struct page * page); +void flush_dcache_page(struct page * page) +{ + lx_emul_trace(__func__); +} +#endif diff --git a/repos/dde_linux/src/app/wireguard/lx_emul.c b/repos/dde_linux/src/app/wireguard/lx_emul.c index c079d36fe3..8173e5804e 100644 --- a/repos/dde_linux/src/app/wireguard/lx_emul.c +++ b/repos/dde_linux/src/app/wireguard/lx_emul.c @@ -45,6 +45,20 @@ u32 prandom_u32(void) } +u32 __get_random_u32_below(u32 ceil) +{ + return lx_emul_random_gen_u32(); +} + + +u8 get_random_u8(void) +{ + u8 ret; + lx_emul_random_gen_bytes(&ret, sizeof(ret)); + return ret; +} + + #include void * kvmalloc_node(size_t size,gfp_t flags,int node) @@ -210,14 +224,6 @@ __be16 ip_tunnel_parse_protocol(const struct sk_buff *skb) } -#include - -bool rng_is_initialized(void) -{ - return true; -} - - #include __be32 inet_confirm_addr(struct net * net,struct in_device * in_dev,__be32 dst,__be32 local,int scope) @@ -279,7 +285,8 @@ gro_result_t napi_gro_receive(struct napi_struct * napi,struct sk_buff * skb) #include -void netif_napi_add(struct net_device * dev,struct napi_struct * napi,int (* poll)(struct napi_struct *,int),int weight) +void netif_napi_add_weight(struct net_device *dev, struct napi_struct *napi, + int (*poll)(struct napi_struct *, int), int weight) { napi->dev = dev; napi->poll = poll; diff --git a/repos/dde_linux/src/app/wireguard/lx_emul/shadow/arch/arm64/kernel/cpufeature.c b/repos/dde_linux/src/app/wireguard/lx_emul/shadow/arch/arm64/kernel/cpufeature.c index efd26487a8..b4d3702f11 100644 --- a/repos/dde_linux/src/app/wireguard/lx_emul/shadow/arch/arm64/kernel/cpufeature.c +++ b/repos/dde_linux/src/app/wireguard/lx_emul/shadow/arch/arm64/kernel/cpufeature.c @@ -13,6 +13,7 @@ #include #include +#include /* * Flag to indicate if we have computed the system wide diff --git a/repos/dde_linux/src/app/wireguard/spec/arm_64/generated_dummies.c b/repos/dde_linux/src/app/wireguard/spec/arm_64/generated_dummies.c index e2d5a65703..5922fea9c0 100644 --- a/repos/dde_linux/src/app/wireguard/spec/arm_64/generated_dummies.c +++ b/repos/dde_linux/src/app/wireguard/spec/arm_64/generated_dummies.c @@ -1,7 +1,7 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2022-07-21 + * \date 2023-03-28 */ #include @@ -31,6 +31,19 @@ const char * __clk_get_name(const struct clk * clk) } +#include + +struct cpumask __cpu_active_mask; + + +#include + +void __folio_put(struct folio * folio) +{ + lx_emul_trace_and_stop(__func__); +} + + #include unsigned long __get_free_pages(gfp_t gfp_mask,unsigned int order) @@ -49,7 +62,7 @@ int __ipv6_addr_type(const struct in6_addr * addr) #include -struct irq_domain * __irq_domain_add(struct fwnode_handle * fwnode,int size,irq_hw_number_t hwirq_max,int direct_max,const struct irq_domain_ops * ops,void * host_data) +struct irq_domain * __irq_domain_add(struct fwnode_handle * fwnode,unsigned int size,irq_hw_number_t hwirq_max,int direct_max,const struct irq_domain_ops * ops,void * host_data) { lx_emul_trace_and_stop(__func__); } @@ -68,9 +81,17 @@ struct irq_desc * __irq_resolve_mapping(struct irq_domain * domain,irq_hw_number unsigned long __per_cpu_offset[NR_CPUS] = {}; -#include +#include -void __put_page(struct page * page) +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -92,6 +113,14 @@ struct sk_buff * __skb_gso_segment(struct sk_buff * skb,netdev_features_t featur } +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + #include atomic_long_t _totalram_pages; @@ -105,6 +134,38 @@ int crypto_register_shash(struct shash_alg * alg) } +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void ct_irq_enter_irqson(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void ct_irq_exit_irqson(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include struct net_device * dev_get_by_index(struct net * net,int ifindex) @@ -121,6 +182,14 @@ void dev_get_tstats64(struct net_device * dev,struct rtnl_link_stats64 * s) } +#include + +void do_softirq_own_stack(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include asmlinkage __visible void dump_stack(void) @@ -129,18 +198,14 @@ asmlinkage __visible void dump_stack(void) } -extern void flush_dcache_page(struct page * page); -void flush_dcache_page(struct page * page) +#include + +void finish_rcuwait(struct rcuwait * w) { lx_emul_trace_and_stop(__func__); } -#include - -bool force_irqthreads; - - #include void free_netdev(struct net_device * dev) @@ -157,14 +222,6 @@ void free_pages(unsigned long addr,unsigned int order) } -#include - -void free_uid(struct user_struct * up) -{ - lx_emul_trace_and_stop(__func__); -} - - #include unsigned int fwnode_count_parents(const struct fwnode_handle * fwnode) @@ -262,6 +319,14 @@ const struct in6_addr in6addr_any; struct net init_net; +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -325,7 +390,7 @@ void irq_domain_free_irqs_common(struct irq_domain * domain,unsigned int virq,un #include -void irq_domain_set_info(struct irq_domain * domain,unsigned int virq,irq_hw_number_t hwirq,struct irq_chip * chip,void * chip_data,irq_flow_handler_t handler,void * handler_data,const char * handler_name) +void irq_domain_set_info(struct irq_domain * domain,unsigned int virq,irq_hw_number_t hwirq,const struct irq_chip * chip,void * chip_data,irq_flow_handler_t handler,void * handler_data,const char * handler_name) { lx_emul_trace_and_stop(__func__); } @@ -378,7 +443,15 @@ unsigned long volatile __cacheline_aligned_in_smp __jiffy_arch_data jiffies; #include -int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t size,void ** p) +int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t nr,void ** p) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) { lx_emul_trace_and_stop(__func__); } @@ -394,7 +467,23 @@ void kmem_cache_destroy(struct kmem_cache * s) #include -int kstrtoll(const char * s,unsigned int base,long long * res) +noinline int kstrtoint(const char * s,unsigned int base,int * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinline int kstrtoll(const char * s,unsigned int base,long long * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +char * kvasprintf(gfp_t gfp,const char * fmt,va_list ap) { lx_emul_trace_and_stop(__func__); } @@ -490,30 +579,6 @@ void percpu_counter_add_batch(struct percpu_counter * fbc,s64 amount,s32 batch) } -#include - -int printk_deferred(const char * fmt,...) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void rcu_irq_enter_irqson(void) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void rcu_irq_exit_irqson(void) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void rtnl_link_unregister(struct rtnl_link_ops * ops) @@ -530,22 +595,6 @@ void sk_clear_memalloc(struct sock * sk) } -#include - -void sk_error_report(struct sock * sk) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void sk_free(struct sock * sk) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int skb_checksum_help(struct sk_buff * skb) @@ -562,6 +611,14 @@ void skb_set_owner_w(struct sk_buff * skb,struct sock * sk) } +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void sock_edemux(struct sk_buff * skb) diff --git a/repos/dde_linux/src/app/wireguard/spec/arm_64/source.list b/repos/dde_linux/src/app/wireguard/spec/arm_64/source.list index a0026aa395..748736d689 100644 --- a/repos/dde_linux/src/app/wireguard/spec/arm_64/source.list +++ b/repos/dde_linux/src/app/wireguard/spec/arm_64/source.list @@ -5,11 +5,11 @@ arch/arm64/kernel/entry-fpsimd.S arch/arm64/kernel/fpsimd.c arch/arm64/lib/memchr.S arch/arm64/lib/memcmp.S +arch/arm64/lib/strchr.S arch/arm64/lib/strcmp.S arch/arm64/lib/strlen.S crypto/algapi.c crypto/api.c -crypto/memneq.c crypto/scatterwalk.c crypto/skcipher.c drivers/net/wireguard/allowedips.c @@ -30,11 +30,7 @@ kernel/kthread.c kernel/locking/mutex.c kernel/locking/rwsem.c kernel/notifier.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -62,6 +58,8 @@ lib/crypto/chacha20poly1305.c lib/crypto/curve25519-generic.c lib/crypto/curve25519-hacl64.c lib/crypto/libchacha.c +lib/crypto/memneq.c +lib/crypto/utils.c lib/ctype.c lib/find_bit.c lib/hweight.c diff --git a/repos/dde_linux/src/app/wireguard/spec/x86_64/generated_dummies.c b/repos/dde_linux/src/app/wireguard/spec/x86_64/generated_dummies.c index 2a0abfff90..4587562d15 100644 --- a/repos/dde_linux/src/app/wireguard/spec/x86_64/generated_dummies.c +++ b/repos/dde_linux/src/app/wireguard/spec/x86_64/generated_dummies.c @@ -1,7 +1,7 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2022-07-19 + * \date 2023-03-27 */ #include @@ -23,9 +23,14 @@ struct page * __alloc_pages(gfp_t gfp,unsigned int order,int preferred_nid,nodem } -#include +#include -const char * __clk_get_name(const struct clk * clk) +struct cpumask __cpu_active_mask; + + +#include + +void __folio_put(struct folio * folio) { lx_emul_trace_and_stop(__func__); } @@ -39,9 +44,17 @@ int __ipv6_addr_type(const struct in6_addr * addr) } -#include +#include -void __put_page(struct page * page) +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -71,15 +84,38 @@ unsigned long _copy_to_user(void __user * to,const void * from,unsigned long n) } -extern const char * _parse_integer_fixup_radix(const char * s,unsigned int * base); -const char * _parse_integer_fixup_radix(const char * s,unsigned int * base) +extern noinline unsigned int _parse_integer(const char * s,unsigned int base,unsigned long long * p); +noinline unsigned int _parse_integer(const char * s,unsigned int base,unsigned long long * p) { lx_emul_trace_and_stop(__func__); } -extern unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars); -unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars) +extern noinline const char * _parse_integer_fixup_radix(const char * s,unsigned int * base); +noinline const char * _parse_integer_fixup_radix(const char * s,unsigned int * base) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern noinline unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars); +noinline unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinline int __lockfunc _raw_spin_trylock_bh(raw_spinlock_t * lock) { lx_emul_trace_and_stop(__func__); } @@ -97,6 +133,22 @@ void ack_bad_irq(unsigned int irq) } +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include struct net_device * dev_get_by_index(struct net * net,int ifindex) @@ -121,22 +173,17 @@ asmlinkage __visible void dump_stack(void) } -#include +#include -bool force_irqthreads; - - -#include - -void free_netdev(struct net_device * dev) +void finish_rcuwait(struct rcuwait * w) { lx_emul_trace_and_stop(__func__); } -#include +#include -void free_uid(struct user_struct * up) +void free_netdev(struct net_device * dev) { lx_emul_trace_and_stop(__func__); } @@ -231,6 +278,14 @@ const struct in6_addr in6addr_any; struct net init_net; +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -328,7 +383,15 @@ void kernel_fpu_end(void) #include -int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t size,void ** p) +int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t nr,void ** p) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) { lx_emul_trace_and_stop(__func__); } @@ -344,7 +407,23 @@ void kmem_cache_destroy(struct kmem_cache * s) #include -int kstrtoll(const char * s,unsigned int base,long long * res) +noinline int kstrtoint(const char * s,unsigned int base,int * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinline int kstrtoll(const char * s,unsigned int base,long long * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +char * kvasprintf(gfp_t gfp,const char * fmt,va_list ap) { lx_emul_trace_and_stop(__func__); } @@ -390,14 +469,6 @@ void percpu_counter_add_batch(struct percpu_counter * fbc,s64 amount,s32 batch) } -#include - -int printk_deferred(const char * fmt,...) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void rtnl_link_unregister(struct rtnl_link_ops * ops) @@ -414,22 +485,6 @@ void sk_clear_memalloc(struct sock * sk) } -#include - -void sk_error_report(struct sock * sk) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void sk_free(struct sock * sk) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int skb_checksum_help(struct sk_buff * skb) @@ -446,6 +501,22 @@ void skb_set_owner_w(struct sk_buff * skb,struct sock * sk) } +#include + +char * skip_spaces(const char * str) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) diff --git a/repos/dde_linux/src/app/wireguard/spec/x86_64/source.list b/repos/dde_linux/src/app/wireguard/spec/x86_64/source.list index 92af60630a..87050eb743 100644 --- a/repos/dde_linux/src/app/wireguard/spec/x86_64/source.list +++ b/repos/dde_linux/src/app/wireguard/spec/x86_64/source.list @@ -9,7 +9,7 @@ arch/x86/crypto/poly1305-x86_64-cryptogams.pl arch/x86/crypto/poly1305_glue.c arch/x86/lib/hweight.S crypto/algapi.c -crypto/memneq.c +crypto/api.c crypto/scatterwalk.c drivers/net/wireguard/allowedips.c drivers/net/wireguard/cookie.c @@ -30,11 +30,7 @@ kernel/locking/mutex.c kernel/locking/osq_lock.c kernel/locking/rwsem.c kernel/notifier.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -61,6 +57,8 @@ lib/crypto/chacha20poly1305.c lib/crypto/curve25519-generic.c lib/crypto/curve25519-hacl64.c lib/crypto/libchacha.c +lib/crypto/memneq.c +lib/crypto/utils.c lib/ctype.c lib/find_bit.c lib/idr.c diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm/include/asm/pgtable.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm/include/asm/pgtable.h index 948564fc44..df5037e1e2 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm/include/asm/pgtable.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm/include/asm/pgtable.h @@ -45,6 +45,9 @@ int pte_write(pte_t ptr); #define PAGE_KERNEL 0UL +#define VMALLOC_START 0UL +#define VMALLOC_END 0xffffffffUL + #endif /* !__ASSEMBLY__ */ #endif /* __ASM_PGTABLE_H */ diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/memory.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/memory.h index 5d5aadde9a..c54daef15f 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/memory.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/memory.h @@ -74,4 +74,6 @@ static inline struct page *virt_to_page(void const *v) { return lx_emul_virt_to_ */ #define __pfn_to_phys(pfn) PFN_PHYS(pfn) +#define __phys_to_virt(x) ( lx_emul_trace_and_stop("__phys_to_virt"), 0UL ) + #endif /* __ASM_MEMORY_H */ diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/page.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/page.h index 4108ac02d2..216c7b2b2b 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/page.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/page.h @@ -35,8 +35,14 @@ struct page; typedef struct page *pgtable_t; +#include + +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,15,0) /* needed by mm/internal.h */ #define pfn_valid(pfn) (pfn != 0UL) +#endif + +static inline int pfn_is_map_memory(unsigned long pfn) { return 1; } #define virt_addr_valid(kaddr) (kaddr != 0UL) diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/pgtable.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/pgtable.h index b90712e359..20c6613ffb 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/pgtable.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/arm64/include/asm/pgtable.h @@ -52,6 +52,7 @@ int pte_write(pte_t ptr); extern pgd_t reserved_pg_dir[PTRS_PER_PGD]; extern pgd_t swapper_pg_dir[PTRS_PER_PGD]; +extern pgd_t idmap_pg_dir[PTRS_PER_PGD]; #define __pte_to_swp_entry(pte) ((swp_entry_t) { pte_val(pte) }) swp_entry_t __pmd_to_swp_entry(pmd_t pmd); @@ -74,12 +75,15 @@ int pud_trans_huge(pud_t pud); pgprot_t pgprot_noncached(pgprot_t prot); pgprot_t pgprot_writecombine(pgprot_t prot); +pgprot_t pgprot_tagged(pgprot_t prot); pte_t mk_pte(struct page * page, pgprot_t prot); #define HPAGE_SHIFT PMD_SHIFT #define HUGETLB_PAGE_ORDER (HPAGE_SHIFT - PAGE_SHIFT) +static inline bool pud_sect_supported(void) { return 1; } + #endif /* __ASSEMBLY__ */ #endif /* __ASM_PGTABLE_H */ diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/cpufeature.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/cpufeature.h index a9accc8131..cd73cfc6fe 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/cpufeature.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/cpufeature.h @@ -7,13 +7,14 @@ #ifndef _ASM__CPUFEATURE_H_ #define _ASM__CPUFEATURE_H_ -#include +#include_next #if defined(__KERNEL__) && !defined(__ASSEMBLY__) -#include -#include -#include +#undef boot_cpu_has +#undef static_cpu_has +#undef static_cpu_has_bug +#undef cpu_has #define boot_cpu_has(bit) 0 #define static_cpu_has(bit) boot_cpu_has(bit) diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/pgtable.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/pgtable.h index 08608cb80d..8b344d2672 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/pgtable.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/pgtable.h @@ -27,6 +27,17 @@ #ifndef pgprot_noncached #define pgprot_noncached(prot) (prot) + +static inline unsigned long pte_pfn(pte_t pte) +{ + lx_emul_trace_and_stop(__func__); +} + +static inline unsigned long pmd_pfn(pmd_t pmd) +{ + lx_emul_trace_and_stop(__func__); +} + #endif static inline pte_t pte_mkwrite(pte_t pte) { return pte; } diff --git a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/special_insns.h b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/special_insns.h index 1069e75a21..3e94c20dd0 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/special_insns.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/arch/x86/include/asm/special_insns.h @@ -26,6 +26,11 @@ static inline void native_write_cr3(unsigned long val) lx_emul_trace_and_stop(__func__); } +static inline void native_write_cr4(unsigned long val) +{ + lx_emul_trace_and_stop(__func__); +} + #endif static inline void wbinvd(void) diff --git a/repos/dde_linux/src/include/lx_emul/shadow/include/asm/percpu.h b/repos/dde_linux/src/include/lx_emul/shadow/include/asm/percpu.h index 9bed35c42d..caf02c65f0 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/include/asm/percpu.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/include/asm/percpu.h @@ -16,6 +16,8 @@ #include_next +#ifndef __ASSEMBLY__ + static inline unsigned long __dummy_cpu_offset(void) { return 0; @@ -24,4 +26,6 @@ static inline unsigned long __dummy_cpu_offset(void) #undef __my_cpu_offset #define __my_cpu_offset __dummy_cpu_offset() +#endif /* __ASSEMBLY__ */ + #endif /* _LX_EMUL__SHADOW__ASM__PERCPU_H_ */ diff --git a/repos/dde_linux/src/include/lx_emul/shadow/include/linux/of.h b/repos/dde_linux/src/include/lx_emul/shadow/include/linux/of.h index b8c201a655..4716fae6b6 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/include/linux/of.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/include/linux/of.h @@ -22,14 +22,14 @@ /* used to populate __clk_of_table */ #define OF_DECLARE_1(table, name, compat, fn) \ - static void __of_declare_initcall_##fn##name(void)__attribute__((constructor)); \ - static void __of_declare_initcall_##fn##name() { \ + static void __of_declare_initcall_##name(void) __attribute__((constructor)); \ + static void __of_declare_initcall_##name() { \ lx_emul_register_of_##table##_initcall(compat, fn); }; /* used to populate __irqchip_of_table */ #define OF_DECLARE_2(table, name, compat, fn) \ - static void __of_declare_initcall_##fn##name(void)__attribute__((constructor)); \ - static void __of_declare_initcall_##fn##name() { \ + static void __of_declare_initcall_##name(void) __attribute__((constructor)); \ + static void __of_declare_initcall_##name() { \ lx_emul_register_of_##table##_initcall(compat, fn); }; #endif /* _LX_EMUL__SHADOW__LINUX__OF_H_ */ diff --git a/repos/dde_linux/src/include/lx_emul/shadow/include/linux/pgtable.h b/repos/dde_linux/src/include/lx_emul/shadow/include/linux/pgtable.h index b24b831f68..bb61862b4a 100644 --- a/repos/dde_linux/src/include/lx_emul/shadow/include/linux/pgtable.h +++ b/repos/dde_linux/src/include/lx_emul/shadow/include/linux/pgtable.h @@ -14,9 +14,11 @@ #ifndef __LINUX_PGTABLE_H #define __LINUX_PGTABLE_H -#include +#include #include +#ifndef __ASSEMBLY__ + pmd_t *pmd_offset(pud_t *pud, unsigned long address); pmd_t pmd_swp_clear_soft_dirty(pmd_t pmd); int pmd_swp_soft_dirty(pmd_t pmd); @@ -54,4 +56,12 @@ pte_t ptep_get(pte_t *ptep); static inline int is_zero_pfn(unsigned long pfn) { return 0; } +#define pte_unmap(pte) ((void)(pte)) + +static inline int pte_swp_exclusive(pte_t pte) { return false; } + +static inline pte_t pte_swp_clear_exclusive(pte_t pte) { return pte; } + +#endif /* __ASSEMBLY__ */ + #endif /* __LINUX_PGTABLE_H */ diff --git a/repos/dde_linux/src/include/virt_linux/spec/arm_64/lx_emul/initcall_order.h b/repos/dde_linux/src/include/virt_linux/spec/arm_64/lx_emul/initcall_order.h index 089d1d39b1..efa39e8cd5 100644 --- a/repos/dde_linux/src/include/virt_linux/spec/arm_64/lx_emul/initcall_order.h +++ b/repos/dde_linux/src/include/virt_linux/spec/arm_64/lx_emul/initcall_order.h @@ -1,7 +1,7 @@ /* * \brief Array defining order of Linux Kernel initcalls * \author Automatically generated file - do no edit - * \date 2022-05-05 + * \date 2023-03-27 */ #pragma once @@ -16,24 +16,21 @@ static const char * lx_emul_initcall_order[] = { "__initcall_check_cpu_stall_initearly", "__initcall_rcu_sysrq_initearly", "__initcall_cpu_stop_initearly", + "__initcall_irq_work_init_threadsearly", "__initcall_init_zero_pfnearly", "__initcall_its_pmsi_initearly", "__initcall_its_pci_msi_initearly", "__initcall_dummy_timer_registerearly", - "__initcall_initialize_ptr_randomearly", "__initcall_init_mmap_min_addr0", "__initcall_pci_realloc_setup_params0", - "__initcall_net_ns_init0", "__initcall_inet_frag_wq_init0", "__initcall_fpsimd_init1", "__initcall_enable_mrs_emulation1", "__initcall_init_amu_fie1", "__initcall_ksysfs_init1", "__initcall_rcu_set_runtime_mode1", - "__initcall_dma_init_reserved_memory1", "__initcall_init_jiffies_clocksource1", "__initcall_init_elf_binfmt1", - "__initcall_prandom_init_early1", "__initcall_virtio_init1", "__initcall_free_raw_capacity1", "__initcall_sock_init1", @@ -56,6 +53,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_kobject_uevent_init2", "__initcall_reserve_memblock_reserved_regions3", "__initcall_vdso_init3", + "__initcall_adjust_protection_map3", "__initcall_asids_update_limit3", "__initcall_of_platform_default_populate_init3s", "__initcall_topology_init4", @@ -78,6 +76,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_fib_notifier_init4", "__initcall_ethnl_init4", "__initcall_nexthop_init4", + "__initcall_vsprintf_init_hashval4", "__initcall_init_32bit_el0_mask4s", "__initcall_create_debug_debugfs_entry5", "__initcall_iomem_init_inode5", @@ -86,6 +85,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_anon_inode_init5", "__initcall_init_ramfs_fs5", "__initcall_chr_dev_init5", + "__initcall_hwrng_modinit5", "__initcall_eth_offload_init5", "__initcall_ipv4_offload_init5", "__initcall_inet_init5", @@ -94,6 +94,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_populate_rootfsrootfs", "__initcall_register_arm64_panic_block6", "__initcall_cpuinfo_regs_init6", + "__initcall_aarch32_el0_sysfs_init6", "__initcall_chacha_simd_mod_init6", "__initcall_neon_poly1305_mod_init6", "__initcall_timekeeping_init_ops6", @@ -105,30 +106,29 @@ static const char * lx_emul_initcall_order[] = { "__initcall_fcntl_init6", "__initcall_start_dirtytime_writeback6", "__initcall_init_devpts_fs6", - "__initcall_crypto_algapi_init6", "__initcall_jent_mod_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", + "__initcall_blake2s_mod_init6", + "__initcall_chacha20poly1305_init6", + "__initcall_curve25519_init6", "__initcall_percpu_counter_startup6", + "__initcall_simple_pm_bus_driver_init6", "__initcall_of_fixed_factor_clk_driver_init6", "__initcall_of_fixed_clk_driver_init6", "__initcall_gpio_clk_driver_init6", "__initcall_virtio_pci_driver_init6", "__initcall_n_null_init6", "__initcall_pty_init6", - "__initcall_init6", - "__initcall_hwrng_modinit6", + "__initcall_virtio_console_init6", "__initcall_timeriomem_rng_driver_init6", - "__initcall_cavium_rng_pf_driver_init6", - "__initcall_cavium_rng_vf_driver_init6", + "__initcall_smccc_trng_driver_init6", + "__initcall_cn10k_rng_driver_init6", "__initcall_topology_sysfs_init6", "__initcall_cacheinfo_sysfs_init6", - "__initcall_mod_init6", - "__initcall_net_olddevs_init6", + "__initcall_wg_mod_init6", "__initcall_blackhole_netdev_init6", "__initcall_virtio_net_driver_init6", "__initcall_net_failover_init6", + "__initcall_smccc_devices_init6", "__initcall_sock_diag_init6", "__initcall_failover_init6", "__initcall_gre_offload_init6", @@ -138,18 +138,17 @@ static const char * lx_emul_initcall_order[] = { "__initcall_cubictcp_register6", "__initcall_inet6_init6", "__initcall_sit_init6", - "__initcall_init_oops_id7", "__initcall_printk_late_init7", "__initcall_check_early_ioremap_leak7", - "__initcall_prandom_init_late7", + "__initcall_crypto_algapi_init7", "__initcall_pci_resource_alignment_sysfs_init7", "__initcall_pci_sysfs_init7", - "__initcall_amba_deferred_retry7", "__initcall_sync_state_resume_initcall7", "__initcall_deferred_probe_initcall7", "__initcall_tcp_congestion_default7", "__initcall_udp_tunnel_nic_init_module7", "__initcall_ip_auto_config7", + "__initcall_amba_stub_drv_init7s", "__initcall_clk_disable_unused7s", "__initcall_of_platform_sync_state_init7s", "__initcall_con_initcon", diff --git a/repos/dde_linux/src/include/virt_linux/spec/x86_64/lx_emul/initcall_order.h b/repos/dde_linux/src/include/virt_linux/spec/x86_64/lx_emul/initcall_order.h index 30b7f06465..aed7163ec2 100644 --- a/repos/dde_linux/src/include/virt_linux/spec/x86_64/lx_emul/initcall_order.h +++ b/repos/dde_linux/src/include/virt_linux/spec/x86_64/lx_emul/initcall_order.h @@ -1,7 +1,7 @@ /* * \brief Array defining order of Linux Kernel initcalls * \author Automatically generated file - do no edit - * \date 2023-01-27 + * \date 2023-03-27 */ #pragma once @@ -9,8 +9,8 @@ static const char * lx_emul_initcall_order[] = { "__initcall_init_hw_perf_eventsearly", "__initcall_start", - "__initcall_init_real_modeearly", - "__initcall_validate_x2apicearly", + "__initcall_do_init_real_modeearly", + "__initcall_bp_init_aperfmperfearly", "__initcall_register_nmi_cpu_backtrace_handlerearly", "__initcall_spawn_ksoftirqdearly", "__initcall_migration_initearly", @@ -19,24 +19,18 @@ static const char * lx_emul_initcall_order[] = { "__initcall_check_cpu_stall_initearly", "__initcall_rcu_sysrq_initearly", "__initcall_cpu_stop_initearly", + "__initcall_irq_work_init_threadsearly", "__initcall_static_call_initearly", "__initcall_init_zero_pfnearly", - "__initcall_initialize_ptr_randomearly", "__initcall_init_mmap_min_addr0", "__initcall_pci_realloc_setup_params0", - "__initcall_net_ns_init0", "__initcall_inet_frag_wq_init0", - "__initcall_cpufreq_register_tsc_scaling1", "__initcall_reboot_init1", "__initcall_ksysfs_init1", - "__initcall_schedutil_gov_init1", "__initcall_rcu_set_runtime_mode1", "__initcall_init_jiffies_clocksource1", "__initcall_init_elf_binfmt1", - "__initcall_prandom_init_early1", "__initcall_virtio_init1", - "__initcall_cpufreq_core_init1", - "__initcall_cpufreq_gov_performance_init1", "__initcall_sock_init1", "__initcall_net_defaults_init1", "__initcall_init_default_flow_dissectors1", @@ -57,6 +51,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_pt_init3", "__initcall_sbf_init3", "__initcall_arch_kdebugfs_init3", + "__initcall_xfd_update_static_branch3", "__initcall_intel_pconfig_init3", "__initcall_pci_arch_init3", "__initcall_init_vdso4", @@ -80,6 +75,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_ethnl_init4", "__initcall_nexthop_init4", "__initcall_pci_subsys_init4", + "__initcall_vsprintf_init_hashval4", "__initcall_nmi_warning_debugfs5", "__initcall_hpet_late_init5", "__initcall_init_amd_nbs5", @@ -89,6 +85,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_anon_inode_init5", "__initcall_init_ramfs_fs5", "__initcall_chr_dev_init5", + "__initcall_hwrng_modinit5", "__initcall_eth_offload_init5", "__initcall_ipv4_offload_init5", "__initcall_inet_init5", @@ -98,7 +95,6 @@ static const char * lx_emul_initcall_order[] = { "__initcall_populate_rootfsrootfs", "__initcall_pci_iommu_initrootfs", "__initcall_rapl_pmu_init6", - "__initcall_amd_uncore_init6", "__initcall_amd_ibs_init6", "__initcall_msr_init6", "__initcall_intel_uncore_init6", @@ -109,7 +105,6 @@ static const char * lx_emul_initcall_order[] = { "__initcall_add_rtc_cmos6", "__initcall_umwait_init6", "__initcall_ioapic_init_ops6", - "__initcall_sysfb_init6", "__initcall_chacha_simd_mod_init6", "__initcall_blake2s_mod_init6", "__initcall_poly1305_simd_mod_init6", @@ -123,32 +118,25 @@ static const char * lx_emul_initcall_order[] = { "__initcall_fcntl_init6", "__initcall_start_dirtytime_writeback6", "__initcall_init_devpts_fs6", - "__initcall_crypto_algapi_init6", "__initcall_jent_mod_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", + "__initcall_blake2s_mod_init6", + "__initcall_chacha20poly1305_init6", + "__initcall_curve25519_init6", "__initcall_percpu_counter_startup6", - "__initcall_gpio_clk_driver_init6", - "__initcall_plt_clk_driver_init6", "__initcall_virtio_pci_driver_init6", "__initcall_n_null_init6", "__initcall_pty_init6", - "__initcall_init6", - "__initcall_hwrng_modinit6", + "__initcall_virtio_console_init6", "__initcall_timeriomem_rng_driver_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", - "__initcall_mod_init6", + "__initcall_intel_rng_mod_init6", + "__initcall_amd_rng_mod_init6", + "__initcall_via_rng_mod_init6", "__initcall_topology_sysfs_init6", "__initcall_cacheinfo_sysfs_init6", - "__initcall_mod_init6", - "__initcall_net_olddevs_init6", + "__initcall_wg_mod_init6", "__initcall_blackhole_netdev_init6", "__initcall_virtio_net_driver_init6", "__initcall_net_failover_init6", - "__initcall_intel_pstate_init6", - "__initcall_pmc_atom_init6", "__initcall_sock_diag_init6", "__initcall_failover_init6", "__initcall_gre_offload_init6", @@ -158,16 +146,16 @@ static const char * lx_emul_initcall_order[] = { "__initcall_cubictcp_register6", "__initcall_inet6_init6", "__initcall_sit_init6", + "__initcall_start_sync_check_timer7", "__initcall_update_mp_table7", "__initcall_lapic_insert_resource7", "__initcall_print_ipi_mode7", "__initcall_print_ICs7", "__initcall_create_tlb_single_page_flush_ceiling7", - "__initcall_init_oops_id7", "__initcall_sched_clock_init_late7", "__initcall_printk_late_init7", "__initcall_check_early_ioremap_leak7", - "__initcall_prandom_init_late7", + "__initcall_crypto_algapi_init7", "__initcall_pci_resource_alignment_sysfs_init7", "__initcall_pci_sysfs_init7", "__initcall_sync_state_resume_initcall7", @@ -175,7 +163,6 @@ static const char * lx_emul_initcall_order[] = { "__initcall_tcp_congestion_default7", "__initcall_udp_tunnel_nic_init_module7", "__initcall_ip_auto_config7", - "__initcall_clk_disable_unused7s", "__initcall_con_initcon", "__initcall_end", "__initcall_hvc_console_initcon", diff --git a/repos/dde_linux/src/lib/lx_emul/clocksource.c b/repos/dde_linux/src/lib/lx_emul/clocksource.c index 5ddc520d8a..a42ed4fef8 100644 --- a/repos/dde_linux/src/lib/lx_emul/clocksource.c +++ b/repos/dde_linux/src/lib/lx_emul/clocksource.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -119,7 +120,11 @@ void lx_emul_time_update_jiffies(void) return; /* tick_nohz_idle_stop_tick breaks with error if softirq is pending */ +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,18,0) if (local_softirq_pending() & SOFTIRQ_STOP_IDLE_MASK) +#else + if (local_softirq_pending() & ~SOFTIRQ_HOTPLUG_SAFE_MASK) +#endif return; tick_nohz_idle_enter(); diff --git a/repos/dde_linux/src/lib/lx_emul/pci_bus.c b/repos/dde_linux/src/lib/lx_emul/pci_bus.c index 3ba174d41f..7e5a517afe 100644 --- a/repos/dde_linux/src/lib/lx_emul/pci_bus.c +++ b/repos/dde_linux/src/lib/lx_emul/pci_bus.c @@ -84,6 +84,8 @@ static void pci_add_resource_to_device_callback(void * data, dev->resource[number].end = dev->resource[number].start + size - 1; if (io_port) dev->resource[number].flags |= IORESOURCE_IO; + else + dev->resource[number].flags |= IORESOURCE_MEM; } diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/drivers/char/random.c b/repos/dde_linux/src/lib/lx_emul/shadow/drivers/char/random.c index 4ba978e2dc..a05e3e84cb 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/drivers/char/random.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/drivers/char/random.c @@ -46,7 +46,13 @@ int __must_check get_random_bytes_arch(void *buf, int nbytes) } -void get_random_bytes(void *buf, int nbytes) +void get_random_bytes(void *buf, size_t nbytes) { nbytes = get_random_bytes_arch(buf, nbytes); } + + +bool rng_is_initialized(void) +{ + return 1; +} diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/dma/mapping.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/dma/mapping.c index 32d11c0ebb..77ac6d6ae8 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/dma/mapping.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/dma/mapping.c @@ -15,6 +15,7 @@ #include #include +#include void * dma_alloc_attrs(struct device * dev, size_t size, @@ -51,7 +52,7 @@ int dma_set_mask(struct device *dev, u64 mask) { mask = (dma_addr_t)mask; - if (!dev->dma_mask || !dma_supported(dev, mask)) + if (!dev->dma_mask) return -EIO; *dev->dma_mask = mask; @@ -63,19 +64,20 @@ int dma_set_coherent_mask(struct device *dev, u64 mask) { mask = (dma_addr_t)mask; - if (!dma_supported(dev, mask)) - return -EIO; - dev->coherent_dma_mask = mask; return 0; } -int dma_map_sg_attrs(struct device * dev, - struct scatterlist * sgl, - int nents, - enum dma_data_direction dir, - unsigned long attrs) +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,15,0) +int dma_map_sg_attrs(struct device *dev, +#else +unsigned int dma_map_sg_attrs(struct device *dev, +#endif + struct scatterlist *sgl, + int nents, + enum dma_data_direction dir, + unsigned long attrs) { int i; struct scatterlist *sg; diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/fork.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/fork.c index 61f5d3a09d..a641dcdce7 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/fork.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/fork.c @@ -20,6 +20,8 @@ #include #include #include +#include +#include /* * We accept that we transfer the 4KiB task_struct object via stack in @@ -77,6 +79,13 @@ pid_t kernel_thread(int (* fn)(void *),void * arg,unsigned long flags) .signal = signal, }; +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,17,0) + if (!set_kthread_struct(task)) { + kfree(task); + goto err_task; + } +#endif + #ifndef CONFIG_THREAD_INFO_IN_TASK /* On arm, the 'thread_info' is hidden behind 'task->stack', we must * therefore initialise the member before calling 'task_thread_info()'. */ diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/printk/printk.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/printk/printk.c index 6ee2824305..40d505c0da 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/printk/printk.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/printk/printk.c @@ -12,7 +12,10 @@ * version 2. */ -#include +#include +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,15,0) +#include +#endif #include #include #include @@ -20,7 +23,11 @@ static char print_string[2048]; +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,15,0) asmlinkage __visible int printk(const char * fmt,...) +#else +asmlinkage __visible int _printk(const char * fmt,...) +#endif { va_list args; va_start(args, fmt); diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/rcu/tree.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/rcu/tree.c index a01492894f..9e2fd1dcef 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/rcu/tree.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/rcu/tree.c @@ -17,6 +17,7 @@ #include #include #include +#include #ifdef CONFIG_PREEMPT_RCU void __rcu_read_lock(void) { } @@ -29,10 +30,12 @@ extern void rcu_read_unlock_strict(void); void rcu_read_unlock_strict(void) { } +#if LINUX_VERSION_CODE < KERNEL_VERSION(5,18,0) int rcu_needs_cpu(u64 basemono, u64 *nextevt) +#else +int rcu_needs_cpu(void) +#endif { - if (nextevt) - *nextevt = KTIME_MAX; return 0; } diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/core.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/core.c index a9ee03858a..54468b8d03 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/core.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/core.c @@ -28,6 +28,9 @@ #include #include +#include +#include +#include #include <../kernel/sched/sched.h> @@ -193,10 +196,18 @@ unsigned long wait_task_inactive(struct task_struct * p, { struct rq *rq = task_rq(p); +#if LINUX_VERSION_CODE < KERNEL_VERSION(6,1,0) if (task_running(rq, p)) +#else + if (task_on_cpu(rq, p)) +#endif schedule(); +#if LINUX_VERSION_CODE < KERNEL_VERSION(6,1,0) if (task_running(rq, p)) +#else + if (task_on_cpu(rq, p)) +#endif return 0; return 1; diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/fair.c b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/fair.c index a0c8414d44..9a8350ed76 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/fair.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/kernel/sched/fair.c @@ -11,6 +11,7 @@ * version 2. */ +#include #include <../kernel/sched/sched.h> #include diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slab_common.c b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slab_common.c index 78bae4588f..1a033e8faa 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slab_common.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slab_common.c @@ -13,6 +13,7 @@ #include #include +#include #include <../mm/slab.h> #include <../mm/internal.h> #include @@ -59,3 +60,19 @@ void * kmalloc_order(size_t size, gfp_t flags, unsigned int order) { return __kmalloc(size, flags); } + + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,1,0) || defined(CONFIG_NUMA) +void * __kmalloc_node(size_t size, gfp_t flags, int node) +{ + return __kmalloc(size, flags); +} +#endif + + +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,1,0) +void * kmalloc_large(size_t size,gfp_t flags) +{ + return __kmalloc(size, flags); +} +#endif diff --git a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c index 8f82736fd1..1327cbcf07 100644 --- a/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c +++ b/repos/dde_linux/src/lib/lx_emul/shadow/mm/slub.c @@ -13,6 +13,7 @@ #include #include +#include #include <../mm/slab.h> #include #include @@ -122,20 +123,12 @@ size_t __ksize(const void * object) } -#ifdef CONFIG_NUMA - -void * __kmalloc_node(size_t size, gfp_t flags, int node) -{ - return __kmalloc(size, flags); -} - - +#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,1,0) || defined(CONFIG_NUMA) void * kmem_cache_alloc_node(struct kmem_cache * s, gfp_t gfpflags, int node) { return kmem_cache_alloc(s, gfpflags); } - -#endif /* CONFIG_NUMA */ +#endif #ifdef CONFIG_TRACING diff --git a/repos/dde_linux/src/lib/lx_emul/start.c b/repos/dde_linux/src/lib/lx_emul/start.c index f05bf600d6..7a1031f0f5 100644 --- a/repos/dde_linux/src/lib/lx_emul/start.c +++ b/repos/dde_linux/src/lib/lx_emul/start.c @@ -29,6 +29,8 @@ #include #include #include +#include +#include /* definitions in drivers/base/base.h */ extern int devices_init(void); @@ -140,11 +142,14 @@ int lx_emul_init_task_function(void * dtb) hrtimers_init(); softirq_init(); timekeeping_init(); - time_init(); sched_clock_init(); +#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,17,0) + net_ns_init(); +#endif + kernel_thread(kernel_init, NULL, CLONE_FS); kernel_thread(kernel_idle, NULL, CLONE_FS); pid = kernel_thread(kthreadd, NULL, CLONE_FS | CLONE_FILES); diff --git a/repos/dde_linux/src/lib/lx_emul/virt/common_dummies.c b/repos/dde_linux/src/lib/lx_emul/virt/common_dummies.c index 8c5209f370..ce4c82facc 100644 --- a/repos/dde_linux/src/lib/lx_emul/virt/common_dummies.c +++ b/repos/dde_linux/src/lib/lx_emul/virt/common_dummies.c @@ -31,6 +31,7 @@ void account_process_tick(struct task_struct * p,int user_tick) #include +struct random_ready_callback; int add_random_ready_callback(struct random_ready_callback * rdy) { @@ -47,14 +48,6 @@ int __init buses_init(void) } -#include - -void calc_global_load(void) -{ - lx_emul_trace(__func__); -} - - extern int __init classes_init(void); int __init classes_init(void) { diff --git a/repos/dde_linux/src/test/driver_time/dummies.c b/repos/dde_linux/src/test/driver_time/dummies.c index f5e05dc480..46e81ff850 100644 --- a/repos/dde_linux/src/test/driver_time/dummies.c +++ b/repos/dde_linux/src/test/driver_time/dummies.c @@ -20,3 +20,24 @@ void register_syscore_ops(struct syscore_ops * ops) { lx_emul_trace(__func__); } + + +#include + +u32 __get_random_u32_below(u32 ceil) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +DEFINE_STATIC_KEY_FALSE(force_irqthreads_key); + + +#include + +void net_ns_init(void) +{ + lx_emul_trace(__func__); +} diff --git a/repos/dde_linux/src/test/driver_time/spec/arm_64/generated_dummies.c b/repos/dde_linux/src/test/driver_time/spec/arm_64/generated_dummies.c index 64a06886ae..58b5e0b2e9 100644 --- a/repos/dde_linux/src/test/driver_time/spec/arm_64/generated_dummies.c +++ b/repos/dde_linux/src/test/driver_time/spec/arm_64/generated_dummies.c @@ -1,7 +1,7 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2023-03-24 + * \date 2023-03-27 */ #include @@ -15,9 +15,14 @@ const char * __clk_get_name(const struct clk * clk) } +#include + +struct cpumask __cpu_active_mask; + + #include -struct irq_domain * __irq_domain_add(struct fwnode_handle * fwnode,int size,irq_hw_number_t hwirq_max,int direct_max,const struct irq_domain_ops * ops,void * host_data) +struct irq_domain * __irq_domain_add(struct fwnode_handle * fwnode,unsigned int size,irq_hw_number_t hwirq_max,int direct_max,const struct irq_domain_ops * ops,void * host_data) { lx_emul_trace_and_stop(__func__); } @@ -36,6 +41,22 @@ struct irq_desc * __irq_resolve_mapping(struct irq_domain * domain,irq_hw_number unsigned long __per_cpu_offset[NR_CPUS] = {}; +#include + +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void __put_task_struct(struct task_struct * tsk) @@ -44,11 +65,59 @@ void __put_task_struct(struct task_struct * tsk) } +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + #include u64 (*arch_timer_read_counter)(void); +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void ct_irq_enter_irqson(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void ct_irq_exit_irqson(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void do_softirq_own_stack(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include asmlinkage __visible void dump_stack(void) @@ -57,9 +126,12 @@ asmlinkage __visible void dump_stack(void) } -#include +#include -bool force_irqthreads; +void finish_rcuwait(struct rcuwait * w) +{ + lx_emul_trace_and_stop(__func__); +} #include @@ -115,6 +187,14 @@ void handle_fasteoi_irq(struct irq_desc * desc) } +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -157,7 +237,7 @@ void irq_domain_free_irqs_common(struct irq_domain * domain,unsigned int virq,un #include -void irq_domain_set_info(struct irq_domain * domain,unsigned int virq,irq_hw_number_t hwirq,struct irq_chip * chip,void * chip_data,irq_flow_handler_t handler,void * handler_data,const char * handler_name) +void irq_domain_set_info(struct irq_domain * domain,unsigned int virq,irq_hw_number_t hwirq,const struct irq_chip * chip,void * chip_data,irq_flow_handler_t handler,void * handler_data,const char * handler_name) { lx_emul_trace_and_stop(__func__); } @@ -203,9 +283,33 @@ void irq_work_tick(void) } +#include + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) +{ + lx_emul_trace_and_stop(__func__); +} + + #include -int kstrtoll(const char * s,unsigned int base,long long * res) +noinline int kstrtoint(const char * s,unsigned int base,int * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinline int kstrtoll(const char * s,unsigned int base,long long * res) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +char * kvasprintf(gfp_t gfp,const char * fmt,va_list ap) { lx_emul_trace_and_stop(__func__); } @@ -245,30 +349,6 @@ int of_property_read_string(const struct device_node * np,const char * propname, } -#include - -int printk_deferred(const char * fmt,...) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void rcu_irq_enter_irqson(void) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void rcu_irq_exit_irqson(void) -{ - lx_emul_trace_and_stop(__func__); -} - - #include u64 siphash_1u64(const u64 first,const siphash_key_t * key) @@ -277,6 +357,14 @@ u64 siphash_1u64(const u64 first,const siphash_key_t * key) } +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include bool static_key_initialized; diff --git a/repos/dde_linux/src/test/driver_time/spec/arm_64/source.list b/repos/dde_linux/src/test/driver_time/spec/arm_64/source.list index 92c0a52198..47626816d1 100644 --- a/repos/dde_linux/src/test/driver_time/spec/arm_64/source.list +++ b/repos/dde_linux/src/test/driver_time/spec/arm_64/source.list @@ -1,5 +1,6 @@ arch/arm64/lib/memchr.S arch/arm64/lib/memcmp.S +arch/arm64/lib/strchr.S arch/arm64/lib/strcmp.S arch/arm64/lib/strlen.S kernel/kthread.c @@ -7,11 +8,7 @@ kernel/locking/mutex.c kernel/locking/osq_lock.c kernel/locking/rwsem.c kernel/notifier.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c diff --git a/repos/dde_linux/src/test/driver_time/spec/x86_64/generated_dummies.c b/repos/dde_linux/src/test/driver_time/spec/x86_64/generated_dummies.c index 65186ba4a3..2ead7b2843 100644 --- a/repos/dde_linux/src/test/driver_time/spec/x86_64/generated_dummies.c +++ b/repos/dde_linux/src/test/driver_time/spec/x86_64/generated_dummies.c @@ -1,15 +1,28 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2023-02-24 + * \date 2023-03-27 */ #include -#include +#include -const char * __clk_get_name(const struct clk * clk) +struct cpumask __cpu_active_mask; + + +#include + +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -31,15 +44,30 @@ unsigned long _copy_to_user(void __user * to,const void * from,unsigned long n) } -extern const char * _parse_integer_fixup_radix(const char * s,unsigned int * base); -const char * _parse_integer_fixup_radix(const char * s,unsigned int * base) +extern noinline unsigned int _parse_integer(const char * s,unsigned int base,unsigned long long * p); +noinline unsigned int _parse_integer(const char * s,unsigned int base,unsigned long long * p) { lx_emul_trace_and_stop(__func__); } -extern unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars); -unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars) +extern noinline const char * _parse_integer_fixup_radix(const char * s,unsigned int * base); +noinline const char * _parse_integer_fixup_radix(const char * s,unsigned int * base) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern noinline unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars); +noinline unsigned int _parse_integer_limit(const char * s,unsigned int base,unsigned long long * p,size_t max_chars) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int _printk_deferred(const char * fmt,...) { lx_emul_trace_and_stop(__func__); } @@ -52,6 +80,22 @@ void ack_bad_irq(unsigned int irq) } +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include asmlinkage __visible void dump_stack(void) @@ -60,9 +104,12 @@ asmlinkage __visible void dump_stack(void) } -#include +#include -bool force_irqthreads; +void finish_rcuwait(struct rcuwait * w) +{ + lx_emul_trace_and_stop(__func__); +} #include @@ -110,6 +157,14 @@ void fwnode_handle_put(struct fwnode_handle * fwnode) const u8 guid_index[16] = {}; +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -158,25 +213,33 @@ void irq_work_tick(void) } +#include + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) +{ + lx_emul_trace_and_stop(__func__); +} + + #include -int kstrtoll(const char * s,unsigned int base,long long * res) +noinline int kstrtoint(const char * s,unsigned int base,int * res) { lx_emul_trace_and_stop(__func__); } -#include +#include -u32 prandom_u32(void) +noinline int kstrtoll(const char * s,unsigned int base,long long * res) { lx_emul_trace_and_stop(__func__); } -#include +#include -int printk_deferred(const char * fmt,...) +char * kvasprintf(gfp_t gfp,const char * fmt,va_list ap) { lx_emul_trace_and_stop(__func__); } @@ -190,6 +253,22 @@ u64 siphash_1u64(const u64 first,const siphash_key_t * key) } +#include + +char * skip_spaces(const char * str) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) diff --git a/repos/dde_linux/src/test/driver_time/spec/x86_64/source.list b/repos/dde_linux/src/test/driver_time/spec/x86_64/source.list index c11efb3f64..036a8a019d 100644 --- a/repos/dde_linux/src/test/driver_time/spec/x86_64/source.list +++ b/repos/dde_linux/src/test/driver_time/spec/x86_64/source.list @@ -4,11 +4,7 @@ kernel/locking/mutex.c kernel/locking/osq_lock.c kernel/locking/rwsem.c kernel/notifier.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c diff --git a/repos/dde_linux/src/virt_linux/target.inc b/repos/dde_linux/src/virt_linux/target.inc index de692f8aee..178ca9ea15 100644 --- a/repos/dde_linux/src/virt_linux/target.inc +++ b/repos/dde_linux/src/virt_linux/target.inc @@ -30,6 +30,9 @@ LX_ENABLE += CRYPTO_JITTERENTROPY CRYPTO_ANSI_CPRNG HW_RANDOM_TIMERIOMEM # wireguard driver LX_ENABLE += WIREGUARD WIREGUARD_DEBUG +# disable cpu frequency scaling +LX_DISABLE += SCHED_MC CPU_FREQ + # disable optimization not possible in PIC code under Genode LX_DISABLE += CC_HAS_ASM_GOTO diff --git a/repos/pc/recipes/api/pc_linux/content.mk b/repos/pc/recipes/api/pc_linux/content.mk index 3f5fd64d3a..306268a72c 100644 --- a/repos/pc/recipes/api/pc_linux/content.mk +++ b/repos/pc/recipes/api/pc_linux/content.mk @@ -85,19 +85,20 @@ LX_FILES += Kbuild \ scripts/Makefile.lib \ scripts/asn1_compiler.c \ scripts/as-version.sh \ - scripts/atomic/check-atomics.sh \ scripts/basic/Makefile \ scripts/basic/fixdep.c \ scripts/cc-version.sh \ + scripts/check-local-export \ scripts/checksyscalls.sh \ scripts/config \ scripts/dtc \ - scripts/extract-cert.c \ - scripts/gcc-goto.sh \ scripts/kconfig/merge_config.sh \ scripts/ld-version.sh \ + scripts/mkcompile_h \ scripts/min-tool-version.sh \ scripts/mod \ + scripts/pahole-flags.sh \ + scripts/pahole-version.sh \ scripts/remove-stale-files \ scripts/setlocalversion \ scripts/sorttable.c \ @@ -121,6 +122,7 @@ LX_FILES += $(shell cd $(LX_ABS_DIR); find -name "Kconfig*" -printf "%P\n") # needed for generated/asm-offsets.h LX_FILES += arch/x86/include/asm/boot.h \ + arch/x86/include/asm/coco.h \ arch/x86/include/asm/cpufeature.h \ arch/x86/include/asm/current.h \ arch/x86/include/asm/fixmap.h \ @@ -132,6 +134,7 @@ LX_FILES += arch/x86/include/asm/boot.h \ arch/x86/include/asm/page.h \ arch/x86/include/asm/page_32.h \ arch/x86/include/asm/page_32_types.h \ + arch/x86/include/asm/page_64.h \ arch/x86/include/asm/pgtable.h \ arch/x86/include/asm/pgtable-2level.h \ arch/x86/include/asm/pgtable-2level_types.h \ @@ -144,12 +147,14 @@ LX_FILES += arch/x86/include/asm/boot.h \ arch/x86/include/asm/qrwlock.h \ arch/x86/include/asm/qspinlock.h \ arch/x86/include/asm/sigframe.h \ + arch/x86/include/asm/special_insns.h \ arch/x86/include/asm/spinlock.h \ arch/x86/include/asm/suspend.h \ arch/x86/include/asm/suspend_32.h \ arch/x86/include/asm/suspend_64.h \ arch/x86/include/asm/sync_core.h \ arch/x86/include/asm/uaccess_32.h \ + arch/x86/include/asm/uaccess_64.h \ arch/x86/include/asm/user_32.h \ arch/x86/include/uapi/asm/ucontext.h \ arch/x86/kernel/asm-offsets.c \ @@ -169,6 +174,7 @@ LX_FILES += arch/x86/include/asm/boot.h \ include/linux/cper.h \ include/linux/crypto.h \ include/linux/efi.h \ + include/linux/page_table_check.h \ include/linux/pgtable.h \ include/linux/pstore.h \ include/uapi/asm-generic/ucontext.h \ diff --git a/repos/pc/run/intel_fb.run b/repos/pc/run/intel_fb.run index dd08569901..664d464a7b 100644 --- a/repos/pc/run/intel_fb.run +++ b/repos/pc/run/intel_fb.run @@ -86,7 +86,7 @@ append config { - + diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/dep.list b/repos/pc/src/drivers/framebuffer/intel/pc/dep.list index ae7a424dd7..8301dbf120 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/dep.list +++ b/repos/pc/src/drivers/framebuffer/intel/pc/dep.list @@ -1,56 +1,55 @@ arch/x86/include/asm/agp.h -arch/x86/include/asm/atomic64_64.h -arch/x86/include/asm/checksum_64.h -arch/x86/include/asm/cmpxchg_64.h -arch/x86/include/asm/e820/api.h -arch/x86/include/asm/e820/types.h arch/x86/include/asm/hypervisor.h -arch/x86/include/asm/intel-mid.h -arch/x86/include/asm/io.h -arch/x86/include/asm/io_apic.h -arch/x86/include/asm/iomap.h -arch/x86/include/asm/iommu.h arch/x86/include/asm/iosf_mbi.h -arch/x86/include/asm/kaslr.h -arch/x86/include/asm/page_64_types.h -arch/x86/include/asm/pgtable_64_types.h -arch/x86/include/asm/sparsemem.h -arch/x86/include/asm/string_64.h -arch/x86/include/asm/user_64.h -arch/x86/include/uapi/asm/posix_types_64.h -arch/x86/include/uapi/asm/vsyscall.h +arch/x86/include/asm/set_memory.h +arch/x86/include/asm/vga.h drivers/char/agp/agp.h drivers/char/agp/intel-agp.h +drivers/gpu/drm/display/drm_dp_helper_internal.h +drivers/gpu/drm/display/drm_dp_mst_topology_internal.h drivers/gpu/drm/drm_crtc_helper_internal.h drivers/gpu/drm/drm_crtc_internal.h -drivers/gpu/drm/drm_dp_mst_topology_internal.h drivers/gpu/drm/drm_internal.h drivers/gpu/drm/drm_legacy.h drivers/gpu/drm/drm_trace.h drivers/gpu/drm/i915/display/g4x_dp.h drivers/gpu/drm/i915/display/g4x_hdmi.h +drivers/gpu/drm/i915/display/hsw_ips.h drivers/gpu/drm/i915/display/i9xx_plane.h +drivers/gpu/drm/i915/display/icl_dsi.h +drivers/gpu/drm/i915/display/icl_dsi_regs.h drivers/gpu/drm/i915/display/intel_acpi.h drivers/gpu/drm/i915/display/intel_atomic.h drivers/gpu/drm/i915/display/intel_atomic_plane.h drivers/gpu/drm/i915/display/intel_audio.h +drivers/gpu/drm/i915/display/intel_audio_regs.h +drivers/gpu/drm/i915/display/intel_backlight.h +drivers/gpu/drm/i915/display/intel_backlight_regs.h drivers/gpu/drm/i915/display/intel_bios.h drivers/gpu/drm/i915/display/intel_bw.h drivers/gpu/drm/i915/display/intel_cdclk.h drivers/gpu/drm/i915/display/intel_color.h drivers/gpu/drm/i915/display/intel_combo_phy.h +drivers/gpu/drm/i915/display/intel_combo_phy_regs.h drivers/gpu/drm/i915/display/intel_connector.h drivers/gpu/drm/i915/display/intel_crt.h drivers/gpu/drm/i915/display/intel_crtc.h +drivers/gpu/drm/i915/display/intel_crtc_state_dump.h drivers/gpu/drm/i915/display/intel_cursor.h drivers/gpu/drm/i915/display/intel_ddi.h drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h drivers/gpu/drm/i915/display/intel_de.h drivers/gpu/drm/i915/display/intel_display.h +drivers/gpu/drm/i915/display/intel_display_core.h drivers/gpu/drm/i915/display/intel_display_debugfs.h drivers/gpu/drm/i915/display/intel_display_power.h +drivers/gpu/drm/i915/display/intel_display_power_map.h +drivers/gpu/drm/i915/display/intel_display_power_well.h +drivers/gpu/drm/i915/display/intel_display_trace.h drivers/gpu/drm/i915/display/intel_display_types.h +drivers/gpu/drm/i915/display/intel_dkl_phy.h drivers/gpu/drm/i915/display/intel_dmc.h +drivers/gpu/drm/i915/display/intel_dmc_regs.h drivers/gpu/drm/i915/display/intel_dp.h drivers/gpu/drm/i915/display/intel_dp_aux.h drivers/gpu/drm/i915/display/intel_dp_aux_backlight.h @@ -60,11 +59,16 @@ drivers/gpu/drm/i915/display/intel_dp_mst.h drivers/gpu/drm/i915/display/intel_dpio_phy.h drivers/gpu/drm/i915/display/intel_dpll.h drivers/gpu/drm/i915/display/intel_dpll_mgr.h +drivers/gpu/drm/i915/display/intel_dpt.h +drivers/gpu/drm/i915/display/intel_drrs.h drivers/gpu/drm/i915/display/intel_dsb.h drivers/gpu/drm/i915/display/intel_dsi.h drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.h +drivers/gpu/drm/i915/display/intel_dsi_vbt.h drivers/gpu/drm/i915/display/intel_dvo.h +drivers/gpu/drm/i915/display/intel_dvo_dev.h drivers/gpu/drm/i915/display/intel_fb.h +drivers/gpu/drm/i915/display/intel_fb_pin.h drivers/gpu/drm/i915/display/intel_fbc.h drivers/gpu/drm/i915/display/intel_fbdev.h drivers/gpu/drm/i915/display/intel_fdi.h @@ -72,24 +76,34 @@ drivers/gpu/drm/i915/display/intel_fifo_underrun.h drivers/gpu/drm/i915/display/intel_frontbuffer.h drivers/gpu/drm/i915/display/intel_global_state.h drivers/gpu/drm/i915/display/intel_gmbus.h +drivers/gpu/drm/i915/display/intel_gmbus_regs.h drivers/gpu/drm/i915/display/intel_hdcp.h +drivers/gpu/drm/i915/display/intel_hdcp_regs.h drivers/gpu/drm/i915/display/intel_hdmi.h drivers/gpu/drm/i915/display/intel_hotplug.h drivers/gpu/drm/i915/display/intel_lpe_audio.h drivers/gpu/drm/i915/display/intel_lspcon.h drivers/gpu/drm/i915/display/intel_lvds.h +drivers/gpu/drm/i915/display/intel_modeset_setup.h +drivers/gpu/drm/i915/display/intel_modeset_verify.h drivers/gpu/drm/i915/display/intel_opregion.h drivers/gpu/drm/i915/display/intel_overlay.h drivers/gpu/drm/i915/display/intel_panel.h +drivers/gpu/drm/i915/display/intel_pch_display.h +drivers/gpu/drm/i915/display/intel_pch_refclk.h drivers/gpu/drm/i915/display/intel_pipe_crc.h +drivers/gpu/drm/i915/display/intel_plane_initial.h drivers/gpu/drm/i915/display/intel_pps.h drivers/gpu/drm/i915/display/intel_psr.h drivers/gpu/drm/i915/display/intel_qp_tables.h drivers/gpu/drm/i915/display/intel_quirks.h drivers/gpu/drm/i915/display/intel_sdvo.h drivers/gpu/drm/i915/display/intel_sdvo_regs.h +drivers/gpu/drm/i915/display/intel_snps_phy.h +drivers/gpu/drm/i915/display/intel_snps_phy_regs.h drivers/gpu/drm/i915/display/intel_sprite.h drivers/gpu/drm/i915/display/intel_tc.h +drivers/gpu/drm/i915/display/intel_tc_phy_regs.h drivers/gpu/drm/i915/display/intel_tv.h drivers/gpu/drm/i915/display/intel_vbt_defs.h drivers/gpu/drm/i915/display/intel_vdsc.h @@ -97,10 +111,18 @@ drivers/gpu/drm/i915/display/intel_vga.h drivers/gpu/drm/i915/display/intel_vrr.h drivers/gpu/drm/i915/display/skl_scaler.h drivers/gpu/drm/i915/display/skl_universal_plane.h -drivers/gpu/drm/i915/dma_resv_utils.h +drivers/gpu/drm/i915/display/skl_watermark.h +drivers/gpu/drm/i915/display/vlv_dsi.h +drivers/gpu/drm/i915/display/vlv_dsi_pll.h +drivers/gpu/drm/i915/display/vlv_dsi_pll_regs.h +drivers/gpu/drm/i915/display/vlv_dsi_regs.h drivers/gpu/drm/i915/gem/i915_gem_clflush.h drivers/gpu/drm/i915/gem/i915_gem_context.h drivers/gpu/drm/i915/gem/i915_gem_context_types.h +drivers/gpu/drm/i915/gem/i915_gem_create.h +drivers/gpu/drm/i915/gem/i915_gem_dmabuf.h +drivers/gpu/drm/i915/gem/i915_gem_domain.h +drivers/gpu/drm/i915/gem/i915_gem_internal.h drivers/gpu/drm/i915/gem/i915_gem_ioctls.h drivers/gpu/drm/i915/gem/i915_gem_lmem.h drivers/gpu/drm/i915/gem/i915_gem_mman.h @@ -110,6 +132,8 @@ drivers/gpu/drm/i915/gem/i915_gem_pm.h drivers/gpu/drm/i915/gem/i915_gem_region.h drivers/gpu/drm/i915/gem/i915_gem_shrinker.h drivers/gpu/drm/i915/gem/i915_gem_stolen.h +drivers/gpu/drm/i915/gem/i915_gem_tiling.h +drivers/gpu/drm/i915/gem/i915_gem_ttm.h drivers/gpu/drm/i915/gem/i915_gemfs.h drivers/gpu/drm/i915/gt/gen8_ppgtt.h drivers/gpu/drm/i915/gt/intel_breadcrumbs.h @@ -119,20 +143,26 @@ drivers/gpu/drm/i915/gt/intel_context_types.h drivers/gpu/drm/i915/gt/intel_engine.h drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h drivers/gpu/drm/i915/gt/intel_engine_pm.h +drivers/gpu/drm/i915/gt/intel_engine_regs.h drivers/gpu/drm/i915/gt/intel_engine_types.h drivers/gpu/drm/i915/gt/intel_engine_user.h drivers/gpu/drm/i915/gt/intel_ggtt_fencing.h +drivers/gpu/drm/i915/gt/intel_ggtt_gmch.h drivers/gpu/drm/i915/gt/intel_gpu_commands.h +drivers/gpu/drm/i915/gt/intel_gsc.h drivers/gpu/drm/i915/gt/intel_gt.h drivers/gpu/drm/i915/gt/intel_gt_buffer_pool_types.h drivers/gpu/drm/i915/gt/intel_gt_irq.h +drivers/gpu/drm/i915/gt/intel_gt_mcr.h drivers/gpu/drm/i915/gt/intel_gt_pm.h drivers/gpu/drm/i915/gt/intel_gt_pm_irq.h +drivers/gpu/drm/i915/gt/intel_gt_regs.h drivers/gpu/drm/i915/gt/intel_gt_requests.h drivers/gpu/drm/i915/gt/intel_gt_types.h drivers/gpu/drm/i915/gt/intel_gtt.h -drivers/gpu/drm/i915/gt/intel_llc.h +drivers/gpu/drm/i915/gt/intel_hwconfig.h drivers/gpu/drm/i915/gt/intel_llc_types.h +drivers/gpu/drm/i915/gt/intel_migrate_types.h drivers/gpu/drm/i915/gt/intel_rc6.h drivers/gpu/drm/i915/gt/intel_rc6_types.h drivers/gpu/drm/i915/gt/intel_region_lmem.h @@ -142,6 +172,7 @@ drivers/gpu/drm/i915/gt/intel_ring.h drivers/gpu/drm/i915/gt/intel_ring_types.h drivers/gpu/drm/i915/gt/intel_rps.h drivers/gpu/drm/i915/gt/intel_rps_types.h +drivers/gpu/drm/i915/gt/intel_sa_media.h drivers/gpu/drm/i915/gt/intel_sseu.h drivers/gpu/drm/i915/gt/intel_timeline.h drivers/gpu/drm/i915/gt/intel_timeline_types.h @@ -149,16 +180,22 @@ drivers/gpu/drm/i915/gt/intel_workarounds.h drivers/gpu/drm/i915/gt/intel_workarounds_types.h drivers/gpu/drm/i915/gt/sysfs_engines.h drivers/gpu/drm/i915/gt/uc/abi/guc_actions_abi.h +drivers/gpu/drm/i915/gt/uc/abi/guc_actions_slpc_abi.h drivers/gpu/drm/i915/gt/uc/abi/guc_communication_ctb_abi.h drivers/gpu/drm/i915/gt/uc/abi/guc_communication_mmio_abi.h drivers/gpu/drm/i915/gt/uc/abi/guc_errors_abi.h +drivers/gpu/drm/i915/gt/uc/abi/guc_klvs_abi.h drivers/gpu/drm/i915/gt/uc/abi/guc_messages_abi.h drivers/gpu/drm/i915/gt/uc/intel_guc.h +drivers/gpu/drm/i915/gt/uc/intel_guc_ads.h drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h drivers/gpu/drm/i915/gt/uc/intel_guc_fw.h drivers/gpu/drm/i915/gt/uc/intel_guc_fwif.h drivers/gpu/drm/i915/gt/uc/intel_guc_log.h +drivers/gpu/drm/i915/gt/uc/intel_guc_rc.h drivers/gpu/drm/i915/gt/uc/intel_guc_reg.h +drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.h +drivers/gpu/drm/i915/gt/uc/intel_guc_slpc_types.h drivers/gpu/drm/i915/gt/uc/intel_guc_submission.h drivers/gpu/drm/i915/gt/uc/intel_huc.h drivers/gpu/drm/i915/gt/uc/intel_huc_fw.h @@ -167,18 +204,27 @@ drivers/gpu/drm/i915/gt/uc/intel_uc_fw.h drivers/gpu/drm/i915/gt/uc/intel_uc_fw_abi.h drivers/gpu/drm/i915/i915_active.h drivers/gpu/drm/i915/i915_active_types.h +drivers/gpu/drm/i915/i915_cmd_parser.h drivers/gpu/drm/i915/i915_debugfs.h +drivers/gpu/drm/i915/i915_driver.h +drivers/gpu/drm/i915/i915_drm_client.h drivers/gpu/drm/i915/i915_drv.h +drivers/gpu/drm/i915/i915_file_private.h drivers/gpu/drm/i915/i915_fixed.h drivers/gpu/drm/i915/i915_gem.h +drivers/gpu/drm/i915/i915_gem_evict.h drivers/gpu/drm/i915/i915_gem_gtt.h -drivers/gpu/drm/i915/i915_globals.h +drivers/gpu/drm/i915/i915_gem_ww.h +drivers/gpu/drm/i915/i915_getparam.h drivers/gpu/drm/i915/i915_gpu_error.h drivers/gpu/drm/i915/i915_ioc32.h +drivers/gpu/drm/i915/i915_ioctl.h +drivers/gpu/drm/i915/i915_iosf_mbi.h drivers/gpu/drm/i915/i915_irq.h drivers/gpu/drm/i915/i915_memcpy.h drivers/gpu/drm/i915/i915_mitigations.h drivers/gpu/drm/i915/i915_params.h +drivers/gpu/drm/i915/i915_pci.h drivers/gpu/drm/i915/i915_perf.h drivers/gpu/drm/i915/i915_perf_types.h drivers/gpu/drm/i915/i915_pmu.h @@ -186,6 +232,7 @@ drivers/gpu/drm/i915/i915_priolist_types.h drivers/gpu/drm/i915/i915_pvinfo.h drivers/gpu/drm/i915/i915_query.h drivers/gpu/drm/i915/i915_reg.h +drivers/gpu/drm/i915/i915_reg_defs.h drivers/gpu/drm/i915/i915_request.h drivers/gpu/drm/i915/i915_scatterlist.h drivers/gpu/drm/i915/i915_scheduler.h @@ -197,32 +244,53 @@ drivers/gpu/drm/i915/i915_sw_fence_work.h drivers/gpu/drm/i915/i915_switcheroo.h drivers/gpu/drm/i915/i915_syncmap.h drivers/gpu/drm/i915/i915_sysfs.h +drivers/gpu/drm/i915/i915_tasklet.h drivers/gpu/drm/i915/i915_trace.h +drivers/gpu/drm/i915/i915_ttm_buddy_manager.h drivers/gpu/drm/i915/i915_utils.h drivers/gpu/drm/i915/i915_vgpu.h drivers/gpu/drm/i915/i915_vma.h +drivers/gpu/drm/i915/i915_vma_resource.h drivers/gpu/drm/i915/i915_vma_types.h drivers/gpu/drm/i915/intel_device_info.h drivers/gpu/drm/i915/intel_dram.h drivers/gpu/drm/i915/intel_gvt.h +drivers/gpu/drm/i915/intel_mchbar_regs.h drivers/gpu/drm/i915/intel_memory_region.h drivers/gpu/drm/i915/intel_pch.h +drivers/gpu/drm/i915/intel_pci_config.h +drivers/gpu/drm/i915/intel_pcode.h drivers/gpu/drm/i915/intel_pm.h +drivers/gpu/drm/i915/intel_pm_types.h drivers/gpu/drm/i915/intel_region_ttm.h drivers/gpu/drm/i915/intel_runtime_pm.h -drivers/gpu/drm/i915/intel_sideband.h +drivers/gpu/drm/i915/intel_sbi.h drivers/gpu/drm/i915/intel_step.h drivers/gpu/drm/i915/intel_uncore.h drivers/gpu/drm/i915/intel_wakeref.h drivers/gpu/drm/i915/intel_wopcm.h +drivers/gpu/drm/i915/pxp/intel_pxp.h +drivers/gpu/drm/i915/pxp/intel_pxp_pm.h +drivers/gpu/drm/i915/pxp/intel_pxp_types.h +drivers/gpu/drm/i915/vlv_sideband.h +drivers/gpu/drm/i915/vlv_sideband_reg.h drivers/gpu/drm/i915/vlv_suspend.h drivers/gpu/drm/ttm/ttm_module.h drivers/i2c/i2c-core.h -drivers/platform/x86/intel_ips.h include/acpi/button.h include/acpi/video.h -include/asm-generic/div64.h -include/asm-generic/export.h +include/asm-generic/set_memory.h +include/drm/display/drm_dp.h +include/drm/display/drm_dp_dual_mode_helper.h +include/drm/display/drm_dp_helper.h +include/drm/display/drm_dp_mst_helper.h +include/drm/display/drm_dsc.h +include/drm/display/drm_dsc_helper.h +include/drm/display/drm_hdcp.h +include/drm/display/drm_hdcp_helper.h +include/drm/display/drm_hdmi_helper.h +include/drm/display/drm_scdc.h +include/drm/display/drm_scdc_helper.h include/drm/drm_aperture.h include/drm/drm_atomic.h include/drm/drm_atomic_helper.h @@ -232,6 +300,7 @@ include/drm/drm_audio_component.h include/drm/drm_auth.h include/drm/drm_blend.h include/drm/drm_bridge.h +include/drm/drm_buddy.h include/drm/drm_cache.h include/drm/drm_client.h include/drm/drm_color_mgmt.h @@ -243,11 +312,7 @@ include/drm/drm_debugfs.h include/drm/drm_debugfs_crc.h include/drm/drm_device.h include/drm/drm_displayid.h -include/drm/drm_dp_dual_mode_helper.h -include/drm/drm_dp_helper.h -include/drm/drm_dp_mst_helper.h include/drm/drm_drv.h -include/drm/drm_dsc.h include/drm/drm_edid.h include/drm/drm_encoder.h include/drm/drm_fb_helper.h @@ -255,8 +320,7 @@ include/drm/drm_file.h include/drm/drm_fourcc.h include/drm/drm_framebuffer.h include/drm/drm_gem.h -include/drm/drm_hashtab.h -include/drm/drm_hdcp.h +include/drm/drm_gem_atomic_helper.h include/drm/drm_ioctl.h include/drm/drm_lease.h include/drm/drm_legacy.h @@ -269,14 +333,17 @@ include/drm/drm_modes.h include/drm/drm_modeset_helper.h include/drm/drm_modeset_helper_vtables.h include/drm/drm_modeset_lock.h +include/drm/drm_of.h +include/drm/drm_panel.h include/drm/drm_plane.h include/drm/drm_plane_helper.h include/drm/drm_prime.h include/drm/drm_print.h +include/drm/drm_privacy_screen_consumer.h +include/drm/drm_privacy_screen_machine.h include/drm/drm_probe_helper.h include/drm/drm_property.h include/drm/drm_rect.h -include/drm/drm_scdc_helper.h include/drm/drm_self_refresh_helper.h include/drm/drm_syncobj.h include/drm/drm_sysfs.h @@ -308,13 +375,12 @@ include/linux/anon_inodes.h include/linux/average.h include/linux/backlight.h include/linux/circ_buf.h -include/linux/dma-buf-map.h include/linux/dma-buf.h include/linux/dma-fence-array.h include/linux/dma-fence-chain.h +include/linux/dma-fence-unwrap.h include/linux/dma-fence.h include/linux/dma-resv.h -include/linux/dmar.h include/linux/fb.h include/linux/firmware.h include/linux/fs_parser.h @@ -324,18 +390,15 @@ include/linux/i2c-algo-bit.h include/linux/i2c-smbus.h include/linux/i2c.h include/linux/input.h -include/linux/intel-iommu.h +include/linux/interval_tree.h include/linux/interval_tree_generic.h include/linux/io-64-nonatomic-lo-hi.h include/linux/io-mapping.h -include/linux/ioasid.h -include/linux/iommu.h -include/linux/iova.h -include/linux/kfifo.h +include/linux/iosys-map.h include/linux/mfd/intel_soc_pmic.h +include/linux/mmu_notifier.h include/linux/oom.h include/linux/pagevec.h -include/linux/pci-acpi.h include/linux/pinctrl/consumer.h include/linux/pinctrl/machine.h include/linux/pinctrl/pinctrl-state.h @@ -345,11 +408,11 @@ include/linux/pwm.h include/linux/regmap.h include/linux/regulator/consumer.h include/linux/relay.h -include/linux/rtmutex.h include/linux/shmem_fs.h -include/linux/swiotlb.h include/linux/sync_file.h +include/linux/util_macros.h include/linux/vga_switcheroo.h +include/linux/vgaarb.h include/linux/xattr.h include/media/cec-notifier.h include/media/cec.h @@ -367,14 +430,15 @@ include/uapi/linux/fb.h include/uapi/linux/i2c.h include/uapi/linux/input-event-codes.h include/uapi/linux/input.h -include/uapi/linux/iommu.h include/uapi/linux/lirc.h include/uapi/linux/media-bus-format.h include/uapi/linux/oom.h include/uapi/linux/xattr.h include/video/display_timing.h include/video/mipi_display.h +include/video/of_display_timing.h include/video/of_videomode.h +include/video/vga.h include/video/videomode.h include/xen/balloon.h include/xen/interface/hvm/start_info.h diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/dummies.c b/repos/pc/src/drivers/framebuffer/intel/pc/dummies.c index 6a0a341cb9..332cbf55b9 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/dummies.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/dummies.c @@ -12,11 +12,9 @@ */ #include -#include #include "i915_drv.h" -#include #include #include #include @@ -33,11 +31,6 @@ #include -const guid_t pci_acpi_dsm_guid = - GUID_INIT(0xe5c937d0, 0x3553, 0x4d7a, - 0x91, 0x17, 0xea, 0x4d, 0x19, 0xc3, 0x43, 0x4d); - - void register_syscore_ops(struct syscore_ops * ops) { lx_emul_trace(__func__); @@ -50,13 +43,6 @@ void unregister_shrinker(struct shrinker * shrinker) } -int register_shrinker(struct shrinker * shrinker) -{ - lx_emul_trace(__func__); - return 0; -} - - void unregister_handler_proc(unsigned int irq,struct irqaction * action) { lx_emul_trace(__func__); @@ -114,18 +100,6 @@ int ___ratelimit(struct ratelimit_state * rs, const char * func) struct net init_net; -#include - -void kfree_skb(struct sk_buff * skb) -{ - if (!skb) - return; - - lx_emul_trace(__func__); - printk("%s:%d: leaking skb: %p\n", __func__, __LINE__, skb); -} - - #include int register_pernet_subsys(struct pernet_operations * ops) @@ -142,6 +116,7 @@ int set_pages_uc(struct page * page,int numpages) } + bool irq_work_queue(struct irq_work * work) { lx_emul_trace(__func__); @@ -149,18 +124,14 @@ bool irq_work_queue(struct irq_work * work) } -void iomap_free(resource_size_t base, unsigned long size) -{ - lx_emul_trace_and_stop(__func__); -} - - void acpi_video_unregister(void) { lx_emul_trace_and_stop(__func__); } +#include + acpi_status acpi_remove_address_space_handler(acpi_handle device, acpi_adr_space_type space_id, acpi_adr_space_handler handler) @@ -169,23 +140,6 @@ acpi_status acpi_remove_address_space_handler(acpi_handle device, } -acpi_status acpi_buffer_to_resource(u8 * aml_buffer,u16 aml_buffer_length, - struct acpi_resource ** resource_ptr) -{ - lx_emul_trace_and_stop(__func__); -} - - -acpi_status acpi_install_address_space_handler(acpi_handle device, - acpi_adr_space_type space_id, - acpi_adr_space_handler handler, - acpi_adr_space_setup setup, - void * context) -{ - lx_emul_trace_and_stop(__func__); -} - - int acpi_video_register(void) { lx_emul_trace(__func__); @@ -200,18 +154,6 @@ acpi_status acpi_get_name(acpi_handle object, u32 name_type, } -acpi_status acpi_get_table(acpi_string signature, u32 instance, struct acpi_table_header **out_table) -{ - lx_emul_trace_and_stop(__func__); -} - - -void acpi_put_table(struct acpi_table_header *table) -{ - lx_emul_trace_and_stop(__func__); -} - - void cpu_latency_qos_add_request(struct pm_qos_request *req, s32 value) { lx_emul_trace(__func__); @@ -243,45 +185,18 @@ enum acpi_backlight_type acpi_video_get_backlight_type(void) } -bool pciehp_is_native(struct pci_dev *bridge) -{ - lx_emul_trace_and_stop(__func__); -} - - -struct irq_domain *pci_host_bridge_acpi_msi_domain(struct pci_bus *bus) -{ - lx_emul_trace(__func__); - return NULL; -} - - int pnp_range_reserved(resource_size_t start, resource_size_t end) { lx_emul_trace_and_stop(__func__); } -int utf16s_to_utf8s(const wchar_t *pwcs, int len, enum utf16_endian endian, - u8 *s, int maxlen) -{ - lx_emul_trace_and_stop(__func__); -} - - int __get_user_nocheck_1(void) { lx_emul_trace_and_stop(__func__); } -unsigned long -raw_copy_to_user(void __user *to, const void *from, unsigned long n) -{ - lx_emul_trace_and_stop(__func__); -} - - unsigned long raw_copy_from_user(void *to, const void __user * from, unsigned long n) { @@ -320,9 +235,10 @@ void intel_engines_add_sysfs(struct drm_i915_private * i915) } -void i915_pmu_init(void) +int i915_pmu_init(void) { lx_emul_trace(__func__); + return 0; } @@ -332,12 +248,6 @@ void i915_pmu_register(struct drm_i915_private * i915) } -void intel_gt_driver_late_release(struct intel_gt * gt) -{ - lx_emul_trace(__func__); -} - - bool intel_vgpu_active(struct drm_i915_private * dev_priv) { lx_emul_trace(__func__); @@ -365,25 +275,6 @@ void i915_perf_init(struct drm_i915_private * i915) } -void intel_gt_init_hw_early(struct intel_gt * gt, struct i915_ggtt * ggtt) -{ - lx_emul_trace(__func__); -} - - -int intel_gt_probe_lmem(struct intel_gt * gt) -{ - lx_emul_trace(__func__); - return 0; -} - - -void intel_gt_init_workarounds(struct drm_i915_private * i915) -{ - lx_emul_trace(__func__); -} - - void gen8_gt_irq_handler(struct intel_gt * gt,u32 master_ctl) { lx_emul_trace(__func__); @@ -463,34 +354,6 @@ int i915_gemfs_init(struct drm_i915_private * i915) } -int __init i915_global_context_init(void) -{ - lx_emul_trace(__func__); - return 0; -} - - -int __init i915_global_gem_context_init(void) -{ - lx_emul_trace(__func__); - return 0; -} - - -int __init i915_global_request_init(void) -{ - lx_emul_trace(__func__); - return 0; -} - - -int __init i915_global_scheduler_init(void) -{ - lx_emul_trace(__func__); - return 0; -} - - int intel_vgt_balloon(struct i915_ggtt * ggtt) { lx_emul_trace(__func__); @@ -510,38 +373,12 @@ void i915_gem_object_release_mmap_offset(struct drm_i915_gem_object * obj) } -void intel_dsb_prepare(struct intel_crtc_state *crtc_state) -{ - lx_emul_trace(__func__); -} - - -void intel_dsb_cleanup(struct intel_crtc_state *crtc_state) -{ - lx_emul_trace(__func__); -} - - -void intel_dsb_commit(const struct intel_crtc_state *crtc_state) -{ - lx_emul_trace(__func__); -} - - #include struct smp_ops smp_ops = { }; EXPORT_SYMBOL_GPL(smp_ops); -#include - -u32 prandom_u32(void) -{ - lx_emul_trace_and_stop(__func__); -} - - int wbinvd_on_all_cpus(void) { lx_emul_trace(__func__); @@ -549,13 +386,6 @@ int wbinvd_on_all_cpus(void) } -void srcu_drive_gp(struct work_struct *wp); -void srcu_drive_gp(struct work_struct *wp) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int pci_bus_read_config_byte(struct pci_bus *bus, unsigned int devfn, @@ -590,3 +420,341 @@ void pci_disable_msi(struct pci_dev *dev) { lx_emul_trace(__func__); } + + +#include + +u32 __get_random_u32_below(u32 ceil) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_map); + + +const struct attribute_group dev_attr_physical_location_group = {}; + + +typedef u32 acpi_status; +struct acpi_resource; + +extern acpi_status acpi_buffer_to_resource(u8 * aml_buffer,u16 aml_buffer_length,struct acpi_resource ** resource_ptr); +acpi_status acpi_buffer_to_resource(u8 * aml_buffer,u16 aml_buffer_length,struct acpi_resource ** resource_ptr) +{ + lx_emul_trace_and_stop(__func__); +} + + +struct acpi_device; + +extern int acpi_bus_get_status(struct acpi_device * device); +int acpi_bus_get_status(struct acpi_device * device) +{ + lx_emul_trace_and_stop(__func__); +} + + +void acpi_device_notify(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +extern bool dev_add_physical_location(struct device * dev); +bool dev_add_physical_location(struct device * dev) +{ + lx_emul_trace(__func__); + return false; +} + + +#include + +void __fix_address kfree_skb_reason(struct sk_buff * skb,enum skb_drop_reason reason) +{ + lx_emul_trace(__func__); +} + + +#include + +struct ctl_table_header * register_sysctl(const char * path,struct ctl_table * table) +{ + lx_emul_trace(__func__); + return NULL; +} + + +#include + +int register_acpi_bus_type(struct acpi_bus_type * type) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +void __init __register_sysctl_init(const char * path,struct ctl_table * table,const char * table_name) +{ + lx_emul_trace(__func__); +} + + +#include + +int sysfs_add_file_to_group(struct kobject * kobj,const struct attribute * attr,const char * group) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +u16 get_random_u16(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int acpi_bus_attach_private_data(acpi_handle handle,void * data) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void acpi_bus_detach_private_data(acpi_handle handle) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int acpi_bus_get_private_data(acpi_handle handle,void ** data) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void acpi_dev_clear_dependencies(struct acpi_device * supplier) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern acpi_status acpi_install_address_space_handler(acpi_handle device,acpi_adr_space_type space_id,acpi_adr_space_handler handler,acpi_adr_space_setup setup,void * context); +acpi_status acpi_install_address_space_handler(acpi_handle device,acpi_adr_space_type space_id,acpi_adr_space_handler handler,acpi_adr_space_setup setup,void * context) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +bool drm_firmware_drivers_only(void) +{ + lx_emul_trace(__func__); + return 0; +} + + +extern int __init i915_context_module_init(void); +int __init i915_context_module_init(void) +{ + lx_emul_trace(__func__); + return 0; +} + + +extern int __init i915_gem_context_module_init(void); +int __init i915_gem_context_module_init(void) +{ + lx_emul_trace(__func__); + return 0; +} + + +extern int __init i915_request_module_init(void); +int __init i915_request_module_init(void) +{ + lx_emul_trace(__func__); + return 0; +} + + +extern int __init i915_scheduler_module_init(void); +int __init i915_scheduler_module_init(void) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +int iommu_device_use_default_domain(struct device * dev) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +void iommu_device_unuse_default_domain(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +extern struct ttm_device_funcs * i915_ttm_driver(void); +struct ttm_device_funcs * i915_ttm_driver(void) +{ + lx_emul_trace(__func__); + return NULL; +} + + +#include + +int register_shrinker(struct shrinker * shrinker,const char * fmt,...) +{ + lx_emul_trace(__func__); + return 0; +} + + +extern void intel_guc_init_early(struct intel_guc * guc); +void intel_guc_init_early(struct intel_guc * guc) +{ + lx_emul_trace(__func__); +} + + +extern void intel_huc_init_early(struct intel_huc * huc); +void intel_huc_init_early(struct intel_huc * huc) +{ + lx_emul_trace(__func__); +} + + +extern int intel_gt_tiles_init(struct drm_i915_private * i915); +int intel_gt_tiles_init(struct drm_i915_private * i915) +{ + lx_emul_trace(__func__); + return 0; +} + + +void rt_mutex_setprio(struct task_struct *p, struct task_struct *pi_task) +{ + lx_emul_trace(__func__); +} + + +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace(__func__); +} + + +#include + +bool acpi_video_backlight_use_native(void) +{ + lx_emul_trace(__func__); + return 1; +} + + +#include + +void net_ns_init(void) +{ + lx_emul_trace(__func__); +} + + +#include + +void iomap_free(resource_size_t base, unsigned long size) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void *kmalloc_large_node(size_t size, gfp_t flags, int node) +{ + lx_emul_trace_and_stop(__func__); +} + + +void * high_memory; + + +void intel_dsb_prepare(struct intel_crtc_state *crtc_state) +{ + lx_emul_trace(__func__); +} + + +void intel_dsb_cleanup(struct intel_crtc_state *crtc_state) +{ + lx_emul_trace(__func__); +} + + +void intel_dsb_commit(const struct intel_crtc_state *crtc_state) +{ + lx_emul_trace(__func__); +} + + +void intel_dsb_reg_write(const struct intel_crtc_state *crtc_state, + i915_reg_t reg, u32 val) +{ + lx_emul_trace(__func__); +} + + +void intel_dsb_indexed_reg_write(const struct intel_crtc_state *crtc_state, + i915_reg_t reg, u32 val) +{ + lx_emul_trace(__func__); +} + + +void acpi_device_notify_remove(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +void software_node_notify_remove(struct device * dev) +{ + lx_emul_trace(__func__); +} diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/gem.c b/repos/pc/src/drivers/framebuffer/intel/pc/gem.c index eb63762d1b..1e43bd9f1c 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/gem.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/gem.c @@ -17,17 +17,22 @@ #include "i915_drv.h" #include "intel_pm.h" +#include "../drivers/gpu/drm/i915/gt/intel_gt.h" +#include "../drivers/gpu/drm/i915/i915_file_private.h" int i915_gem_object_unbind(struct drm_i915_gem_object *obj, unsigned long flags) { struct intel_runtime_pm *rpm = &to_i915(obj->base.dev)->runtime_pm; + bool vm_trylock = !!(flags & I915_GEM_OBJECT_UNBIND_VM_TRYLOCK); LIST_HEAD(still_in_list); intel_wakeref_t wakeref; struct i915_vma *vma; int ret; + assert_object_held(obj); + if (list_empty(&obj->vma.list)) return 0; @@ -45,8 +50,6 @@ try_again: while (!ret && (vma = list_first_entry_or_null(&obj->vma.list, struct i915_vma, obj_link))) { - struct i915_address_space *vm = vma->vm; - list_move_tail(&vma->obj_link, &still_in_list); if (!i915_vma_is_bound(vma, I915_VMA_BIND_MASK)) continue; @@ -56,34 +59,44 @@ try_again: break; } + /* + * Requiring the vm destructor to take the object lock + * before destroying a vma would help us eliminate the + * i915_vm_tryget() here, AND thus also the barrier stuff + * at the end. That's an easy fix, but sleeping locks in + * a kthread should generally be avoided. + */ ret = -EAGAIN; - if (!i915_vm_tryopen(vm)) + if (!i915_vm_tryget(vma->vm)) break; - /* Prevent vma being freed by i915_vma_parked as we unbind */ - vma = __i915_vma_get(vma); spin_unlock(&obj->vma.lock); - if (vma) { - ret = -EBUSY; - if (flags & I915_GEM_OBJECT_UNBIND_ACTIVE || - !i915_vma_is_active(vma)) { - if (flags & I915_GEM_OBJECT_UNBIND_VM_TRYLOCK) { - if (mutex_trylock(&vma->vm->mutex)) { - ret = __i915_vma_unbind(vma); - mutex_unlock(&vma->vm->mutex); - } else { - ret = -EBUSY; - } - } else { - ret = i915_vma_unbind(vma); - } - } + /* + * Since i915_vma_parked() takes the object lock + * before vma destruction, it won't race us here, + * and destroy the vma from under us. + */ - __i915_vma_put(vma); + ret = -EBUSY; + if (flags & I915_GEM_OBJECT_UNBIND_ASYNC) { + assert_object_held(vma->obj); + ret = i915_vma_unbind_async(vma, vm_trylock); } - i915_vm_close(vm); + if (ret == -EBUSY && (flags & I915_GEM_OBJECT_UNBIND_ACTIVE || + !i915_vma_is_active(vma))) { + if (vm_trylock) { + if (mutex_trylock(&vma->vm->mutex)) { + ret = __i915_vma_unbind(vma); + mutex_unlock(&vma->vm->mutex); + } + } else { + ret = i915_vma_unbind(vma); + } + } + + i915_vm_put(vma->vm); spin_lock(&obj->vma.lock); } list_splice_init(&still_in_list, &obj->vma.list); @@ -114,16 +127,18 @@ static void discard_ggtt_vma(struct i915_vma *vma) struct i915_vma * i915_gem_object_ggtt_pin_ww(struct drm_i915_gem_object *obj, struct i915_gem_ww_ctx *ww, - const struct i915_ggtt_view *view, + const struct i915_gtt_view *view, u64 size, u64 alignment, u64 flags) { struct drm_i915_private *i915 = to_i915(obj->base.dev); - struct i915_ggtt *ggtt = &i915->ggtt; + struct i915_ggtt *ggtt = to_gt(i915)->ggtt; struct i915_vma *vma; int ret; + GEM_WARN_ON(!ww); + if (flags & PIN_MAPPABLE && - (!view || view->type == I915_GGTT_VIEW_NORMAL)) { + (!view || view->type == I915_GTT_VIEW_NORMAL)) { /* * If the required space is larger than the available * aperture, we will not able to find a slot for the @@ -166,8 +181,19 @@ new_vma: if (i915_vma_is_pinned(vma) || i915_vma_is_active(vma)) return ERR_PTR(-ENOSPC); + /* + * If this misplaced vma is too big (i.e, at-least + * half the size of aperture) or hasn't been pinned + * mappable before, we ignore the misplacement when + * PIN_NONBLOCK is set in order to avoid the ping-pong + * issue described above. In other words, we try to + * avoid the costly operation of unbinding this vma + * from the GGTT and rebinding it back because there + * may not be enough space for this vma in the aperture. + */ if (flags & PIN_MAPPABLE && - vma->fence_size > ggtt->mappable_end / 2) + (vma->fence_size > ggtt->mappable_end / 2 || + !i915_vma_is_map_and_fenceable(vma))) return ERR_PTR(-ENOSPC); } @@ -181,10 +207,7 @@ new_vma: return ERR_PTR(ret); } - if (ww) - ret = i915_vma_pin_ww(vma, ww, size, alignment, flags | PIN_GLOBAL); - else - ret = i915_vma_pin(vma, size, alignment, flags | PIN_GLOBAL); + ret = i915_vma_pin_ww(vma, ww, size, alignment, flags | PIN_GLOBAL); if (ret) return ERR_PTR(ret); @@ -204,46 +227,19 @@ new_vma: return vma; } -void i915_gem_ww_ctx_init(struct i915_gem_ww_ctx *ww, bool intr) +static inline int i915_gem_init_userptr(struct drm_i915_private *dev_priv) { - ww_acquire_init(&ww->ctx, &reservation_ww_class); - INIT_LIST_HEAD(&ww->obj_list); - ww->intr = intr; - ww->contended = NULL; +#ifdef CONFIG_MMU_NOTIFIER + rwlock_init(&dev_priv->mm.notifier_lock); +#endif + + return 0; } -static void i915_gem_ww_ctx_unlock_all(struct i915_gem_ww_ctx *ww) -{ - struct drm_i915_gem_object *obj; - - while ((obj = list_first_entry_or_null(&ww->obj_list, struct drm_i915_gem_object, obj_link))) { - list_del(&obj->obj_link); - i915_gem_object_unlock(obj); - } -} - -void i915_gem_ww_ctx_fini(struct i915_gem_ww_ctx *ww) -{ - i915_gem_ww_ctx_unlock_all(ww); - WARN_ON(ww->contended); - ww_acquire_fini(&ww->ctx); -} - -static void i915_gem_init__mm(struct drm_i915_private *i915) -{ - spin_lock_init(&i915->mm.obj_lock); - - init_llist_head(&i915->mm.free_list); - - INIT_LIST_HEAD(&i915->mm.purge_list); - INIT_LIST_HEAD(&i915->mm.shrink_list); - - i915_gem_init__objects(i915); -} - - int i915_gem_init(struct drm_i915_private *dev_priv) { + struct intel_gt *gt; + unsigned int i; int ret; /* request & enforce max resolution if smaller than hardware limits */ @@ -259,8 +255,7 @@ int i915_gem_init(struct drm_i915_private *dev_priv) /* We need to fallback to 4K pages if host doesn't support huge gtt. */ /* if (intel_vgpu_active(dev_priv) && !intel_vgpu_has_huge_gtt(dev_priv)) - mkwrite_device_info(dev_priv)->page_sizes = - I915_GTT_PAGE_SIZE_4K; + RUNTIME_INFO(dev_priv)->page_sizes = I915_GTT_PAGE_SIZE_4K; */ ret = i915_gem_init_userptr(dev_priv); @@ -268,7 +263,7 @@ int i915_gem_init(struct drm_i915_private *dev_priv) return ret; /* - intel_uc_fetch_firmwares(&dev_priv->gt.uc); + intel_uc_fetch_firmwares(&to_gt(dev_priv)->uc); intel_wopcm_init(&dev_priv->wopcm); */ ret = i915_init_ggtt(dev_priv); @@ -290,10 +285,13 @@ int i915_gem_init(struct drm_i915_private *dev_priv) intel_init_clock_gating(dev_priv); /* - ret = intel_gt_init(&dev_priv->gt); - if (ret) - goto err_unlock; + for_each_gt(gt, dev_priv, i) { + ret = intel_gt_init(gt); + if (ret) + goto err_unlock; + } */ + return 0; /* @@ -305,10 +303,15 @@ int i915_gem_init(struct drm_i915_private *dev_priv) err_unlock: i915_gem_drain_workqueue(dev_priv); -/* - if (ret != -EIO) - intel_uc_cleanup_firmwares(&dev_priv->gt.uc); -*/ + if (ret != -EIO) { + for_each_gt(gt, dev_priv, i) { + intel_gt_driver_remove(gt); + intel_gt_driver_release(gt); + /* + intel_uc_cleanup_firmwares(>->uc); + */ + } + } if (ret == -EIO) { /* @@ -316,17 +319,19 @@ err_unlock: * as wedged. But we only want to do this when the GPU is angry, * for all other failure, such as an allocation failure, bail. */ -/* - if (!intel_gt_is_wedged(&dev_priv->gt)) { - i915_probe_error(dev_priv, - "Failed to initialize GPU, declaring it wedged!\n"); - intel_gt_set_wedged(&dev_priv->gt); + /* + for_each_gt(gt, dev_priv, i) { + if (!intel_gt_is_wedged(gt)) { + i915_probe_error(dev_priv, + "Failed to initialize GPU, declaring it wedged!\n"); + intel_gt_set_wedged(gt); + } } -*/ + */ + /* Minimal basic recovery for KMS */ ret = i915_ggtt_enable_hw(dev_priv); - i915_ggtt_resume(&dev_priv->ggtt); - + i915_ggtt_resume(to_gt(dev_priv)->ggtt); intel_init_clock_gating(dev_priv); } @@ -340,6 +345,17 @@ void i915_gem_driver_register(struct drm_i915_private * i915) lx_emul_trace(__func__); } +static void i915_gem_init__mm(struct drm_i915_private *i915) +{ + spin_lock_init(&i915->mm.obj_lock); + + init_llist_head(&i915->mm.free_list); + + INIT_LIST_HEAD(&i915->mm.purge_list); + INIT_LIST_HEAD(&i915->mm.shrink_list); + + i915_gem_init__objects(i915); +} void i915_gem_init_early(struct drm_i915_private *dev_priv) { @@ -350,7 +366,7 @@ void i915_gem_init_early(struct drm_i915_private *dev_priv) lx_emul_trace(__func__); - spin_lock_init(&dev_priv->fb_tracking.lock); + spin_lock_init(&dev_priv->display.fb_tracking.lock); /* * Used by resource_size() check in shmem_get_pages in @@ -367,16 +383,25 @@ void i915_gem_init_early(struct drm_i915_private *dev_priv) int i915_gem_open(struct drm_i915_private *i915, struct drm_file *file) { struct drm_i915_file_private *file_priv; + struct i915_drm_client *client; + int ret = -ENOMEM; DRM_DEBUG("\n"); file_priv = kzalloc(sizeof(*file_priv), GFP_KERNEL); if (!file_priv) - return -ENOMEM; + goto err_alloc; + + client = i915_drm_client_add(&i915->clients); + if (IS_ERR(client)) { + ret = PTR_ERR(client); + goto err_client; + } file->driver_priv = file_priv; file_priv->dev_priv = i915; file_priv->file = file; + file_priv->client = client; file_priv->bsd_engine = -1; file_priv->hang_timestamp = jiffies; @@ -384,19 +409,17 @@ int i915_gem_open(struct drm_i915_private *i915, struct drm_file *file) /* ret = i915_gem_context_open(i915, file); if (ret) - kfree(file_priv); - - return ret; + goto err_context; */ - return 0; -} - - -int i915_gem_init_userptr(struct drm_i915_private *dev_priv) -{ -#ifdef CONFIG_MMU_NOTIFIER - spin_lock_init(&dev_priv->mm.notifier_lock); -#endif return 0; + + /* +err_context: + i915_drm_client_put(client); + */ +err_client: + kfree(file_priv); +err_alloc: + return ret; } diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/generated_dummies.c b/repos/pc/src/drivers/framebuffer/intel/pc/generated_dummies.c index ed525790de..b779c62990 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/generated_dummies.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/generated_dummies.c @@ -1,20 +1,12 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2022-07-28 + * \date 2023-03-22 */ #include -#include - -void * PDE_DATA(const struct inode * inode) -{ - lx_emul_trace_and_stop(__func__); -} - - #include struct sk_buff * __alloc_skb(unsigned int size,gfp_t gfp_mask,int flags,int node) @@ -23,17 +15,22 @@ struct sk_buff * __alloc_skb(unsigned int size,gfp_t gfp_mask,int flags,int node } -#include +#include -const char * __clk_get_name(const struct clk * clk) +int __cond_resched_lock(spinlock_t * lock) { lx_emul_trace_and_stop(__func__); } -#include +#include -int __cond_resched_lock(spinlock_t * lock) +struct cpumask __cpu_active_mask; + + +#include + +void __folio_put(struct folio * folio) { lx_emul_trace_and_stop(__func__); } @@ -62,9 +59,17 @@ void __pagevec_release(struct pagevec * pvec) } -#include +#include -void __put_page(struct page * page) +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -78,6 +83,14 @@ void __put_task_struct(struct task_struct * tsk) } +#include + +void __show_mem(unsigned int filter,nodemask_t * nodemask,int max_zone_idx) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void __srcu_read_unlock(struct srcu_struct * ssp,int idx) @@ -96,7 +109,7 @@ void __unregister_chrdev(unsigned int major,unsigned int baseminor,unsigned int #include -void * __vmalloc_node(unsigned long size,unsigned long align,gfp_t gfp_mask,int node,const void * caller) +void * __vmalloc_node_range(unsigned long size,unsigned long align,unsigned long start,unsigned long end,gfp_t gfp_mask,pgprot_t prot,unsigned long vm_flags,int node,const void * caller) { lx_emul_trace_and_stop(__func__); } @@ -118,6 +131,14 @@ bool _drm_lease_held(struct drm_file * file_priv,int id) } +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + #include atomic_long_t _totalram_pages; @@ -130,54 +151,6 @@ void ack_bad_irq(unsigned int irq) } -#include - -int acpi_bus_attach_private_data(acpi_handle handle,void * data) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void acpi_bus_detach_private_data(acpi_handle handle) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -int acpi_bus_get_device(acpi_handle handle,struct acpi_device ** device) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -int acpi_bus_get_private_data(acpi_handle handle,void ** data) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -int acpi_bus_get_status(struct acpi_device * device) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void acpi_dev_clear_dependencies(struct acpi_device * supplier) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void acpi_dev_free_resource_list(struct list_head * list) @@ -194,6 +167,22 @@ int acpi_dev_get_resources(struct acpi_device * adev,struct list_head * list,int } +#include + +bool acpi_dev_present(const char * hid,const char * uid,s64 hrv) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +bool acpi_dev_ready_for_enumeration(const struct acpi_device * device) +{ + lx_emul_trace_and_stop(__func__); +} + + #include bool acpi_dev_resource_interrupt(struct acpi_resource * ares,int index,struct resource * res) @@ -202,6 +191,22 @@ bool acpi_dev_resource_interrupt(struct acpi_resource * ares,int index,struct re } +#include + +struct acpi_device * acpi_fetch_acpi_dev(acpi_handle handle) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +struct acpi_device * acpi_find_child_device(struct acpi_device * parent,u64 address,bool check_children) +{ + lx_emul_trace_and_stop(__func__); +} + + extern acpi_status acpi_get_handle(acpi_handle parent,acpi_string pathname,acpi_handle * ret_handle); acpi_status acpi_get_handle(acpi_handle parent,acpi_string pathname,acpi_handle * ret_handle) { @@ -225,6 +230,14 @@ void acpi_set_modalias(struct acpi_device * adev,const char * default_id,char * } +#include + +void acpi_video_register_backlight(void) +{ + lx_emul_trace_and_stop(__func__); +} + + extern acpi_status acpi_walk_namespace(acpi_object_type type,acpi_handle start_object,u32 max_depth,acpi_walk_callback descending_callback,acpi_walk_callback ascending_callback,void * context,void ** return_value); acpi_status acpi_walk_namespace(acpi_object_type type,acpi_handle start_object,u32 max_depth,acpi_walk_callback descending_callback,acpi_walk_callback ascending_callback,void * context,void ** return_value) { @@ -232,6 +245,13 @@ acpi_status acpi_walk_namespace(acpi_object_type type,acpi_handle start_object,u } +extern void arch_trigger_cpumask_backtrace(const cpumask_t * mask,bool exclude_self); +void arch_trigger_cpumask_backtrace(const cpumask_t * mask,bool exclude_self) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void bust_spinlocks(int yes) @@ -272,9 +292,9 @@ void check_move_unevictable_pages(struct pagevec * pvec) } -#include +#include -int clear_page_dirty_for_io(struct page * page) +bool clear_page_dirty_for_io(struct page * page) { lx_emul_trace_and_stop(__func__); } @@ -296,11 +316,6 @@ void console_lock(void) } -#include - -int console_printk[] = {}; - - #include int console_trylock(void) @@ -325,6 +340,22 @@ void console_unlock(void) } +#include + +void console_verbose(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +const struct cpumask * cpu_clustergroup_mask(int cpu) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int device_add_software_node(struct device * dev,const struct software_node * node) @@ -333,6 +364,14 @@ int device_add_software_node(struct device * dev,const struct software_node * no } +#include + +int device_create_managed_software_node(struct device * dev,const struct property_entry * properties,const struct software_node * parent) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void device_remove_software_node(struct device * dev) @@ -405,8 +444,9 @@ void dma_buf_unmap_attachment(struct dma_buf_attachment * attach,struct sg_table } -extern void dma_resv_prune(struct dma_resv * resv); -void dma_resv_prune(struct dma_resv * resv) +#include + +int dma_map_sgtable(struct device * dev,struct sg_table * sgt,enum dma_data_direction dir,unsigned long attrs) { lx_emul_trace_and_stop(__func__); } @@ -420,6 +460,14 @@ void do_trace_netlink_extack(const char * msg) } +#include + +int drm_gem_plane_helper_prepare_fb(struct drm_plane * plane,struct drm_plane_state * state) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int drm_invalid_op(struct drm_device * dev,void * data,struct drm_file * file_priv) @@ -521,6 +569,14 @@ bool file_ns_capable(const struct file * file,struct user_namespace * ns,int cap } +#include + +void finish_rcuwait(struct rcuwait * w) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void framebuffer_release(struct fb_info * info) @@ -529,22 +585,6 @@ void framebuffer_release(struct fb_info * info) } -#include - -struct fwnode_handle * fwnode_create_software_node(const struct property_entry * properties,const struct fwnode_handle * parent) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void fwnode_remove_software_node(struct fwnode_handle * fwnode) -{ - lx_emul_trace_and_stop(__func__); -} - - extern void gen5_gt_enable_irq(struct intel_gt * gt,u32 mask); void gen5_gt_enable_irq(struct intel_gt * gt,u32 mask) { @@ -667,6 +707,13 @@ int i915_cmd_parser_get_version(struct drm_i915_private * dev_priv) } +extern void i915_context_module_exit(void); +void i915_context_module_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + extern struct i915_gpu_coredump * i915_first_error_state(struct drm_i915_private * i915); struct i915_gpu_coredump * i915_first_error_state(struct drm_i915_private * i915) { @@ -674,6 +721,13 @@ struct i915_gpu_coredump * i915_first_error_state(struct drm_i915_private * i915 } +extern int i915_gem_backup_suspend(struct drm_i915_private * i915); +int i915_gem_backup_suspend(struct drm_i915_private * i915) +{ + lx_emul_trace_and_stop(__func__); +} + + extern int i915_gem_busy_ioctl(struct drm_device * dev,void * data,struct drm_file * file); int i915_gem_busy_ioctl(struct drm_device * dev,void * data,struct drm_file * file) { @@ -716,6 +770,13 @@ int i915_gem_context_getparam_ioctl(struct drm_device * dev,void * data,struct d } +extern void i915_gem_context_module_exit(void); +void i915_gem_context_module_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void i915_gem_context_release(struct kref * ref); void i915_gem_context_release(struct kref * ref) { @@ -751,6 +812,20 @@ int i915_gem_create_ioctl(struct drm_device * dev,void * data,struct drm_file * } +extern void i915_gem_drain_freed_objects(struct drm_i915_private * i915); +void i915_gem_drain_freed_objects(struct drm_i915_private * i915) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void i915_gem_drain_workqueue(struct drm_i915_private * i915); +void i915_gem_drain_workqueue(struct drm_i915_private * i915) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void i915_gem_driver_release(struct drm_i915_private * dev_priv); void i915_gem_driver_release(struct drm_i915_private * dev_priv) { @@ -786,22 +861,22 @@ int i915_gem_dumb_mmap_offset(struct drm_file * file,struct drm_device * dev,u32 } -extern int i915_gem_evict_for_node(struct i915_address_space * vm,struct drm_mm_node * target,unsigned int flags); -int i915_gem_evict_for_node(struct i915_address_space * vm,struct drm_mm_node * target,unsigned int flags) +extern struct intel_context * i915_gem_engines_iter_next(struct i915_gem_engines_iter * it); +struct intel_context * i915_gem_engines_iter_next(struct i915_gem_engines_iter * it) { lx_emul_trace_and_stop(__func__); } -extern int i915_gem_evict_something(struct i915_address_space * vm,u64 min_size,u64 alignment,unsigned long color,u64 start,u64 end,unsigned flags); -int i915_gem_evict_something(struct i915_address_space * vm,u64 min_size,u64 alignment,unsigned long color,u64 start,u64 end,unsigned flags) +extern int i915_gem_evict_for_node(struct i915_address_space * vm,struct i915_gem_ww_ctx * ww,struct drm_mm_node * target,unsigned int flags); +int i915_gem_evict_for_node(struct i915_address_space * vm,struct i915_gem_ww_ctx * ww,struct drm_mm_node * target,unsigned int flags) { lx_emul_trace_and_stop(__func__); } -extern int i915_gem_evict_vm(struct i915_address_space * vm); -int i915_gem_evict_vm(struct i915_address_space * vm) +extern int i915_gem_evict_something(struct i915_address_space * vm,struct i915_gem_ww_ctx * ww,u64 min_size,u64 alignment,unsigned long color,u64 start,u64 end,unsigned flags); +int i915_gem_evict_something(struct i915_address_space * vm,struct i915_gem_ww_ctx * ww,u64 min_size,u64 alignment,unsigned long color,u64 start,u64 end,unsigned flags) { lx_emul_trace_and_stop(__func__); } @@ -877,6 +952,13 @@ int i915_gem_object_attach_phys(struct drm_i915_gem_object * obj,int align) } +extern struct i915_vma * __must_check i915_gem_object_ggtt_pin(struct drm_i915_gem_object * obj,const struct i915_gtt_view * view,u64 size,u64 alignment,u64 flags); +struct i915_vma * __must_check i915_gem_object_ggtt_pin(struct drm_i915_gem_object * obj,const struct i915_gtt_view * view,u64 size,u64 alignment,u64 flags) +{ + lx_emul_trace_and_stop(__func__); +} + + extern int i915_gem_object_pread_phys(struct drm_i915_gem_object * obj,const struct drm_i915_gem_pread * args); int i915_gem_object_pread_phys(struct drm_i915_gem_object * obj,const struct drm_i915_gem_pread * args) { @@ -982,6 +1064,13 @@ int i915_gem_throttle_ioctl(struct drm_device * dev,void * data,struct drm_file } +extern struct intel_memory_region * i915_gem_ttm_system_setup(struct drm_i915_private * i915,u16 type,u16 instance); +struct intel_memory_region * i915_gem_ttm_system_setup(struct drm_i915_private * i915,u16 type,u16 instance) +{ + lx_emul_trace_and_stop(__func__); +} + + extern int i915_gem_userptr_ioctl(struct drm_device * dev,void * data,struct drm_file * file); int i915_gem_userptr_ioctl(struct drm_device * dev,void * data,struct drm_file * file) { @@ -1003,13 +1092,6 @@ int i915_gem_vm_destroy_ioctl(struct drm_device * dev,void * data,struct drm_fil } -extern int __must_check i915_gem_ww_ctx_backoff(struct i915_gem_ww_ctx * ww); -int __must_check i915_gem_ww_ctx_backoff(struct i915_gem_ww_ctx * ww) -{ - lx_emul_trace_and_stop(__func__); -} - - extern void i915_gemfs_fini(struct drm_i915_private * i915); void i915_gemfs_fini(struct drm_i915_private * i915) { @@ -1066,6 +1148,13 @@ int i915_perf_remove_config_ioctl(struct drm_device * dev,void * data,struct drm } +extern void i915_perf_sysctl_unregister(void); +void i915_perf_sysctl_unregister(void) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void i915_perf_unregister(struct drm_i915_private * i915); void i915_perf_unregister(struct drm_i915_private * i915) { @@ -1087,8 +1176,8 @@ void i915_pmu_unregister(struct drm_i915_private * i915) } -extern struct i915_ppgtt * i915_ppgtt_create(struct intel_gt * gt); -struct i915_ppgtt * i915_ppgtt_create(struct intel_gt * gt) +extern struct i915_ppgtt * i915_ppgtt_create(struct intel_gt * gt,unsigned long lmem_pt_obj_flags); +struct i915_ppgtt * i915_ppgtt_create(struct intel_gt * gt,unsigned long lmem_pt_obj_flags) { lx_emul_trace_and_stop(__func__); } @@ -1101,6 +1190,13 @@ int i915_query_ioctl(struct drm_device * dev,void * data,struct drm_file * file) } +extern int i915_reg_read_ioctl(struct drm_device * dev,void * data,struct drm_file * unused); +int i915_reg_read_ioctl(struct drm_device * dev,void * data,struct drm_file * unused) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void i915_request_add(struct i915_request * rq); void i915_request_add(struct i915_request * rq) { @@ -1115,8 +1211,15 @@ struct i915_request * i915_request_create(struct intel_context * ce) } -extern long i915_request_wait(struct i915_request * rq,unsigned int flags,long timeout); -long i915_request_wait(struct i915_request * rq,unsigned int flags,long timeout) +extern void i915_request_module_exit(void); +void i915_request_module_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern long i915_request_wait_timeout(struct i915_request * rq,unsigned int flags,long timeout); +long i915_request_wait_timeout(struct i915_request * rq,unsigned int flags,long timeout) { lx_emul_trace_and_stop(__func__); } @@ -1129,6 +1232,13 @@ void i915_reset_error_state(struct drm_i915_private * i915) } +extern void i915_scheduler_module_exit(void); +void i915_scheduler_module_exit(void) +{ + lx_emul_trace_and_stop(__func__); +} + + extern int i915_vm_alloc_pt_stash(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,u64 size); int i915_vm_alloc_pt_stash(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,u64 size) { @@ -1163,29 +1273,8 @@ struct pseudo_fs_context * init_pseudo(struct fs_context * fc,unsigned long magi bool initcall_debug; -extern void intel_dsb_indexed_reg_write(const struct intel_crtc_state * crtc_state,i915_reg_t reg,u32 val); -void intel_dsb_indexed_reg_write(const struct intel_crtc_state * crtc_state,i915_reg_t reg,u32 val) -{ - lx_emul_trace_and_stop(__func__); -} - - -extern void intel_dsb_reg_write(const struct intel_crtc_state * crtc_state,i915_reg_t reg,u32 val); -void intel_dsb_reg_write(const struct intel_crtc_state * crtc_state,i915_reg_t reg,u32 val) -{ - lx_emul_trace_and_stop(__func__); -} - - -extern int intel_dsi_dcs_init_backlight_funcs(struct intel_connector * intel_connector); -int intel_dsi_dcs_init_backlight_funcs(struct intel_connector * intel_connector) -{ - lx_emul_trace_and_stop(__func__); -} - - -extern void intel_dvo_init(struct drm_i915_private * dev_priv); -void intel_dvo_init(struct drm_i915_private * dev_priv) +extern u64 intel_context_get_total_runtime_ns(const struct intel_context * ce); +u64 intel_context_get_total_runtime_ns(const struct intel_context * ce) { lx_emul_trace_and_stop(__func__); } @@ -1212,20 +1301,6 @@ unsigned int intel_engines_has_context_isolation(struct drm_i915_private * i915) } -extern int intel_freq_opcode(struct intel_rps * rps,int val); -int intel_freq_opcode(struct intel_rps * rps,int val) -{ - lx_emul_trace_and_stop(__func__); -} - - -extern int intel_gpu_freq(struct intel_rps * rps,int val); -int intel_gpu_freq(struct intel_rps * rps,int val) -{ - lx_emul_trace_and_stop(__func__); -} - - #include struct resource intel_graphics_stolen_res; @@ -1238,6 +1313,27 @@ void intel_gt_check_and_clear_faults(struct intel_gt * gt) } +extern void intel_gt_driver_late_release_all(struct drm_i915_private * i915); +void intel_gt_driver_late_release_all(struct drm_i915_private * i915) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_gt_driver_release(struct intel_gt * gt); +void intel_gt_driver_release(struct intel_gt * gt) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_gt_driver_remove(struct intel_gt * gt); +void intel_gt_driver_remove(struct intel_gt * gt) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void intel_gt_driver_unregister(struct intel_gt * gt); void intel_gt_driver_unregister(struct intel_gt * gt) { @@ -1252,8 +1348,29 @@ void intel_gt_flush_ggtt_writes(struct intel_gt * gt) } -extern long intel_gt_retire_requests_timeout(struct intel_gt * gt,long timeout); -long intel_gt_retire_requests_timeout(struct intel_gt * gt,long timeout) +extern void intel_gt_invalidate_tlb(struct intel_gt * gt,u32 seqno); +void intel_gt_invalidate_tlb(struct intel_gt * gt,u32 seqno) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern u32 intel_gt_mcr_read_any(struct intel_gt * gt,i915_reg_t reg); +u32 intel_gt_mcr_read_any(struct intel_gt * gt,i915_reg_t reg) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_gt_release_all(struct drm_i915_private * i915); +void intel_gt_release_all(struct drm_i915_private * i915) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern long intel_gt_retire_requests_timeout(struct intel_gt * gt,long timeout,long * remaining_timeout); +long intel_gt_retire_requests_timeout(struct intel_gt * gt,long timeout,long * remaining_timeout) { lx_emul_trace_and_stop(__func__); } @@ -1273,8 +1390,78 @@ void intel_gt_runtime_suspend(struct intel_gt * gt) } -extern int intel_gt_wait_for_idle(struct intel_gt * gt,long timeout); -int intel_gt_wait_for_idle(struct intel_gt * gt,long timeout) +extern void intel_guc_ads_reset(struct intel_guc * guc); +void intel_guc_ads_reset(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_guc_ct_enable(struct intel_guc_ct * ct); +int intel_guc_ct_enable(struct intel_guc_ct * ct) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_guc_ct_event_handler(struct intel_guc_ct * ct); +void intel_guc_ct_event_handler(struct intel_guc_ct * ct) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_guc_fini(struct intel_guc * guc); +void intel_guc_fini(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_guc_fw_upload(struct intel_guc * guc); +int intel_guc_fw_upload(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_guc_init(struct intel_guc * guc); +int intel_guc_init(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_guc_slpc_enable(struct intel_guc_slpc * slpc); +int intel_guc_slpc_enable(struct intel_guc_slpc * slpc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_guc_submission_disable(struct intel_guc * guc); +void intel_guc_submission_disable(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_guc_submission_enable(struct intel_guc * guc); +void intel_guc_submission_enable(struct intel_guc * guc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_guc_to_host_process_recv_msg(struct intel_guc * guc,const u32 * payload,u32 len); +int intel_guc_to_host_process_recv_msg(struct intel_guc * guc,const u32 * payload,u32 len) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_guc_write_params(struct intel_guc * guc); +void intel_guc_write_params(struct intel_guc * guc) { lx_emul_trace_and_stop(__func__); } @@ -1294,6 +1481,13 @@ bool intel_has_reset_engine(const struct intel_gt * gt) } +extern int intel_huc_auth(struct intel_huc * huc); +int intel_huc_auth(struct intel_huc * huc) +{ + lx_emul_trace_and_stop(__func__); +} + + extern int intel_huc_check_status(struct intel_huc * huc); int intel_huc_check_status(struct intel_huc * huc) { @@ -1301,15 +1495,36 @@ int intel_huc_check_status(struct intel_huc * huc) } -extern u8 intel_lookup_range_max_qp(int bpc,int buf_i,int bpp_i); -u8 intel_lookup_range_max_qp(int bpc,int buf_i,int bpp_i) +extern void intel_huc_fini(struct intel_huc * huc); +void intel_huc_fini(struct intel_huc * huc) { lx_emul_trace_and_stop(__func__); } -extern u8 intel_lookup_range_min_qp(int bpc,int buf_i,int bpp_i); -u8 intel_lookup_range_min_qp(int bpc,int buf_i,int bpp_i) +extern int intel_huc_fw_upload(struct intel_huc * huc); +int intel_huc_fw_upload(struct intel_huc * huc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_huc_init(struct intel_huc * huc); +int intel_huc_init(struct intel_huc * huc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern void intel_huc_update_auth_status(struct intel_huc * huc); +void intel_huc_update_auth_status(struct intel_huc * huc) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_reset_guc(struct intel_gt * gt); +int intel_reset_guc(struct intel_gt * gt) { lx_emul_trace_and_stop(__func__); } @@ -1329,15 +1544,22 @@ void intel_rps_boost(struct i915_request * rq) } -extern u32 intel_rps_read_actual_frequency(struct intel_rps * rps); -u32 intel_rps_read_actual_frequency(struct intel_rps * rps) +extern void intel_rps_lower_unslice(struct intel_rps * rps); +void intel_rps_lower_unslice(struct intel_rps * rps) { lx_emul_trace_and_stop(__func__); } -extern int intel_rps_set(struct intel_rps * rps,u8 val); -int intel_rps_set(struct intel_rps * rps,u8 val) +extern void intel_rps_raise_unslice(struct intel_rps * rps); +void intel_rps_raise_unslice(struct intel_rps * rps) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern unsigned int intel_sseu_get_hsw_subslices(const struct sseu_dev_info * sseu,u8 slice); +unsigned int intel_sseu_get_hsw_subslices(const struct sseu_dev_info * sseu,u8 slice) { lx_emul_trace_and_stop(__func__); } @@ -1350,8 +1572,15 @@ unsigned int intel_sseu_subslice_total(const struct sseu_dev_info * sseu) } -extern void intel_tv_init(struct drm_i915_private * dev_priv); -void intel_tv_init(struct drm_i915_private * dev_priv) +extern void intel_uc_fw_cleanup_fetch(struct intel_uc_fw * uc_fw); +void intel_uc_fw_cleanup_fetch(struct intel_uc_fw * uc_fw) +{ + lx_emul_trace_and_stop(__func__); +} + + +extern int intel_uc_fw_fetch(struct intel_uc_fw * uc_fw); +int intel_uc_fw_fetch(struct intel_uc_fw * uc_fw) { lx_emul_trace_and_stop(__func__); } @@ -1378,6 +1607,14 @@ void intel_vgt_deballoon(struct i915_ggtt * ggtt) } +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -1402,6 +1639,11 @@ long __sched io_schedule_timeout(long timeout) } +#include + +struct io_tlb_mem io_tlb_default_mem; + + #include void iput(struct inode * inode) @@ -1461,14 +1703,6 @@ void kmem_cache_destroy(struct kmem_cache * s) } -#include - -int kmem_cache_shrink(struct kmem_cache * cachep) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void kmsg_dump(enum kmsg_dump_reason reason) @@ -1567,25 +1801,17 @@ void on_each_cpu_cond_mask(smp_cond_func_t cond_func,smp_call_func_t func,void * int oops_in_progress; /* If set, an oops, panic(), BUG() or die() is in progress */ +#include + +bool page_mapped(struct page * page) +{ + lx_emul_trace_and_stop(__func__); +} + + #include -struct page * pagecache_get_page(struct address_space * mapping,pgoff_t index,int fgp_flags,gfp_t gfp_mask) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -int pagecache_write_begin(struct file * file,struct address_space * mapping,loff_t pos,unsigned len,unsigned flags,struct page ** pagep,void ** fsdata) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -int pagecache_write_end(struct file * file,struct address_space * mapping,loff_t pos,unsigned len,unsigned copied,struct page * page,void * fsdata) +noinline struct page * pagecache_get_page(struct address_space * mapping,pgoff_t index,int fgp_flags,gfp_t gfp) { lx_emul_trace_and_stop(__func__); } @@ -1596,6 +1822,22 @@ int pagecache_write_end(struct file * file,struct address_space * mapping,loff_t enum reboot_mode panic_reboot_mode; +#include + +void pci_d3cold_disable(struct pci_dev * dev) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void pci_d3cold_enable(struct pci_dev * dev) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void pci_disable_device(struct pci_dev * dev) @@ -1644,31 +1886,31 @@ int pci_write_config_byte(const struct pci_dev * dev,int where,u8 val) } -extern void ppgtt_bind_vma(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,struct i915_vma * vma,enum i915_cache_level cache_level,u32 flags); -void ppgtt_bind_vma(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,struct i915_vma * vma,enum i915_cache_level cache_level,u32 flags) +extern void ppgtt_bind_vma(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,struct i915_vma_resource * vma_res,enum i915_cache_level cache_level,u32 flags); +void ppgtt_bind_vma(struct i915_address_space * vm,struct i915_vm_pt_stash * stash,struct i915_vma_resource * vma_res,enum i915_cache_level cache_level,u32 flags) { lx_emul_trace_and_stop(__func__); } -extern void ppgtt_unbind_vma(struct i915_address_space * vm,struct i915_vma * vma); -void ppgtt_unbind_vma(struct i915_address_space * vm,struct i915_vma * vma) +extern void ppgtt_unbind_vma(struct i915_address_space * vm,struct i915_vma_resource * vma_res); +void ppgtt_unbind_vma(struct i915_address_space * vm,struct i915_vma_resource * vma_res) { lx_emul_trace_and_stop(__func__); } -#include +#include -int printk_deferred(const char * fmt,...) +int proc_dointvec_minmax(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) { lx_emul_trace_and_stop(__func__); } -#include +#include -void printk_safe_flush_on_panic(void) +int proc_douintvec(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) { lx_emul_trace_and_stop(__func__); } @@ -1687,14 +1929,6 @@ void put_pid(struct pid * pid) enum reboot_mode reboot_mode; -#include - -void rt_mutex_setprio(struct task_struct * p,struct task_struct * pi_task) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void seq_printf(struct seq_file * m,const char * f,...) @@ -1713,7 +1947,7 @@ void seq_puts(struct seq_file * m,const char * s) #include -int set_page_dirty(struct page * page) +bool set_page_dirty(struct page * page) { lx_emul_trace_and_stop(__func__); } @@ -1742,14 +1976,6 @@ void shmem_truncate_range(struct inode * inode,loff_t lstart,loff_t lend) } -#include - -void show_mem(unsigned int filter,nodemask_t * nodemask) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void show_state_filter(unsigned int state_filter) @@ -1782,6 +2008,14 @@ void * skb_put(struct sk_buff * skb,unsigned int len) } +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) @@ -1795,14 +2029,6 @@ int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) bool static_key_initialized; -#include - -int string_escape_mem(const char * src,size_t isz,char * dst,size_t osz,unsigned int flags,const char * only) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int suppress_printk; @@ -1816,6 +2042,19 @@ void synchronize_rcu(void) } +#include + +void synchronize_shrinkers(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +const int sysctl_vals[] = {}; + + #include int task_work_add(struct task_struct * task,struct callback_head * work,enum task_work_notify_mode notify) @@ -1840,14 +2079,6 @@ void ttm_mem_io_free(struct ttm_device * bdev,struct ttm_resource * mem) } -#include - -void unblank_screen(void) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void unlock_page(struct page * page) @@ -1864,6 +2095,14 @@ void unmap_mapping_range(struct address_space * mapping,loff_t const holebegin,l } +#include + +int unregister_acpi_bus_type(struct acpi_bus_type * type) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void unregister_framebuffer(struct fb_info * fb_info) @@ -1887,6 +2126,14 @@ void * vmap(struct page ** pages,unsigned int count,unsigned long flags,pgprot_t } +#include + +void * vmap_pfn(unsigned long * pfns,unsigned int count,pgprot_t prot) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void vunmap(const void * addr) diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/lx_emul.c b/repos/pc/src/drivers/framebuffer/intel/pc/lx_emul.c index cdfe99fa75..ba98629ebb 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/lx_emul.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/lx_emul.c @@ -17,12 +17,12 @@ #include #include -#include #include #include #include #include "i915_drv.h" +#include "intel_pci_config.h" #include @@ -32,16 +32,6 @@ struct dma_fence_ops const i915_fence_ops; pteval_t __default_kernel_pte_mask __read_mostly = ~0; -int acpi_disabled = 0; -int intel_iommu_gfx_mapped = 0; - - -void intel_wopcm_init_early(struct intel_wopcm * wopcm) -{ - lx_emul_trace(__func__); -} - - void si_meminfo(struct sysinfo * val) { unsigned long long const ram_pages = emul_avail_ram() / PAGE_SIZE; @@ -213,39 +203,28 @@ struct page *shmem_read_mapping_page_gfp(struct address_space *mapping, } -#ifdef CONFIG_SWIOTLB - -#include - -unsigned int swiotlb_max_segment(void) +extern int intel_root_gt_init_early(struct drm_i915_private * i915); +int intel_root_gt_init_early(struct drm_i915_private * i915) { - lx_emul_trace(__func__); - return PAGE_SIZE * 512; -} + struct intel_gt *gt = to_gt(i915); - -bool is_swiotlb_active(void) -{ - lx_emul_trace(__func__); - return false; -} - -#endif - - -void intel_gt_init_early(struct intel_gt * gt, struct drm_i915_private * i915) -{ gt->i915 = i915; gt->uncore = &i915->uncore; + gt->irq_lock = drmm_kzalloc(&i915->drm, sizeof(*gt->irq_lock), GFP_KERNEL); + if (!gt->irq_lock) + return -ENOMEM; - spin_lock_init(>->irq_lock); + spin_lock_init(gt->irq_lock); INIT_LIST_HEAD(>->closed_vma); spin_lock_init(>->closed_lock); init_llist_head(>->watchdog.list); - lx_emul_trace(__func__); + mutex_init(>->tlb.invalidate_lock); + seqcount_mutex_init(>->tlb.seqno, >->tlb.invalidate_lock); + + intel_uc_init_early(>->uc); /* disable panel self refresh (required for FUJITSU S937/S938) */ i915->params.enable_psr = 0; @@ -256,8 +235,68 @@ void intel_gt_init_early(struct intel_gt * gt, struct drm_i915_private * i915) * * drivers/gpu/drm/i915/gt/intel_ggtt.c * -> gen8_gmch_probe() -> intel_scanout_needs_vtd_wa(i915) + * -> return DISPLAY_VER(i915) >= 6 && i915_vtd_active(i915); + * + * i915_vtd_active() uses + * if (device_iommu_mapped(i915->drm.dev)) + * return true; + * + * which checks for dev->iommu_group != NULL + * + * The struct iommu_group is solely defined within iommu/iommu.c and + * not public available. iommu/iommu.c is not used by our port, so adding + * a dummy valid pointer is sufficient to get i915_vtd_active working. */ - intel_iommu_gfx_mapped = 1; + i915->drm.dev->iommu_group = kzalloc(4096, 0); + if (!i915_vtd_active(i915)) + printk("i915_vtd_active is off, which may cause random runtime" + "IOMMU faults on kernels with enabled IOMMUs\n"); + + return 0; +} + + +extern int intel_gt_probe_all(struct drm_i915_private * i915); +int intel_gt_probe_all(struct drm_i915_private * i915) +{ + struct pci_dev *pdev = to_pci_dev(i915->drm.dev); + struct intel_gt *gt = &i915->gt0; + phys_addr_t phys_addr; + unsigned int mmio_bar; + int ret; + + mmio_bar = GRAPHICS_VER(i915) == 2 ? GEN2_GTTMMADR_BAR : GTTMMADR_BAR; + phys_addr = pci_resource_start(pdev, mmio_bar); + + /* + * We always have at least one primary GT on any device + * and it has been already initialized early during probe + * in i915_driver_probe() + */ + gt->i915 = i915; + gt->name = "Primary GT"; + gt->info.engine_mask = RUNTIME_INFO(i915)->platform_engine_mask; + + intel_uncore_init_early(gt->uncore, gt); + + ret = intel_uncore_setup_mmio(gt->uncore, phys_addr); + if (ret) + return ret; + + gt->phys_addr = phys_addr; + + i915->gt[0] = gt; + + return 0; +} + + +extern int intel_gt_assign_ggtt(struct intel_gt * gt); +int intel_gt_assign_ggtt(struct intel_gt * gt) +{ + gt->ggtt = drmm_kzalloc(>->i915->drm, sizeof(*gt->ggtt), GFP_KERNEL); + + return gt->ggtt ? 0 : -ENOMEM; } @@ -297,8 +336,9 @@ void intel_vgpu_detect(struct drm_i915_private * dev_priv) * probe/boot up are not trigged (INTEL_PPGTT_ALIASING, Lenovo T420) */ - struct intel_device_info *info = mkwrite_device_info(dev_priv); - info->ppgtt_type = INTEL_PPGTT_NONE; + //struct intel_device_info *info = mkwrite_device_info(dev_priv); + struct intel_runtime_info *rinfo = RUNTIME_INFO(dev_priv); + rinfo->ppgtt_type = INTEL_PPGTT_NONE; printk("disabling PPGTT to avoid GPU code paths\n"); } @@ -313,3 +353,23 @@ void kvfree_call_rcu(struct rcu_head * head,rcu_callback_t func) kvfree(ptr); } + +#include + +size_t dma_max_mapping_size(struct device * dev) +{ + lx_emul_trace(__func__); + return PAGE_SIZE * 512; /* 2 MB */ +} + + +#include +#include <../mm/slab.h> + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) +{ + return kmalloc(cachep->size, flags); +} + + +unsigned long __FIXADDR_TOP = 0xfffff000; diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/lx_user.c b/repos/pc/src/drivers/framebuffer/intel/pc/lx_user.c index 48dea81997..bd6e90eb70 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/lx_user.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/lx_user.c @@ -17,9 +17,11 @@ #include #include "i915_drv.h" +#include "display/intel_backlight.h" #include "display/intel_display_types.h" #include "display/intel_opregion.h" #include "display/intel_panel.h" +#include "display/intel_fbdev.h" #include "lx_emul.h" @@ -30,7 +32,10 @@ struct task_struct * lx_user_task = NULL; static struct drm_i915_private *i915 = NULL; -static struct drm_fb_helper * i915_fb(void) { return &i915->fbdev->helper; } +static struct drm_fb_helper * i915_fb(void) +{ + return i915 ? i915->drm.fb_helper : NULL; +} /* @@ -119,7 +124,7 @@ static void set_brightness(unsigned brightness, struct drm_connector * connector { struct intel_connector * intel_c = to_intel_connector(connector); if (intel_c) - intel_panel_set_backlight_acpi(intel_c->base.state, brightness, MAX_BRIGHTNESS); + intel_backlight_set_acpi(intel_c->base.state, brightness, MAX_BRIGHTNESS); } @@ -189,27 +194,6 @@ static bool reconfigure(void * data) mode_preferred.hdisplay, mode_preferred.vdisplay, err); if (err == -ENOMEM) { - /* - * roll back code for intelfb_create() in - * drivers/gpu/drm/i915/display/intel_fbdev.c: - * - * vma = intel_pin_and_fence_fb_obj(&ifbdev->fb->base, false, - * &view, false, &flags); - * if (IS_ERR(vma)) { - * - * If the partial allocation is not reverted, the next - * i915_fb()->funcs->fb_probe (which calls intelfb_create) - * will try the old resolution, which failed and fails again, - * instead of using the new smaller resolution. - */ - struct intel_fbdev *ifbdev = - container_of(i915_fb(), struct intel_fbdev, helper); - - if (ifbdev && ifbdev->fb) { - drm_framebuffer_put(&ifbdev->fb->base); - ifbdev->fb = NULL; - } - width_smaller_as = mode_preferred.hdisplay; height_smaller_as = mode_preferred.vdisplay; @@ -317,7 +301,7 @@ static bool reconfigure(void * data) /* use first smaller mode */ mode_match = mode; - if (conf_mode.enabled) + if (conf_mode.enabled && conf_mode.id) no_match = true; } diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/pci.c b/repos/pc/src/drivers/framebuffer/intel/pc/pci.c index 883e1c0795..fb6d2cfb88 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/pci.c +++ b/repos/pc/src/drivers/framebuffer/intel/pc/pci.c @@ -18,7 +18,7 @@ #include #include -#include <../drivers/gpu/drm/i915/i915_reg.h> +#include <../drivers/gpu/drm/i915/intel_pci_config.h> #undef GFX_FLSH_CNTL /* suppress warning of double define */ #include <../drivers/char/agp/intel-agp.h> diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/dep.list b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/dep.list index 0feebbf0a2..065741ab04 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/dep.list +++ b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/dep.list @@ -1,28 +1,16 @@ -arch/x86/include/asm/atomic64_64.h arch/x86/include/asm/checksum_32.h -arch/x86/include/asm/checksum_64.h arch/x86/include/asm/cmpxchg_32.h -arch/x86/include/asm/cmpxchg_64.h -arch/x86/include/asm/io.h -arch/x86/include/asm/io_apic.h -arch/x86/include/asm/kaslr.h +arch/x86/include/asm/iomap.h arch/x86/include/asm/numa_32.h arch/x86/include/asm/page_32.h arch/x86/include/asm/page_32_types.h -arch/x86/include/asm/page_64_types.h arch/x86/include/asm/pgtable-2level_types.h arch/x86/include/asm/pgtable_32_areas.h arch/x86/include/asm/pgtable_32_types.h -arch/x86/include/asm/pgtable_64_types.h -arch/x86/include/asm/sparsemem.h -arch/x86/include/asm/string_64.h arch/x86/include/asm/user_32.h -arch/x86/include/asm/user_64.h arch/x86/include/uapi/asm/posix_types_32.h -arch/x86/include/uapi/asm/posix_types_64.h -arch/x86/include/uapi/asm/vsyscall.h include/asm-generic/asm-prototypes.h include/asm-generic/bitops/fls64.h -include/asm-generic/div64.h include/asm-generic/pgtable-nopmd.h include/asm-generic/pgtable-nopud.h +include/asm-generic/softirq_stack.h diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/source.list b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/source.list index c600d394ae..cad5239716 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/source.list +++ b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_32/source.list @@ -10,11 +10,17 @@ drivers/base/driver.c drivers/base/platform.c drivers/base/property.c drivers/char/agp/intel-gtt.c -drivers/clk/clk-devres.c drivers/dma-buf/dma-fence-array.c drivers/dma-buf/dma-fence-chain.c drivers/dma-buf/dma-fence.c drivers/dma-buf/dma-resv.c +drivers/gpu/drm/display/drm_dp_dual_mode_helper.c +drivers/gpu/drm/display/drm_dp_helper.c +drivers/gpu/drm/display/drm_dp_mst_topology.c +drivers/gpu/drm/display/drm_dsc_helper.c +drivers/gpu/drm/display/drm_hdcp_helper.c +drivers/gpu/drm/display/drm_hdmi_helper.c +drivers/gpu/drm/display/drm_scdc_helper.c drivers/gpu/drm/drm_atomic.c drivers/gpu/drm/drm_atomic_helper.c drivers/gpu/drm/drm_atomic_state_helper.c @@ -31,11 +37,7 @@ drivers/gpu/drm/drm_crtc.c drivers/gpu/drm/drm_crtc_helper.c drivers/gpu/drm/drm_damage_helper.c drivers/gpu/drm/drm_displayid.c -drivers/gpu/drm/drm_dp_dual_mode_helper.c -drivers/gpu/drm/drm_dp_helper.c -drivers/gpu/drm/drm_dp_mst_topology.c drivers/gpu/drm/drm_drv.c -drivers/gpu/drm/drm_dsc.c drivers/gpu/drm/drm_edid.c drivers/gpu/drm/drm_encoder.c drivers/gpu/drm/drm_fb_helper.c @@ -43,7 +45,6 @@ drivers/gpu/drm/drm_file.c drivers/gpu/drm/drm_fourcc.c drivers/gpu/drm/drm_framebuffer.c drivers/gpu/drm/drm_gem.c -drivers/gpu/drm/drm_hdcp.c drivers/gpu/drm/drm_managed.c drivers/gpu/drm/drm_mipi_dsi.c drivers/gpu/drm/drm_mm.c @@ -59,20 +60,27 @@ drivers/gpu/drm/drm_print.c drivers/gpu/drm/drm_probe_helper.c drivers/gpu/drm/drm_property.c drivers/gpu/drm/drm_rect.c -drivers/gpu/drm/drm_scdc_helper.c drivers/gpu/drm/drm_syncobj.c drivers/gpu/drm/drm_sysfs.c drivers/gpu/drm/drm_vblank.c drivers/gpu/drm/drm_vblank_work.c drivers/gpu/drm/drm_vma_manager.c +drivers/gpu/drm/i915/display/dvo_ch7017.c +drivers/gpu/drm/i915/display/dvo_ch7xxx.c +drivers/gpu/drm/i915/display/dvo_ivch.c +drivers/gpu/drm/i915/display/dvo_ns2501.c +drivers/gpu/drm/i915/display/dvo_sil164.c +drivers/gpu/drm/i915/display/dvo_tfp410.c drivers/gpu/drm/i915/display/g4x_dp.c drivers/gpu/drm/i915/display/g4x_hdmi.c +drivers/gpu/drm/i915/display/hsw_ips.c drivers/gpu/drm/i915/display/i9xx_plane.c drivers/gpu/drm/i915/display/icl_dsi.c drivers/gpu/drm/i915/display/intel_acpi.c drivers/gpu/drm/i915/display/intel_atomic.c drivers/gpu/drm/i915/display/intel_atomic_plane.c drivers/gpu/drm/i915/display/intel_audio.c +drivers/gpu/drm/i915/display/intel_backlight.c drivers/gpu/drm/i915/display/intel_bios.c drivers/gpu/drm/i915/display/intel_bw.c drivers/gpu/drm/i915/display/intel_cdclk.c @@ -81,11 +89,16 @@ drivers/gpu/drm/i915/display/intel_combo_phy.c drivers/gpu/drm/i915/display/intel_connector.c drivers/gpu/drm/i915/display/intel_crt.c drivers/gpu/drm/i915/display/intel_crtc.c +drivers/gpu/drm/i915/display/intel_crtc_state_dump.c drivers/gpu/drm/i915/display/intel_cursor.c drivers/gpu/drm/i915/display/intel_ddi.c drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c drivers/gpu/drm/i915/display/intel_display.c drivers/gpu/drm/i915/display/intel_display_power.c +drivers/gpu/drm/i915/display/intel_display_power_map.c +drivers/gpu/drm/i915/display/intel_display_power_well.c +drivers/gpu/drm/i915/display/intel_display_trace.c +drivers/gpu/drm/i915/display/intel_dkl_phy.c drivers/gpu/drm/i915/display/intel_dmc.c drivers/gpu/drm/i915/display/intel_dp.c drivers/gpu/drm/i915/display/intel_dp_aux.c @@ -96,9 +109,14 @@ drivers/gpu/drm/i915/display/intel_dp_mst.c drivers/gpu/drm/i915/display/intel_dpio_phy.c drivers/gpu/drm/i915/display/intel_dpll.c drivers/gpu/drm/i915/display/intel_dpll_mgr.c +drivers/gpu/drm/i915/display/intel_dpt.c +drivers/gpu/drm/i915/display/intel_drrs.c drivers/gpu/drm/i915/display/intel_dsi.c +drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c drivers/gpu/drm/i915/display/intel_dsi_vbt.c +drivers/gpu/drm/i915/display/intel_dvo.c drivers/gpu/drm/i915/display/intel_fb.c +drivers/gpu/drm/i915/display/intel_fb_pin.c drivers/gpu/drm/i915/display/intel_fbc.c drivers/gpu/drm/i915/display/intel_fbdev.c drivers/gpu/drm/i915/display/intel_fdi.c @@ -112,20 +130,29 @@ drivers/gpu/drm/i915/display/intel_hotplug.c drivers/gpu/drm/i915/display/intel_lpe_audio.c drivers/gpu/drm/i915/display/intel_lspcon.c drivers/gpu/drm/i915/display/intel_lvds.c +drivers/gpu/drm/i915/display/intel_modeset_setup.c +drivers/gpu/drm/i915/display/intel_modeset_verify.c drivers/gpu/drm/i915/display/intel_opregion.c drivers/gpu/drm/i915/display/intel_overlay.c drivers/gpu/drm/i915/display/intel_panel.c +drivers/gpu/drm/i915/display/intel_pch_display.c +drivers/gpu/drm/i915/display/intel_pch_refclk.c +drivers/gpu/drm/i915/display/intel_plane_initial.c drivers/gpu/drm/i915/display/intel_pps.c drivers/gpu/drm/i915/display/intel_psr.c +drivers/gpu/drm/i915/display/intel_qp_tables.c drivers/gpu/drm/i915/display/intel_quirks.c drivers/gpu/drm/i915/display/intel_sdvo.c +drivers/gpu/drm/i915/display/intel_snps_phy.c drivers/gpu/drm/i915/display/intel_sprite.c drivers/gpu/drm/i915/display/intel_tc.c +drivers/gpu/drm/i915/display/intel_tv.c drivers/gpu/drm/i915/display/intel_vdsc.c drivers/gpu/drm/i915/display/intel_vga.c drivers/gpu/drm/i915/display/intel_vrr.c drivers/gpu/drm/i915/display/skl_scaler.c drivers/gpu/drm/i915/display/skl_universal_plane.c +drivers/gpu/drm/i915/display/skl_watermark.c drivers/gpu/drm/i915/display/vlv_dsi.c drivers/gpu/drm/i915/display/vlv_dsi_pll.c drivers/gpu/drm/i915/gem/i915_gem_clflush.c @@ -142,16 +169,20 @@ drivers/gpu/drm/i915/gem/i915_gem_tiling.c drivers/gpu/drm/i915/gem/i915_gem_wait.c drivers/gpu/drm/i915/gt/intel_ggtt.c drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c +drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c drivers/gpu/drm/i915/gt/intel_gtt.c +drivers/gpu/drm/i915/gt/uc/intel_uc.c drivers/gpu/drm/i915/i915_active.c drivers/gpu/drm/i915/i915_config.c -drivers/gpu/drm/i915/i915_drv.c +drivers/gpu/drm/i915/i915_driver.c +drivers/gpu/drm/i915/i915_drm_client.c drivers/gpu/drm/i915/i915_gem_gtt.c +drivers/gpu/drm/i915/i915_gem_ww.c drivers/gpu/drm/i915/i915_getparam.c -drivers/gpu/drm/i915/i915_globals.c drivers/gpu/drm/i915/i915_irq.c drivers/gpu/drm/i915/i915_memcpy.c drivers/gpu/drm/i915/i915_mitigations.c +drivers/gpu/drm/i915/i915_module.c drivers/gpu/drm/i915/i915_params.c drivers/gpu/drm/i915/i915_pci.c drivers/gpu/drm/i915/i915_scatterlist.c @@ -161,17 +192,21 @@ drivers/gpu/drm/i915/i915_sw_fence_work.c drivers/gpu/drm/i915/i915_sysfs.c drivers/gpu/drm/i915/i915_utils.c drivers/gpu/drm/i915/i915_vma.c +drivers/gpu/drm/i915/i915_vma_resource.c drivers/gpu/drm/i915/intel_device_info.c drivers/gpu/drm/i915/intel_dram.c drivers/gpu/drm/i915/intel_memory_region.c drivers/gpu/drm/i915/intel_pch.c +drivers/gpu/drm/i915/intel_pcode.c drivers/gpu/drm/i915/intel_pm.c drivers/gpu/drm/i915/intel_region_ttm.c drivers/gpu/drm/i915/intel_runtime_pm.c -drivers/gpu/drm/i915/intel_sideband.c +drivers/gpu/drm/i915/intel_sbi.c drivers/gpu/drm/i915/intel_step.c drivers/gpu/drm/i915/intel_uncore.c drivers/gpu/drm/i915/intel_wakeref.c +drivers/gpu/drm/i915/intel_wopcm.c +drivers/gpu/drm/i915/vlv_sideband.c drivers/gpu/drm/i915/vlv_suspend.c drivers/gpu/drm/ttm/ttm_bo.c drivers/gpu/drm/ttm/ttm_device.c @@ -200,15 +235,12 @@ kernel/kthread.c kernel/locking/mutex.c kernel/locking/osq_lock.c kernel/locking/rtmutex.c +kernel/locking/rtmutex_api.c kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -252,6 +284,7 @@ lib/scatterlist.c lib/siphash.c lib/sort.c lib/string.c +lib/string_helpers.c lib/timerqueue.c lib/uuid.c lib/vsprintf.c diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/dep.list b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/dep.list index 90ee9240cd..8990e869bb 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/dep.list +++ b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/dep.list @@ -1,3 +1,14 @@ -arch/x86/include/asm/io.h -arch/x86/include/asm/io_apic.h -arch/x86/include/asm/iomap.h +arch/x86/include/asm/atomic64_64.h +arch/x86/include/asm/checksum_64.h +arch/x86/include/asm/cmpxchg_64.h +arch/x86/include/asm/irq_stack.h +arch/x86/include/asm/kaslr.h +arch/x86/include/asm/page_64_types.h +arch/x86/include/asm/pgtable_64_types.h +arch/x86/include/asm/sparsemem.h +arch/x86/include/asm/string_64.h +arch/x86/include/asm/user_64.h +arch/x86/include/uapi/asm/posix_types_64.h +arch/x86/include/uapi/asm/vsyscall.h +include/asm-generic/div64.h +include/linux/cfi_types.h diff --git a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/source.list b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/source.list index c3f15819b9..ffa77c24ec 100644 --- a/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/source.list +++ b/repos/pc/src/drivers/framebuffer/intel/pc/spec/x86_64/source.list @@ -13,11 +13,17 @@ drivers/base/driver.c drivers/base/platform.c drivers/base/property.c drivers/char/agp/intel-gtt.c -drivers/clk/clk-devres.c drivers/dma-buf/dma-fence-array.c drivers/dma-buf/dma-fence-chain.c drivers/dma-buf/dma-fence.c drivers/dma-buf/dma-resv.c +drivers/gpu/drm/display/drm_dp_dual_mode_helper.c +drivers/gpu/drm/display/drm_dp_helper.c +drivers/gpu/drm/display/drm_dp_mst_topology.c +drivers/gpu/drm/display/drm_dsc_helper.c +drivers/gpu/drm/display/drm_hdcp_helper.c +drivers/gpu/drm/display/drm_hdmi_helper.c +drivers/gpu/drm/display/drm_scdc_helper.c drivers/gpu/drm/drm_atomic.c drivers/gpu/drm/drm_atomic_helper.c drivers/gpu/drm/drm_atomic_state_helper.c @@ -34,11 +40,7 @@ drivers/gpu/drm/drm_crtc.c drivers/gpu/drm/drm_crtc_helper.c drivers/gpu/drm/drm_damage_helper.c drivers/gpu/drm/drm_displayid.c -drivers/gpu/drm/drm_dp_dual_mode_helper.c -drivers/gpu/drm/drm_dp_helper.c -drivers/gpu/drm/drm_dp_mst_topology.c drivers/gpu/drm/drm_drv.c -drivers/gpu/drm/drm_dsc.c drivers/gpu/drm/drm_edid.c drivers/gpu/drm/drm_encoder.c drivers/gpu/drm/drm_fb_helper.c @@ -46,7 +48,6 @@ drivers/gpu/drm/drm_file.c drivers/gpu/drm/drm_fourcc.c drivers/gpu/drm/drm_framebuffer.c drivers/gpu/drm/drm_gem.c -drivers/gpu/drm/drm_hdcp.c drivers/gpu/drm/drm_managed.c drivers/gpu/drm/drm_mipi_dsi.c drivers/gpu/drm/drm_mm.c @@ -62,20 +63,27 @@ drivers/gpu/drm/drm_print.c drivers/gpu/drm/drm_probe_helper.c drivers/gpu/drm/drm_property.c drivers/gpu/drm/drm_rect.c -drivers/gpu/drm/drm_scdc_helper.c drivers/gpu/drm/drm_syncobj.c drivers/gpu/drm/drm_sysfs.c drivers/gpu/drm/drm_vblank.c drivers/gpu/drm/drm_vblank_work.c drivers/gpu/drm/drm_vma_manager.c +drivers/gpu/drm/i915/display/dvo_ch7017.c +drivers/gpu/drm/i915/display/dvo_ch7xxx.c +drivers/gpu/drm/i915/display/dvo_ivch.c +drivers/gpu/drm/i915/display/dvo_ns2501.c +drivers/gpu/drm/i915/display/dvo_sil164.c +drivers/gpu/drm/i915/display/dvo_tfp410.c drivers/gpu/drm/i915/display/g4x_dp.c drivers/gpu/drm/i915/display/g4x_hdmi.c +drivers/gpu/drm/i915/display/hsw_ips.c drivers/gpu/drm/i915/display/i9xx_plane.c drivers/gpu/drm/i915/display/icl_dsi.c drivers/gpu/drm/i915/display/intel_acpi.c drivers/gpu/drm/i915/display/intel_atomic.c drivers/gpu/drm/i915/display/intel_atomic_plane.c drivers/gpu/drm/i915/display/intel_audio.c +drivers/gpu/drm/i915/display/intel_backlight.c drivers/gpu/drm/i915/display/intel_bios.c drivers/gpu/drm/i915/display/intel_bw.c drivers/gpu/drm/i915/display/intel_cdclk.c @@ -84,11 +92,16 @@ drivers/gpu/drm/i915/display/intel_combo_phy.c drivers/gpu/drm/i915/display/intel_connector.c drivers/gpu/drm/i915/display/intel_crt.c drivers/gpu/drm/i915/display/intel_crtc.c +drivers/gpu/drm/i915/display/intel_crtc_state_dump.c drivers/gpu/drm/i915/display/intel_cursor.c drivers/gpu/drm/i915/display/intel_ddi.c drivers/gpu/drm/i915/display/intel_ddi_buf_trans.c drivers/gpu/drm/i915/display/intel_display.c drivers/gpu/drm/i915/display/intel_display_power.c +drivers/gpu/drm/i915/display/intel_display_power_map.c +drivers/gpu/drm/i915/display/intel_display_power_well.c +drivers/gpu/drm/i915/display/intel_display_trace.c +drivers/gpu/drm/i915/display/intel_dkl_phy.c drivers/gpu/drm/i915/display/intel_dmc.c drivers/gpu/drm/i915/display/intel_dp.c drivers/gpu/drm/i915/display/intel_dp_aux.c @@ -99,9 +112,14 @@ drivers/gpu/drm/i915/display/intel_dp_mst.c drivers/gpu/drm/i915/display/intel_dpio_phy.c drivers/gpu/drm/i915/display/intel_dpll.c drivers/gpu/drm/i915/display/intel_dpll_mgr.c +drivers/gpu/drm/i915/display/intel_dpt.c +drivers/gpu/drm/i915/display/intel_drrs.c drivers/gpu/drm/i915/display/intel_dsi.c +drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.c drivers/gpu/drm/i915/display/intel_dsi_vbt.c +drivers/gpu/drm/i915/display/intel_dvo.c drivers/gpu/drm/i915/display/intel_fb.c +drivers/gpu/drm/i915/display/intel_fb_pin.c drivers/gpu/drm/i915/display/intel_fbc.c drivers/gpu/drm/i915/display/intel_fbdev.c drivers/gpu/drm/i915/display/intel_fdi.c @@ -115,20 +133,29 @@ drivers/gpu/drm/i915/display/intel_hotplug.c drivers/gpu/drm/i915/display/intel_lpe_audio.c drivers/gpu/drm/i915/display/intel_lspcon.c drivers/gpu/drm/i915/display/intel_lvds.c +drivers/gpu/drm/i915/display/intel_modeset_setup.c +drivers/gpu/drm/i915/display/intel_modeset_verify.c drivers/gpu/drm/i915/display/intel_opregion.c drivers/gpu/drm/i915/display/intel_overlay.c drivers/gpu/drm/i915/display/intel_panel.c +drivers/gpu/drm/i915/display/intel_pch_display.c +drivers/gpu/drm/i915/display/intel_pch_refclk.c +drivers/gpu/drm/i915/display/intel_plane_initial.c drivers/gpu/drm/i915/display/intel_pps.c drivers/gpu/drm/i915/display/intel_psr.c +drivers/gpu/drm/i915/display/intel_qp_tables.c drivers/gpu/drm/i915/display/intel_quirks.c drivers/gpu/drm/i915/display/intel_sdvo.c +drivers/gpu/drm/i915/display/intel_snps_phy.c drivers/gpu/drm/i915/display/intel_sprite.c drivers/gpu/drm/i915/display/intel_tc.c +drivers/gpu/drm/i915/display/intel_tv.c drivers/gpu/drm/i915/display/intel_vdsc.c drivers/gpu/drm/i915/display/intel_vga.c drivers/gpu/drm/i915/display/intel_vrr.c drivers/gpu/drm/i915/display/skl_scaler.c drivers/gpu/drm/i915/display/skl_universal_plane.c +drivers/gpu/drm/i915/display/skl_watermark.c drivers/gpu/drm/i915/display/vlv_dsi.c drivers/gpu/drm/i915/display/vlv_dsi_pll.c drivers/gpu/drm/i915/gem/i915_gem_clflush.c @@ -145,16 +172,20 @@ drivers/gpu/drm/i915/gem/i915_gem_tiling.c drivers/gpu/drm/i915/gem/i915_gem_wait.c drivers/gpu/drm/i915/gt/intel_ggtt.c drivers/gpu/drm/i915/gt/intel_ggtt_fencing.c +drivers/gpu/drm/i915/gt/intel_ggtt_gmch.c drivers/gpu/drm/i915/gt/intel_gtt.c +drivers/gpu/drm/i915/gt/uc/intel_uc.c drivers/gpu/drm/i915/i915_active.c drivers/gpu/drm/i915/i915_config.c -drivers/gpu/drm/i915/i915_drv.c +drivers/gpu/drm/i915/i915_driver.c +drivers/gpu/drm/i915/i915_drm_client.c drivers/gpu/drm/i915/i915_gem_gtt.c +drivers/gpu/drm/i915/i915_gem_ww.c drivers/gpu/drm/i915/i915_getparam.c -drivers/gpu/drm/i915/i915_globals.c drivers/gpu/drm/i915/i915_irq.c drivers/gpu/drm/i915/i915_memcpy.c drivers/gpu/drm/i915/i915_mitigations.c +drivers/gpu/drm/i915/i915_module.c drivers/gpu/drm/i915/i915_params.c drivers/gpu/drm/i915/i915_pci.c drivers/gpu/drm/i915/i915_scatterlist.c @@ -164,17 +195,21 @@ drivers/gpu/drm/i915/i915_sw_fence_work.c drivers/gpu/drm/i915/i915_sysfs.c drivers/gpu/drm/i915/i915_utils.c drivers/gpu/drm/i915/i915_vma.c +drivers/gpu/drm/i915/i915_vma_resource.c drivers/gpu/drm/i915/intel_device_info.c drivers/gpu/drm/i915/intel_dram.c drivers/gpu/drm/i915/intel_memory_region.c drivers/gpu/drm/i915/intel_pch.c +drivers/gpu/drm/i915/intel_pcode.c drivers/gpu/drm/i915/intel_pm.c drivers/gpu/drm/i915/intel_region_ttm.c drivers/gpu/drm/i915/intel_runtime_pm.c -drivers/gpu/drm/i915/intel_sideband.c +drivers/gpu/drm/i915/intel_sbi.c drivers/gpu/drm/i915/intel_step.c drivers/gpu/drm/i915/intel_uncore.c drivers/gpu/drm/i915/intel_wakeref.c +drivers/gpu/drm/i915/intel_wopcm.c +drivers/gpu/drm/i915/vlv_sideband.c drivers/gpu/drm/i915/vlv_suspend.c drivers/gpu/drm/ttm/ttm_bo.c drivers/gpu/drm/ttm/ttm_device.c @@ -203,15 +238,12 @@ kernel/kthread.c kernel/locking/mutex.c kernel/locking/osq_lock.c kernel/locking/rtmutex.c +kernel/locking/rtmutex_api.c kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -254,6 +286,7 @@ lib/scatterlist.c lib/siphash.c lib/sort.c lib/string.c +lib/string_helpers.c lib/timerqueue.c lib/uuid.c lib/vsprintf.c diff --git a/repos/pc/src/drivers/usb_host/pc/dep.list b/repos/pc/src/drivers/usb_host/pc/dep.list index 6cb87aca5e..27cd653d38 100644 --- a/repos/pc/src/drivers/usb_host/pc/dep.list +++ b/repos/pc/src/drivers/usb_host/pc/dep.list @@ -1,4 +1,3 @@ -arch/x86/include/asm/vdso/processor.h drivers/usb/common/common.h drivers/usb/core/hub.h drivers/usb/core/otg_productlist.h @@ -29,15 +28,13 @@ drivers/usb/host/xhci-ext-caps.h drivers/usb/host/xhci-pci.h drivers/usb/host/xhci-trace.h drivers/usb/host/xhci.h -include/asm-generic/dma-mapping.h -include/asm-generic/export.h include/linux/bcd.h include/linux/extcon.h include/linux/genalloc.h include/linux/io-64-nonatomic-lo-hi.h include/linux/kcov.h -include/linux/kfifo.h include/linux/phy/phy-dp.h +include/linux/phy/phy-lvds.h include/linux/phy/phy-mipi-dphy.h include/linux/phy/phy.h include/linux/regulator/consumer.h @@ -49,6 +46,7 @@ include/linux/usb/ehci-dbgp.h include/linux/usb/ehci_def.h include/linux/usb/hcd.h include/linux/usb/of.h +include/linux/usb/onboard_hub.h include/linux/usb/otg.h include/linux/usb/phy.h include/linux/usb/quirks.h diff --git a/repos/pc/src/drivers/usb_host/pc/dummies.c b/repos/pc/src/drivers/usb_host/pc/dummies.c index 6b4d44448d..4b2ee7b816 100644 --- a/repos/pc/src/drivers/usb_host/pc/dummies.c +++ b/repos/pc/src/drivers/usb_host/pc/dummies.c @@ -32,6 +32,7 @@ struct device_driver; struct kobj_uevent_env; +struct pci_dev; bool pciehp_is_native(struct pci_dev *bridge) { lx_emul_trace_and_stop(__func__); @@ -98,3 +99,118 @@ void pci_disable_device(struct pci_dev * dev) { lx_emul_trace(__func__); } + + +#include + +u32 __get_random_u32_below(u32 ceil) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_map); + + +const struct attribute_group dev_attr_physical_location_group = {}; + + +#include + +void acpi_device_notify(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +extern bool dev_add_physical_location(struct device * dev); +bool dev_add_physical_location(struct device * dev) +{ + lx_emul_trace(__func__); + return false; +} + + +#include + +struct ctl_table_header * register_sysctl(const char * path,struct ctl_table * table) +{ + lx_emul_trace(__func__); + return NULL; +} + + +#include + +int iommu_device_use_default_domain(struct device * dev) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +int usb_acpi_port_lpm_incapable(struct usb_device * hdev,int index) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +void __init __register_sysctl_init(const char * path,struct ctl_table * table,const char * table_name) +{ + lx_emul_trace(__func__); +} + + +#include + +int sysfs_add_file_to_group(struct kobject * kobj,const struct attribute * attr,const char * group) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace(__func__); +} + + +#include + +void acpi_device_notify_remove(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +extern void software_node_notify_remove(struct device * dev); +void software_node_notify_remove(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +#include + +void net_ns_init(void) +{ + lx_emul_trace(__func__); +} diff --git a/repos/pc/src/drivers/usb_host/pc/generated_dummies.c b/repos/pc/src/drivers/usb_host/pc/generated_dummies.c index c26547801b..3d7aabd801 100644 --- a/repos/pc/src/drivers/usb_host/pc/generated_dummies.c +++ b/repos/pc/src/drivers/usb_host/pc/generated_dummies.c @@ -1,20 +1,12 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2022-07-29 + * \date 2023-03-17 */ #include -#include - -void * PDE_DATA(const struct inode * inode) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int ___ratelimit(struct ratelimit_state * rs,const char * func) @@ -23,9 +15,22 @@ int ___ratelimit(struct ratelimit_state * rs,const char * func) } -#include +#include -const char * __clk_get_name(const struct clk * clk) +struct cpumask __cpu_active_mask; + + +#include + +void __printk_safe_enter(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -79,6 +84,14 @@ unsigned long _copy_to_user(void __user * to,const void * from,unsigned long n) } +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void ack_bad_irq(unsigned int irq); void ack_bad_irq(unsigned int irq) { @@ -110,6 +123,14 @@ void async_synchronize_full(void) } +#include + +const struct cpumask * cpu_clustergroup_mask(int cpu) +{ + lx_emul_trace_and_stop(__func__); +} + + #include struct timespec64 current_time(struct inode * inode) @@ -150,9 +171,9 @@ bool file_ns_capable(const struct file * file,struct user_namespace * ns,int cap } -#include +#include -void fwnode_remove_software_node(struct fwnode_handle * fwnode) +void finish_rcuwait(struct rcuwait * w) { lx_emul_trace_and_stop(__func__); } @@ -216,6 +237,14 @@ struct pseudo_fs_context * init_pseudo(struct fs_context * fc,unsigned long magi bool initcall_debug; +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -240,17 +269,22 @@ long __sched io_schedule_timeout(long timeout) } -#include +#include -void irq_work_tick(void) +struct io_tlb_mem io_tlb_default_mem; + + +#include + +void iommu_device_unuse_default_domain(struct device * dev) { lx_emul_trace_and_stop(__func__); } -#include +#include -bool is_software_node(const struct fwnode_handle * fwnode) +void irq_work_tick(void) { lx_emul_trace_and_stop(__func__); } @@ -277,6 +311,14 @@ int kill_pid_usb_asyncio(int sig,int errno,sigval_t addr,struct pid * pid,const } +#include + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void kmem_cache_destroy(struct kmem_cache * s) @@ -370,9 +412,17 @@ int pci_write_config_dword(const struct pci_dev * dev,int where,u32 val) } -#include +#include -int printk_deferred(const char * fmt,...) +int proc_dointvec_minmax(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int proc_douintvec(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) { lx_emul_trace_and_stop(__func__); } @@ -386,14 +436,6 @@ void put_pid(struct pid * pid) } -#include - -bool refcount_dec_not_one(refcount_t * r) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void refcount_warn_saturate(refcount_t * r,enum refcount_saturation_type t) @@ -418,6 +460,22 @@ void seq_printf(struct seq_file * m,const char * f,...) } +#include + +char * skip_spaces(const char * str) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) @@ -439,6 +497,27 @@ int string_escape_mem(const char * src,size_t isz,char * dst,size_t osz,unsigned } +#include + +char * strreplace(char * s,char old,char new) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +const int sysctl_vals[] = {}; + + +#include + +bool sysfs_streq(const char * s1,const char * s2) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int task_work_add(struct task_struct * task,struct callback_head * work,enum task_work_notify_mode notify) diff --git a/repos/pc/src/drivers/usb_host/pc/spec/x86_32/dep.list b/repos/pc/src/drivers/usb_host/pc/spec/x86_32/dep.list index f1659feb79..8815541e45 100644 --- a/repos/pc/src/drivers/usb_host/pc/spec/x86_32/dep.list +++ b/repos/pc/src/drivers/usb_host/pc/spec/x86_32/dep.list @@ -6,11 +6,10 @@ arch/x86/include/asm/page_32_types.h arch/x86/include/asm/pgtable-2level_types.h arch/x86/include/asm/pgtable_32_areas.h arch/x86/include/asm/pgtable_32_types.h -arch/x86/include/asm/special_insns.h -arch/x86/include/asm/uaccess_32.h arch/x86/include/asm/user_32.h arch/x86/include/uapi/asm/posix_types_32.h include/asm-generic/asm-prototypes.h include/asm-generic/bitops/fls64.h include/asm-generic/pgtable-nopmd.h include/asm-generic/pgtable-nopud.h +include/asm-generic/softirq_stack.h diff --git a/repos/pc/src/drivers/usb_host/pc/spec/x86_32/source.list b/repos/pc/src/drivers/usb_host/pc/spec/x86_32/source.list index 510dc028d8..e2c128931d 100644 --- a/repos/pc/src/drivers/usb_host/pc/spec/x86_32/source.list +++ b/repos/pc/src/drivers/usb_host/pc/spec/x86_32/source.list @@ -8,10 +8,8 @@ drivers/base/devres.c drivers/base/driver.c drivers/base/platform.c drivers/base/property.c -drivers/clk/clk-devres.c drivers/pci/pci-driver.c drivers/usb/common/common.c -drivers/usb/common/debug.c drivers/usb/core/buffer.c drivers/usb/core/config.c drivers/usb/core/devices.c @@ -60,11 +58,7 @@ kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c diff --git a/repos/pc/src/drivers/usb_host/pc/spec/x86_64/dep.list b/repos/pc/src/drivers/usb_host/pc/spec/x86_64/dep.list index 1c43d62e62..199cf302a3 100644 --- a/repos/pc/src/drivers/usb_host/pc/spec/x86_64/dep.list +++ b/repos/pc/src/drivers/usb_host/pc/spec/x86_64/dep.list @@ -1,6 +1,7 @@ arch/x86/include/asm/atomic64_64.h arch/x86/include/asm/checksum_64.h arch/x86/include/asm/cmpxchg_64.h +arch/x86/include/asm/irq_stack.h arch/x86/include/asm/kaslr.h arch/x86/include/asm/page_64_types.h arch/x86/include/asm/pgtable_64_types.h diff --git a/repos/pc/src/drivers/usb_host/pc/spec/x86_64/source.list b/repos/pc/src/drivers/usb_host/pc/spec/x86_64/source.list index bf4158e88b..d387a5173b 100644 --- a/repos/pc/src/drivers/usb_host/pc/spec/x86_64/source.list +++ b/repos/pc/src/drivers/usb_host/pc/spec/x86_64/source.list @@ -8,10 +8,8 @@ drivers/base/devres.c drivers/base/driver.c drivers/base/platform.c drivers/base/property.c -drivers/clk/clk-devres.c drivers/pci/pci-driver.c drivers/usb/common/common.c -drivers/usb/common/debug.c drivers/usb/core/buffer.c drivers/usb/core/config.c drivers/usb/core/devices.c @@ -60,11 +58,7 @@ kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c diff --git a/repos/pc/src/include/lx_emul/initcall_order.h b/repos/pc/src/include/lx_emul/initcall_order.h index 8d13a2509b..cced4917d1 100644 --- a/repos/pc/src/include/lx_emul/initcall_order.h +++ b/repos/pc/src/include/lx_emul/initcall_order.h @@ -1,7 +1,7 @@ /* * \brief Array defining order of Linux Kernel initcalls * \author Automatically generated file - do no edit - * \date 2022-05-13 + * \date 2023-03-17 */ #pragma once @@ -9,25 +9,35 @@ static const char * lx_emul_initcall_order[] = { "__initcall_init_hw_perf_eventsearly", "__initcall_start", - "__initcall_init_real_modeearly", - "__initcall_validate_x2apicearly", + "__initcall_do_init_real_modeearly", + "__initcall_bp_init_aperfmperfearly", "__initcall_register_nmi_cpu_backtrace_handlerearly", "__initcall_spawn_ksoftirqdearly", + "__initcall_migration_initearly", + "__initcall_srcu_bootup_announceearly", + "__initcall_rcu_spawn_gp_kthreadearly", + "__initcall_check_cpu_stall_initearly", + "__initcall_rcu_sysrq_initearly", + "__initcall_cpu_stop_initearly", + "__initcall_irq_work_init_threadsearly", "__initcall_static_call_initearly", "__initcall_init_zero_pfnearly", - "__initcall_initialize_ptr_randomearly", + "__initcall_init_fs_inode_sysctlsearly", "__initcall_init_mmap_min_addr0", "__initcall_pci_realloc_setup_params0", - "__initcall_net_ns_init0", "__initcall_e820__register_nvs_regions1", + "__initcall_cpufreq_register_tsc_scaling1", "__initcall_reboot_init1", "__initcall_wq_sysfs_init1", "__initcall_ksysfs_init1", + "__initcall_schedutil_gov_init1", "__initcall_rcu_set_runtime_mode1", "__initcall_init_jiffies_clocksource1", "__initcall_init_script_binfmt1", "__initcall_init_elf_binfmt1", - "__initcall_prandom_init_early1", + "__initcall_iommu_init1", + "__initcall_cpufreq_core_init1", + "__initcall_cpufreq_gov_performance_init1", "__initcall_cpuidle_init1", "__initcall_sock_init1", "__initcall_net_inuse_init1", @@ -45,12 +55,14 @@ static const char * lx_emul_initcall_order[] = { "__initcall_backlight_class_init2", "__initcall_tty_class_init2", "__initcall_vtconsole_class_init2", + "__initcall_iommu_dev_init2", "__initcall_mipi_dsi_bus_init2", "__initcall_devlink_class_init2", "__initcall_software_node_init2", "__initcall_i2c_init2", "__initcall_thermal_init2", - "__initcall_init_ladder2", + "__initcall_init_menu2", + "__initcall_pcc_init2", "__initcall_amd_postcore_init2", "__initcall_kobject_uevent_init2", "__initcall_bts_init3", @@ -58,11 +70,13 @@ static const char * lx_emul_initcall_order[] = { "__initcall_boot_params_ksysfs_init3", "__initcall_sbf_init3", "__initcall_arch_kdebugfs_init3", + "__initcall_xfd_update_static_branch3", "__initcall_intel_pconfig_init3", "__initcall_ffh_cstate_init3", "__initcall_kcmp_cookies_init3", "__initcall_cryptomgr_init3", "__initcall_acpi_pci_init3", + "__initcall_iommu_dma_init3", "__initcall_pci_arch_init3", "__initcall_init_vdso4", "__initcall_fixup_ht_bug4", @@ -90,6 +104,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_acpi_init4", "__initcall_pnp_init4", "__initcall_misc_init4", + "__initcall_iommu_subsys_init4", "__initcall_dma_buf_init4", "__initcall_phy_init4", "__initcall_usb_common_init4", @@ -105,12 +120,19 @@ static const char * lx_emul_initcall_order[] = { "__initcall_ieee80211_init4", "__initcall_rfkill_init4", "__initcall_pci_subsys_init4", + "__initcall_vsprintf_init_hashval4", + "__initcall_acpi_wmi_init4s", "__initcall_nmi_warning_debugfs5", "__initcall_hpet_late_init5", "__initcall_init_amd_nbs5", "__initcall_iomem_init_inode5", "__initcall_clocksource_done_booting5", + "__initcall_init_fs_stat_sysctls5", + "__initcall_init_fs_exec_sysctls5", "__initcall_init_pipe_fs5", + "__initcall_init_fs_namei_sysctls5", + "__initcall_init_fs_dcache_sysctls5", + "__initcall_init_fs_namespace_sysctls5", "__initcall_anon_inode_init5", "__initcall_proc_cmdline_init5", "__initcall_proc_consoles_init5", @@ -141,7 +163,6 @@ static const char * lx_emul_initcall_order[] = { "__initcall_populate_rootfsrootfs", "__initcall_pci_iommu_initrootfs", "__initcall_rapl_pmu_init6", - "__initcall_amd_uncore_init6", "__initcall_amd_ibs_init6", "__initcall_msr_init6", "__initcall_intel_uncore_init6", @@ -152,10 +173,11 @@ static const char * lx_emul_initcall_order[] = { "__initcall_add_rtc_cmos6", "__initcall_umwait_init6", "__initcall_ioapic_init_ops6", - "__initcall_sysfb_init6", "__initcall_iosf_mbi_init6", "__initcall_proc_execdomains_init6", + "__initcall_cpuhp_sysfs_init6", "__initcall_ioresources_init6", + "__initcall_timer_sysctl_init6", "__initcall_timekeeping_init_ops6", "__initcall_init_clocksource_sysfs6", "__initcall_init_timer_list_procfs6", @@ -165,6 +187,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_perf_event_sysfs_init6", "__initcall_system_trusted_keyring_init6", "__initcall_kswapd_init6", + "__initcall_mm_compute_batch_init6", "__initcall_workingset_init6", "__initcall_proc_vmalloc_init6", "__initcall_fcntl_init6", @@ -172,9 +195,10 @@ static const char * lx_emul_initcall_order[] = { "__initcall_start_dirtytime_writeback6", "__initcall_init_devpts_fs6", "__initcall_key_proc_init6", - "__initcall_crypto_algapi_init6", "__initcall_asymmetric_key_init6", "__initcall_x509_key_init6", + "__initcall_blake2s_mod_init6", + "__initcall_percpu_counter_startup6", "__initcall_pci_proc_init6", "__initcall_ged_driver_init6", "__initcall_acpi_ac_init6", @@ -184,8 +208,6 @@ static const char * lx_emul_initcall_order[] = { "__initcall_acpi_processor_driver_init6", "__initcall_acpi_thermal_init6", "__initcall_acpi_battery_init6", - "__initcall_gpio_clk_driver_init6", - "__initcall_plt_clk_driver_init6", "__initcall_n_null_init6", "__initcall_pty_init6", "__initcall_serial8250_init6", @@ -193,13 +215,16 @@ static const char * lx_emul_initcall_order[] = { "__initcall_exar_pci_driver_init6", "__initcall_lpss8250_pci_driver_init6", "__initcall_mid8250_pci_driver_init6", - "__initcall_drm_kms_helper_init6", + "__initcall_pericom8250_pci_driver_init6", + "__initcall_random_sysctls_init6", "__initcall_drm_core_init6", + "__initcall_drm_buddy_module_init6", + "__initcall_drm_display_helper_module_init6", "__initcall_i915_init6", "__initcall_topology_sysfs_init6", "__initcall_cacheinfo_sysfs_init6", - "__initcall_net_olddevs_init6", "__initcall_blackhole_netdev_init6", + "__initcall_phylink_init6", "__initcall_phy_module_init6", "__initcall_fixed_mdio_bus_init6", "__initcall_iwl_drv_init6", @@ -215,6 +240,7 @@ static const char * lx_emul_initcall_order[] = { "__initcall_zaurus_driver_init6", "__initcall_usbnet_init6", "__initcall_cdc_ncm_driver_init6", + "__initcall_r8153_ecm_driver_init6", "__initcall_ehci_hcd_init6", "__initcall_ehci_pci_init6", "__initcall_ohci_hcd_mod_init6", @@ -228,16 +254,28 @@ static const char * lx_emul_initcall_order[] = { "__initcall_psmouse_init6", "__initcall_pkg_temp_thermal_init6", "__initcall_thermal_throttle_init_device6", - "__initcall_pmc_atom_init6", + "__initcall_intel_pstate_init6", + "__initcall_wmi_bmof_driver_init6", "__initcall_sock_diag_init6", "__initcall_packet_init6", + "__initcall_kernel_do_mounts_initrd_sysctls_init7", + "__initcall_sld_mitigate_sysctl_init7", "__initcall_hpet_insert_resource7", + "__initcall_start_sync_check_timer7", "__initcall_update_mp_table7", "__initcall_lapic_insert_resource7", + "__initcall_print_ipi_mode7", "__initcall_print_ICs7", "__initcall_create_tlb_single_page_flush_ceiling7", - "__initcall_init_oops_id7", + "__initcall_kernel_panic_sysctls_init7", + "__initcall_kernel_panic_sysfs_init7", + "__initcall_kernel_exit_sysctls_init7", + "__initcall_kernel_exit_sysfs_init7", "__initcall_reboot_ksysfs_init7", + "__initcall_sched_core_sysctl_init7", + "__initcall_sched_fair_sysctl_init7", + "__initcall_sched_rt_sysctl_init7", + "__initcall_sched_dl_sysctl_init7", "__initcall_sched_clock_init_late7", "__initcall_sched_init_debug7", "__initcall_cpu_latency_qos_init7", @@ -245,14 +283,14 @@ static const char * lx_emul_initcall_order[] = { "__initcall_load_system_certificate_list7", "__initcall_check_early_ioremap_leak7", "__initcall_init_root_keyring7", - "__initcall_prandom_init_late7", + "__initcall_crypto_algapi_init7", "__initcall_pci_resource_alignment_sysfs_init7", "__initcall_pci_sysfs_init7", + "__initcall_dmar_free_unused_resources7", "__initcall_sync_state_resume_initcall7", "__initcall_deferred_probe_initcall7", "__initcall_regulatory_init_db7", "__initcall_pci_mmcfg_late_insert_resources7", - "__initcall_clk_disable_unused7s", "__initcall_con_initcon", "__initcall_end", "__initcall_univ8250_console_initcon", diff --git a/repos/pc/src/lib/pc/lx_emul/common_dummies.c b/repos/pc/src/lib/pc/lx_emul/common_dummies.c index d2c0189ffa..104a60ec4c 100644 --- a/repos/pc/src/lib/pc/lx_emul/common_dummies.c +++ b/repos/pc/src/lib/pc/lx_emul/common_dummies.c @@ -103,14 +103,6 @@ void ignore_signals(struct task_struct * t) } -#include - -void calc_global_load(void) -{ - lx_emul_trace(__func__); -} - - #include void account_process_tick(struct task_struct * p,int user_tick) @@ -143,6 +135,7 @@ void kernfs_put(struct kernfs_node * kn) #include +struct random_ready_callback; int add_random_ready_callback(struct random_ready_callback * rdy) { lx_emul_trace(__func__); @@ -150,7 +143,7 @@ int add_random_ready_callback(struct random_ready_callback * rdy) } -void add_device_randomness(const void * buf,unsigned int size) +void add_device_randomness(const void * buf, size_t size) { lx_emul_trace(__func__); } @@ -158,7 +151,7 @@ void add_device_randomness(const void * buf,unsigned int size) #include -void add_interrupt_randomness(int irq,int irq_flags) +void add_interrupt_randomness(int irq) { lx_emul_trace(__func__); } diff --git a/repos/pc/src/lib/pc/lx_emul/dep.list b/repos/pc/src/lib/pc/lx_emul/dep.list index 0d4aea3f98..91fb48a43d 100644 --- a/repos/pc/src/lib/pc/lx_emul/dep.list +++ b/repos/pc/src/lib/pc/lx_emul/dep.list @@ -1,9 +1,9 @@ arch/x86/include/asm/acenv.h arch/x86/include/asm/acpi.h arch/x86/include/asm/alternative.h -arch/x86/include/asm/apic.h arch/x86/include/asm/apicdef.h arch/x86/include/asm/arch_hweight.h +arch/x86/include/asm/archrandom.h arch/x86/include/asm/asm.h arch/x86/include/asm/atomic.h arch/x86/include/asm/barrier.h @@ -15,9 +15,10 @@ arch/x86/include/asm/checksum.h arch/x86/include/asm/clocksource.h arch/x86/include/asm/cmpxchg.h arch/x86/include/asm/compat.h -arch/x86/include/asm/cpu_entry_area.h -arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpu.h +arch/x86/include/asm/cpu_entry_area.h +arch/x86/include/asm/cpufeature.h +arch/x86/include/asm/cpufeatures.h arch/x86/include/asm/cpumask.h arch/x86/include/asm/delay.h arch/x86/include/asm/desc.h @@ -25,11 +26,13 @@ arch/x86/include/asm/desc_defs.h arch/x86/include/asm/device.h arch/x86/include/asm/disabled-features.h arch/x86/include/asm/div64.h +arch/x86/include/asm/dma-mapping.h arch/x86/include/asm/dma.h arch/x86/include/asm/elf.h arch/x86/include/asm/emergency-restart.h arch/x86/include/asm/exec.h arch/x86/include/asm/extable.h +arch/x86/include/asm/extable_fixup_types.h arch/x86/include/asm/fixmap.h arch/x86/include/asm/fpu/api.h arch/x86/include/asm/fpu/types.h @@ -38,15 +41,14 @@ arch/x86/include/asm/ftrace.h arch/x86/include/asm/hardirq.h arch/x86/include/asm/hw_breakpoint.h arch/x86/include/asm/hw_irq.h +arch/x86/include/asm/ibt.h arch/x86/include/asm/intel_ds.h arch/x86/include/asm/invpcid.h arch/x86/include/asm/irq.h -arch/x86/include/asm/irq_stack.h arch/x86/include/asm/irq_vectors.h arch/x86/include/asm/irq_work.h arch/x86/include/asm/irqdomain.h arch/x86/include/asm/ist.h -arch/x86/include/asm/jailhouse_para.h arch/x86/include/asm/kdebug.h arch/x86/include/asm/kgdb.h arch/x86/include/asm/kprobes.h @@ -64,17 +66,13 @@ arch/x86/include/asm/mpspec_def.h arch/x86/include/asm/msi.h arch/x86/include/asm/msr-index.h arch/x86/include/asm/msr.h -arch/x86/include/asm/mwait.h arch/x86/include/asm/nmi.h arch/x86/include/asm/nops.h -arch/x86/include/asm/nospec-branch.h arch/x86/include/asm/numa.h arch/x86/include/asm/orc_types.h -arch/x86/include/asm/page_64.h arch/x86/include/asm/page_types.h arch/x86/include/asm/paravirt.h arch/x86/include/asm/pci.h -arch/x86/include/asm/pci_x86.h arch/x86/include/asm/percpu.h arch/x86/include/asm/perf_event.h arch/x86/include/asm/pgtable_areas.h @@ -89,7 +87,8 @@ arch/x86/include/asm/ptrace.h arch/x86/include/asm/required-features.h arch/x86/include/asm/rmwcc.h arch/x86/include/asm/segment.h -arch/x86/include/asm/set_memory.h +arch/x86/include/asm/shared/msr.h +arch/x86/include/asm/shared/tdx.h arch/x86/include/asm/shmparam.h arch/x86/include/asm/signal.h arch/x86/include/asm/smap.h @@ -100,25 +99,23 @@ arch/x86/include/asm/stacktrace.h arch/x86/include/asm/static_call.h arch/x86/include/asm/string.h arch/x86/include/asm/syscall_wrapper.h +arch/x86/include/asm/tdx.h arch/x86/include/asm/text-patching.h arch/x86/include/asm/thread_info.h -arch/x86/include/asm/timer.h arch/x86/include/asm/timex.h -arch/x86/include/asm/tlb.h arch/x86/include/asm/tlbbatch.h arch/x86/include/asm/tlbflush.h arch/x86/include/asm/topology.h arch/x86/include/asm/trace_clock.h arch/x86/include/asm/tsc.h arch/x86/include/asm/uaccess.h -arch/x86/include/asm/uaccess_64.h arch/x86/include/asm/unistd.h arch/x86/include/asm/unwind_hints.h arch/x86/include/asm/user.h arch/x86/include/asm/user32.h arch/x86/include/asm/vdso.h arch/x86/include/asm/vdso/clocksource.h -arch/x86/include/asm/vga.h +arch/x86/include/asm/vdso/processor.h arch/x86/include/asm/vmalloc.h arch/x86/include/asm/vmxfeatures.h arch/x86/include/asm/word-at-a-time.h @@ -145,8 +142,8 @@ arch/x86/include/uapi/asm/signal.h arch/x86/include/uapi/asm/stat.h arch/x86/include/uapi/asm/swab.h arch/x86/include/uapi/asm/unistd.h -arch/x86/include/uapi/asm/vsyscall.h drivers/base/base.h +drivers/base/physical_location.h drivers/base/power/power.h drivers/base/trace.h drivers/pci/pci.h @@ -176,12 +173,11 @@ include/acpi/platform/acgcc.h include/acpi/platform/acgccex.h include/acpi/platform/aclinux.h include/acpi/platform/aclinuxex.h -include/asm-generic/atomic-instrumented.h -include/asm-generic/atomic-long.h +include/asm-generic/access_ok.h include/asm-generic/barrier.h include/asm-generic/bitops/const_hweight.h include/asm-generic/bitops/ext2-atomic-setbit.h -include/asm-generic/bitops/find.h +include/asm-generic/bitops/generic-non-atomic.h include/asm-generic/bitops/instrumented-atomic.h include/asm-generic/bitops/instrumented-lock.h include/asm-generic/bitops/instrumented-non-atomic.h @@ -192,9 +188,9 @@ include/asm-generic/bug.h include/asm-generic/cacheflush.h include/asm-generic/compat.h include/asm-generic/delay.h -include/asm-generic/div64.h include/asm-generic/early_ioremap.h include/asm-generic/error-injection.h +include/asm-generic/export.h include/asm-generic/fixmap.h include/asm-generic/getorder.h include/asm-generic/int-ll64.h @@ -210,7 +206,6 @@ include/asm-generic/mmiowb.h include/asm-generic/mmu_context.h include/asm-generic/module.h include/asm-generic/param.h -include/asm-generic/pci.h include/asm-generic/pci_iomap.h include/asm-generic/percpu.h include/asm-generic/pgtable-nop4d.h @@ -219,28 +214,23 @@ include/asm-generic/qspinlock_types.h include/asm-generic/resource.h include/asm-generic/rwonce.h include/asm-generic/sections.h -include/asm-generic/set_memory.h -include/asm-generic/softirq_stack.h -include/asm-generic/termios.h -include/asm-generic/tlb.h include/asm-generic/topology.h include/asm-generic/unaligned.h -include/crypto/sha1.h include/linux/acpi.h -include/linux/acpi_iort.h -include/linux/aer.h include/linux/alarmtimer.h include/linux/align.h include/linux/apm_bios.h include/linux/arch_topology.h include/linux/assoc_array.h include/linux/async.h -include/linux/atomic-arch-fallback.h include/linux/atomic.h +include/linux/atomic/atomic-arch-fallback.h +include/linux/atomic/atomic-instrumented.h +include/linux/atomic/atomic-long.h include/linux/audit.h +include/linux/audit_arch.h include/linux/auxvec.h include/linux/backing-dev-defs.h -include/linux/bcd.h include/linux/binfmts.h include/linux/bio.h include/linux/bit_spinlock.h @@ -249,15 +239,10 @@ include/linux/bitmap.h include/linux/bitops.h include/linux/bitrev.h include/linux/bits.h -include/linux/blk-cgroup.h include/linux/blk_types.h include/linux/blkdev.h include/linux/bottom_half.h -include/linux/bpf-cgroup.h -include/linux/bpf-netns.h -include/linux/bpf.h -include/linux/bpfptr.h -include/linux/bsg.h +include/linux/bpf-cgroup-defs.h include/linux/bug.h include/linux/build_bug.h include/linux/buildid.h @@ -265,12 +250,13 @@ include/linux/bvec.h include/linux/byteorder/generic.h include/linux/byteorder/little_endian.h include/linux/cache.h +include/linux/cacheflush.h include/linux/capability.h include/linux/cc_platform.h include/linux/cdev.h -include/linux/cfi.h include/linux/cgroup-defs.h include/linux/cgroup.h +include/linux/cgroup_api.h include/linux/clk-provider.h include/linux/clk.h include/linux/clk/clk-conf.h @@ -279,6 +265,7 @@ include/linux/clocksource.h include/linux/clocksource_ids.h include/linux/compat.h include/linux/compiler-gcc.h +include/linux/compiler-version.h include/linux/compiler.h include/linux/compiler_attributes.h include/linux/compiler_types.h @@ -288,26 +275,26 @@ include/linux/console.h include/linux/console_struct.h include/linux/consolemap.h include/linux/const.h +include/linux/container_of.h include/linux/context_tracking.h +include/linux/context_tracking_irq.h include/linux/context_tracking_state.h include/linux/cpu.h include/linux/cpufreq.h include/linux/cpuhotplug.h -include/linux/cpuidle.h include/linux/cpumask.h +include/linux/cpumask_api.h include/linux/cpuset.h include/linux/crash_core.h include/linux/crc32.h include/linux/crc32poly.h include/linux/cred.h include/linux/ctype.h -include/linux/dax.h include/linux/dcache.h include/linux/debug_locks.h include/linux/debugfs.h include/linux/debugobjects.h include/linux/delay.h -include/linux/delayacct.h include/linux/delayed_call.h include/linux/dev_printk.h include/linux/device.h @@ -325,7 +312,6 @@ include/linux/dqblk_v2.h include/linux/dynamic_debug.h include/linux/dynamic_queue_limits.h include/linux/edd.h -include/linux/elevator.h include/linux/elf-randomize.h include/linux/elf.h include/linux/elfcore.h @@ -335,7 +321,6 @@ include/linux/errname.h include/linux/errno.h include/linux/error-injection.h include/linux/errseq.h -include/linux/etherdevice.h include/linux/ethtool.h include/linux/eventfd.h include/linux/export.h @@ -343,48 +328,49 @@ include/linux/fault-inject-usercopy.h include/linux/fault-inject.h include/linux/fcntl.h include/linux/file.h -include/linux/filter.h +include/linux/find.h include/linux/flex_proportions.h include/linux/freelist.h include/linux/freezer.h include/linux/fs.h +include/linux/fs_api.h include/linux/fs_context.h include/linux/fs_types.h include/linux/ftrace.h include/linux/ftrace_irq.h include/linux/fwnode.h -include/linux/genhd.h include/linux/gfp.h +include/linux/gfp_types.h include/linux/gpio/consumer.h include/linux/hardirq.h include/linux/hash.h include/linux/hashtable.h +include/linux/hashtable_api.h include/linux/highmem-internal.h include/linux/highmem.h include/linux/highuid.h include/linux/hrtimer.h +include/linux/hrtimer_api.h include/linux/hrtimer_defs.h include/linux/huge_mm.h include/linux/hugetlb.h include/linux/hugetlb_inline.h -include/linux/hypervisor.h -include/linux/icmpv6.h include/linux/idr.h -include/linux/if_arp.h include/linux/if_ether.h include/linux/if_link.h -include/linux/if_vlan.h include/linux/in.h include/linux/in6.h include/linux/indirect_call_wrapper.h include/linux/init.h include/linux/init_task.h +include/linux/instruction_pointer.h include/linux/instrumentation.h include/linux/instrumented.h include/linux/interrupt.h -include/linux/interval_tree.h include/linux/io.h +include/linux/ioasid.h include/linux/iocontext.h +include/linux/iommu.h include/linux/iopoll.h include/linux/ioport.h include/linux/ioprio.h @@ -405,6 +391,7 @@ include/linux/jump_label.h include/linux/jump_label_ratelimit.h include/linux/kallsyms.h include/linux/kasan-checks.h +include/linux/kasan-enabled.h include/linux/kasan.h include/linux/kconfig.h include/linux/kcsan-checks.h @@ -418,18 +405,25 @@ include/linux/kernel_stat.h include/linux/kernfs.h include/linux/kexec.h include/linux/key.h +include/linux/kfifo.h include/linux/kgdb.h include/linux/klist.h include/linux/kmemleak.h include/linux/kmod.h +include/linux/kmsan-checks.h +include/linux/kmsan.h +include/linux/kmsan_types.h include/linux/kmsg_dump.h include/linux/kobject.h +include/linux/kobject_api.h include/linux/kobject_ns.h include/linux/kprobes.h include/linux/kref.h +include/linux/kref_api.h include/linux/kstrtox.h include/linux/kthread.h include/linux/ktime.h +include/linux/ktime_api.h include/linux/kvm_para.h include/linux/latencytop.h include/linux/limits.h @@ -445,10 +439,12 @@ include/linux/llist.h include/linux/local_lock.h include/linux/local_lock_internal.h include/linux/lockdep.h +include/linux/lockdep_api.h include/linux/lockdep_types.h include/linux/lockref.h include/linux/log2.h include/linux/logic_pio.h +include/linux/maple_tree.h include/linux/math.h include/linux/math64.h include/linux/mdio.h @@ -459,7 +455,6 @@ include/linux/memory_hotplug.h include/linux/mempolicy.h include/linux/mempool.h include/linux/memremap.h -include/linux/migrate.h include/linux/migrate_mode.h include/linux/mii.h include/linux/mii_timestamper.h @@ -471,14 +466,15 @@ include/linux/mman.h include/linux/mmap_lock.h include/linux/mmdebug.h include/linux/mmu_context.h -include/linux/mmu_notifier.h include/linux/mmzone.h +include/linux/mnt_idmapping.h include/linux/mod_devicetable.h include/linux/module.h include/linux/moduleparam.h include/linux/mount.h include/linux/msi.h include/linux/mutex.h +include/linux/mutex_api.h include/linux/net.h include/linux/netdev_features.h include/linux/netdevice.h @@ -489,6 +485,7 @@ include/linux/nls.h include/linux/nmi.h include/linux/node.h include/linux/nodemask.h +include/linux/nospec.h include/linux/notifier.h include/linux/ns_common.h include/linux/nsproxy.h @@ -502,7 +499,6 @@ include/linux/of_device.h include/linux/of_fdt.h include/linux/of_graph.h include/linux/of_irq.h -include/linux/of_pci.h include/linux/of_platform.h include/linux/once.h include/linux/once_lite.h @@ -518,9 +514,7 @@ include/linux/pagemap.h include/linux/panic.h include/linux/panic_notifier.h include/linux/path.h -include/linux/pci-dma-compat.h include/linux/pci.h -include/linux/pci_hotplug.h include/linux/pci_ids.h include/linux/percpu-defs.h include/linux/percpu-refcount.h @@ -541,6 +535,7 @@ include/linux/platform_device.h include/linux/plist.h include/linux/pm.h include/linux/pm_domain.h +include/linux/pm_opp.h include/linux/pm_qos.h include/linux/pm_runtime.h include/linux/pm_wakeup.h @@ -561,6 +556,7 @@ include/linux/psi.h include/linux/psi_types.h include/linux/ptr_ring.h include/linux/ptrace.h +include/linux/ptrace_api.h include/linux/pvclock_gtod.h include/linux/quota.h include/linux/radix-tree.h @@ -571,6 +567,7 @@ include/linux/ratelimit_types.h include/linux/rbtree.h include/linux/rbtree_augmented.h include/linux/rbtree_latch.h +include/linux/rbtree_types.h include/linux/rcu_node_tree.h include/linux/rcu_segcblist.h include/linux/rcu_sync.h @@ -578,18 +575,22 @@ include/linux/rculist.h include/linux/rculist_bl.h include/linux/rculist_nulls.h include/linux/rcupdate.h -include/linux/rcupdate_wait.h include/linux/rcutree.h include/linux/rcuwait.h include/linux/reboot.h +include/linux/ref_tracker.h include/linux/refcount.h include/linux/resource.h include/linux/resource_ext.h include/linux/restart_block.h +include/linux/rethook.h include/linux/rhashtable-types.h include/linux/ring_buffer.h +include/linux/rmap.h include/linux/rtc.h +include/linux/rtmutex.h include/linux/rtnetlink.h +include/linux/rv.h include/linux/rwlock.h include/linux/rwlock_api_smp.h include/linux/rwlock_types.h @@ -597,6 +598,7 @@ include/linux/rwsem.h include/linux/sbitmap.h include/linux/scatterlist.h include/linux/sched.h +include/linux/sched/affinity.h include/linux/sched/autogroup.h include/linux/sched/clock.h include/linux/sched/coredump.h @@ -604,9 +606,7 @@ include/linux/sched/cpufreq.h include/linux/sched/cputime.h include/linux/sched/deadline.h include/linux/sched/debug.h -include/linux/sched/hotplug.h include/linux/sched/idle.h -include/linux/sched/init.h include/linux/sched/isolation.h include/linux/sched/jobctl.h include/linux/sched/loadavg.h @@ -614,6 +614,7 @@ include/linux/sched/mm.h include/linux/sched/nohz.h include/linux/sched/numa_balancing.h include/linux/sched/prio.h +include/linux/sched/rseq_api.h include/linux/sched/rt.h include/linux/sched/sd_flags.h include/linux/sched/signal.h @@ -621,12 +622,12 @@ include/linux/sched/smt.h include/linux/sched/stat.h include/linux/sched/sysctl.h include/linux/sched/task.h +include/linux/sched/task_flags.h include/linux/sched/task_stack.h include/linux/sched/topology.h include/linux/sched/types.h include/linux/sched/user.h include/linux/sched/wake_q.h -include/linux/sched/xacct.h include/linux/sched_clock.h include/linux/screen_info.h include/linux/seccomp.h @@ -638,7 +639,6 @@ include/linux/seq_buf.h include/linux/seq_file.h include/linux/seq_file_net.h include/linux/seqlock.h -include/linux/set_memory.h include/linux/shm.h include/linux/shrinker.h include/linux/signal.h @@ -652,10 +652,13 @@ include/linux/smp_types.h include/linux/smpboot.h include/linux/socket.h include/linux/sockptr.h +include/linux/softirq.h include/linux/sort.h include/linux/spinlock.h +include/linux/spinlock_api.h include/linux/spinlock_api_smp.h include/linux/spinlock_types.h +include/linux/spinlock_types_raw.h include/linux/splice.h include/linux/srcu.h include/linux/srcutree.h @@ -665,6 +668,7 @@ include/linux/stat.h include/linux/static_call.h include/linux/static_call_types.h include/linux/static_key.h +include/linux/stdarg.h include/linux/stddef.h include/linux/stop_machine.h include/linux/string.h @@ -674,10 +678,13 @@ include/linux/stringify.h include/linux/suspend.h include/linux/swab.h include/linux/swait.h +include/linux/swait_api.h include/linux/swap.h +include/linux/swiotlb.h include/linux/sync_core.h include/linux/syscall_user_dispatch.h include/linux/syscalls.h +include/linux/syscalls_api.h include/linux/syscore_ops.h include/linux/sysctl.h include/linux/sysfs.h @@ -705,13 +712,15 @@ include/linux/trace_recursion.h include/linux/trace_seq.h include/linux/tracepoint-defs.h include/linux/tracepoint.h -include/linux/tsacct_kern.h include/linux/tty.h +include/linux/tty_buffer.h include/linux/tty_driver.h include/linux/tty_ldisc.h +include/linux/tty_port.h include/linux/typecheck.h include/linux/types.h include/linux/u64_stats_sync.h +include/linux/u64_stats_sync_api.h include/linux/uaccess.h include/linux/udp.h include/linux/uidgid.h @@ -724,7 +733,7 @@ include/linux/user_namespace.h include/linux/userfaultfd_k.h include/linux/utsname.h include/linux/uuid.h -include/linux/vgaarb.h +include/linux/verification.h include/linux/vm_event_item.h include/linux/vmalloc.h include/linux/vmpressure.h @@ -733,33 +742,35 @@ include/linux/vt.h include/linux/vt_kern.h include/linux/vtime.h include/linux/wait.h +include/linux/wait_api.h include/linux/wait_bit.h include/linux/win_minmax.h include/linux/workqueue.h +include/linux/workqueue_api.h include/linux/writeback.h include/linux/ww_mutex.h include/linux/xarray.h include/net/addrconf.h include/net/checksum.h +include/net/dropreason.h include/net/dst.h include/net/dst_ops.h include/net/fib_notifier.h include/net/fib_rules.h include/net/flow.h include/net/flow_dissector.h -include/net/flow_offload.h -include/net/gen_stats.h include/net/if_inet6.h include/net/inet_connection_sock.h +include/net/inet_dscp.h include/net/inet_frag.h include/net/inet_sock.h include/net/inet_timewait_sock.h include/net/ipv6.h -include/net/ipv6_stubs.h include/net/l3mdev.h -include/net/ndisc.h include/net/neighbour.h +include/net/net_debug.h include/net/net_namespace.h +include/net/net_trackers.h include/net/netlink.h include/net/netns/bpf.h include/net/netns/can.h @@ -768,6 +779,7 @@ include/net/netns/hash.h include/net/netns/ieee802154_6lowpan.h include/net/netns/ipv4.h include/net/netns/ipv6.h +include/net/netns/mctp.h include/net/netns/mib.h include/net/netns/mpls.h include/net/netns/netfilter.h @@ -777,14 +789,12 @@ include/net/netns/packet.h include/net/netns/sctp.h include/net/netns/smc.h include/net/netns/unix.h -include/net/netns/x_tables.h include/net/netns/xdp.h include/net/netns/xfrm.h include/net/netprio_cgroup.h include/net/page_pool.h include/net/request_sock.h include/net/rtnetlink.h -include/net/sch_generic.h include/net/scm.h include/net/snmp.h include/net/sock.h @@ -792,7 +802,9 @@ include/net/tcp_states.h include/net/timewait_sock.h include/net/xdp.h include/trace/define_trace.h +include/trace/events/error_report.h include/trace/events/irq.h +include/trace/events/lock.h include/trace/events/power.h include/trace/events/sched.h include/trace/events/timer.h @@ -820,6 +832,7 @@ include/uapi/asm-generic/siginfo.h include/uapi/asm-generic/signal-defs.h include/uapi/asm-generic/socket.h include/uapi/asm-generic/sockios.h +include/uapi/asm-generic/termbits-common.h include/uapi/asm-generic/termbits.h include/uapi/asm-generic/termios.h include/uapi/asm-generic/types.h @@ -829,10 +842,7 @@ include/uapi/linux/audit.h include/uapi/linux/auxvec.h include/uapi/linux/binfmts.h include/uapi/linux/blkzoned.h -include/uapi/linux/bpf.h -include/uapi/linux/bpf_common.h include/uapi/linux/bpf_perf_event.h -include/uapi/linux/bsg.h include/uapi/linux/byteorder/little_endian.h include/uapi/linux/capability.h include/uapi/linux/cgroupstats.h @@ -846,22 +856,20 @@ include/uapi/linux/ethtool.h include/uapi/linux/eventpoll.h include/uapi/linux/fcntl.h include/uapi/linux/fib_rules.h -include/uapi/linux/filter.h include/uapi/linux/fs.h -include/uapi/linux/gen_stats.h include/uapi/linux/hdlc/ioctl.h include/uapi/linux/icmpv6.h include/uapi/linux/if.h include/uapi/linux/if_addr.h -include/uapi/linux/if_arp.h include/uapi/linux/if_bonding.h include/uapi/linux/if_ether.h include/uapi/linux/if_link.h include/uapi/linux/if_packet.h -include/uapi/linux/if_vlan.h include/uapi/linux/in.h include/uapi/linux/in6.h include/uapi/linux/ioctl.h +include/uapi/linux/iommu.h +include/uapi/linux/ioprio.h include/uapi/linux/ipc.h include/uapi/linux/ipv6.h include/uapi/linux/irqnr.h @@ -896,6 +904,7 @@ include/uapi/linux/pkt_cls.h include/uapi/linux/pkt_sched.h include/uapi/linux/poll.h include/uapi/linux/posix_types.h +include/uapi/linux/prctl.h include/uapi/linux/ptrace.h include/uapi/linux/quota.h include/uapi/linux/random.h @@ -950,19 +959,31 @@ include/vdso/time.h include/vdso/time32.h include/vdso/time64.h include/video/edid.h -include/video/vga.h kernel/irq/debug.h kernel/irq/internals.h kernel/irq/settings.h kernel/locking/lock_events.h kernel/locking/lock_events_list.h kernel/locking/mutex.h +kernel/locking/ww_mutex.h kernel/sched/autogroup.h +kernel/sched/clock.c +kernel/sched/completion.c kernel/sched/cpudeadline.h +kernel/sched/cpupri.c kernel/sched/cpupri.h +kernel/sched/debug.c kernel/sched/features.h +kernel/sched/isolation.c +kernel/sched/loadavg.c +kernel/sched/sched-pelt.h kernel/sched/sched.h kernel/sched/stats.h +kernel/sched/stop_task.c +kernel/sched/swait.c +kernel/sched/topology.c +kernel/sched/wait.c +kernel/sched/wait_bit.c kernel/smpboot.h kernel/time/ntp_internal.h kernel/time/tick-internal.h @@ -974,3 +995,4 @@ lib/crc32defs.h lib/kstrtox.h mm/internal.h mm/slab.h +mm/swap.h diff --git a/repos/pc/src/lib/wifi/dep.list b/repos/pc/src/lib/wifi/dep.list index 7a934a2eac..b8e2040c18 100644 --- a/repos/pc/src/lib/wifi/dep.list +++ b/repos/pc/src/lib/wifi/dep.list @@ -1,5 +1,4 @@ -arch/x86/include/asm/vdso/processor.h -certs/common.h +arch/x86/include/asm/set_memory.h crypto/internal.h drivers/net/wireless/intel/iwlwifi/dvm/agn.h drivers/net/wireless/intel/iwlwifi/dvm/calib.h @@ -37,9 +36,9 @@ drivers/net/wireless/intel/iwlwifi/fw/api/rs.h drivers/net/wireless/intel/iwlwifi/fw/api/rx.h drivers/net/wireless/intel/iwlwifi/fw/api/scan.h drivers/net/wireless/intel/iwlwifi/fw/api/sf.h -drivers/net/wireless/intel/iwlwifi/fw/api/soc.h drivers/net/wireless/intel/iwlwifi/fw/api/sta.h drivers/net/wireless/intel/iwlwifi/fw/api/stats.h +drivers/net/wireless/intel/iwlwifi/fw/api/system.h drivers/net/wireless/intel/iwlwifi/fw/api/tdls.h drivers/net/wireless/intel/iwlwifi/fw/api/time-event.h drivers/net/wireless/intel/iwlwifi/fw/api/tx.h @@ -78,6 +77,7 @@ drivers/net/wireless/intel/iwlwifi/iwl-phy-db.h drivers/net/wireless/intel/iwlwifi/iwl-prph.h drivers/net/wireless/intel/iwlwifi/iwl-scd.h drivers/net/wireless/intel/iwlwifi/iwl-trans.h +drivers/net/wireless/intel/iwlwifi/mei/iwl-mei.h drivers/net/wireless/intel/iwlwifi/mvm/constants.h drivers/net/wireless/intel/iwlwifi/mvm/debugfs.h drivers/net/wireless/intel/iwlwifi/mvm/fw-api.h @@ -119,6 +119,7 @@ drivers/net/wireless/realtek/rtlwifi/rtl8188ee/table.h drivers/net/wireless/realtek/rtlwifi/rtl8188ee/trx.h drivers/net/wireless/realtek/rtlwifi/stats.h drivers/net/wireless/realtek/rtlwifi/wifi.h +include/asm-generic/set_memory.h include/crypto/acompress.h include/crypto/aead.h include/crypto/aes.h @@ -149,18 +150,24 @@ include/crypto/md5.h include/crypto/null.h include/crypto/rng.h include/crypto/scatterwalk.h +include/crypto/sha1.h include/crypto/sha2.h include/crypto/sha256_base.h include/crypto/skcipher.h include/crypto/streebog.h include/dt-bindings/leds/common.h +include/keys/asymmetric-type.h include/linux/asn1.h include/linux/asn1_ber_bytecode.h include/linux/asn1_decoder.h include/linux/average.h +include/linux/bpf-cgroup.h +include/linux/bpf.h include/linux/bpf_local_storage.h include/linux/bpf_trace.h +include/linux/bpfptr.h include/linux/bsearch.h +include/linux/btf.h include/linux/btf_ids.h include/linux/cookie.h include/linux/cpu_rmap.h @@ -169,28 +176,33 @@ include/linux/crypto.h include/linux/devcoredump.h include/linux/dmaengine.h include/linux/errqueue.h +include/linux/etherdevice.h include/linux/ethtool_netlink.h +include/linux/filter.h include/linux/fips.h include/linux/firmware.h include/linux/gcd.h include/linux/genetlink.h +include/linux/icmpv6.h include/linux/ieee80211.h +include/linux/if_arp.h include/linux/if_bridge.h include/linux/if_macvlan.h include/linux/if_tun.h include/linux/if_tunnel.h +include/linux/if_vlan.h include/linux/inet.h include/linux/inetdevice.h include/linux/ip.h include/linux/ipv6_route.h include/linux/kcov.h +include/linux/key-type.h include/linux/leds.h include/linux/miscdevice.h include/linux/mpls.h include/linux/netfilter.h -include/linux/netfilter_ingress.h +include/linux/netfilter_netdev.h include/linux/netpoll.h -include/linux/nospec.h include/linux/nvmem-consumer.h include/linux/of_net.h include/linux/phylink.h @@ -199,22 +211,24 @@ include/linux/pps_kernel.h include/linux/proc_ns.h include/linux/ptp_classify.h include/linux/ptp_clock_kernel.h +include/linux/rcupdate_trace.h include/linux/rfkill.h include/linux/rhashtable.h include/linux/sctp.h +include/linux/set_memory.h include/linux/skb_array.h include/linux/sock_diag.h include/linux/thermal.h include/linux/trace.h include/linux/units.h -include/linux/verification.h +include/linux/usb.h +include/linux/usb/ch9.h include/linux/virtio.h include/linux/virtio_byteorder.h include/linux/virtio_config.h include/linux/virtio_net.h include/linux/wireless.h include/linux/xattr.h -include/net/Space.h include/net/act_api.h include/net/arp.h include/net/bpf_sk_storage.h @@ -230,8 +244,10 @@ include/net/dsa.h include/net/dsfield.h include/net/dst_cache.h include/net/dst_metadata.h +include/net/flow_offload.h include/net/fq.h include/net/fq_impl.h +include/net/gen_stats.h include/net/genetlink.h include/net/gro.h include/net/gro_cells.h @@ -244,17 +260,22 @@ include/net/ip6_checksum.h include/net/ip6_fib.h include/net/ip_fib.h include/net/ip_tunnels.h +include/net/ipv6_stubs.h include/net/iw_handler.h include/net/lwtunnel.h include/net/mac80211.h +include/net/macsec.h +include/net/mctp.h include/net/mpls.h include/net/mptcp.h +include/net/ndisc.h include/net/netns/generic.h include/net/pkt_cls.h include/net/pkt_sched.h include/net/protocol.h include/net/regulatory.h include/net/route.h +include/net/sch_generic.h include/net/sock_reuseport.h include/net/switchdev.h include/net/tcp.h @@ -274,16 +295,23 @@ include/trace/events/qdisc.h include/trace/events/skb.h include/trace/events/sock.h include/trace/events/xdp.h +include/uapi/linux/bpf.h +include/uapi/linux/bpf_common.h include/uapi/linux/btf.h include/uapi/linux/cryptouser.h include/uapi/linux/devlink.h include/uapi/linux/errqueue.h include/uapi/linux/ethtool_netlink.h +include/uapi/linux/filter.h +include/uapi/linux/gen_stats.h include/uapi/linux/genetlink.h include/uapi/linux/hash_info.h +include/uapi/linux/if_arp.h include/uapi/linux/if_bridge.h +include/uapi/linux/if_macsec.h include/uapi/linux/if_tun.h include/uapi/linux/if_tunnel.h +include/uapi/linux/if_vlan.h include/uapi/linux/if_xdp.h include/uapi/linux/in_route.h include/uapi/linux/ip.h @@ -291,6 +319,7 @@ include/uapi/linux/ipsec.h include/uapi/linux/ipv6_route.h include/uapi/linux/kcov.h include/uapi/linux/lwtunnel.h +include/uapi/linux/mctp.h include/uapi/linux/mpls.h include/uapi/linux/net_namespace.h include/uapi/linux/nl80211.h @@ -303,6 +332,7 @@ include/uapi/linux/sctp.h include/uapi/linux/sock_diag.h include/uapi/linux/thermal.h include/uapi/linux/un.h +include/uapi/linux/usb/ch9.h include/uapi/linux/virtio_config.h include/uapi/linux/virtio_ids.h include/uapi/linux/virtio_net.h @@ -310,8 +340,9 @@ include/uapi/linux/virtio_types.h include/uapi/linux/vmcore.h include/uapi/linux/wireless.h include/uapi/linux/xattr.h -net/core/datagram.h +net/core/dev.h net/core/net-sysfs.h +net/core/sock_destructor.h net/ethtool/common.h net/mac80211/aead_api.h net/mac80211/aes_ccm.h diff --git a/repos/pc/src/lib/wifi/dummies.c b/repos/pc/src/lib/wifi/dummies.c index 18eb5f31f2..dcafbce517 100644 --- a/repos/pc/src/lib/wifi/dummies.c +++ b/repos/pc/src/lib/wifi/dummies.c @@ -42,10 +42,12 @@ void bpf_prog_change_xdp(struct bpf_prog *prev_prog, struct bpf_prog *prog) DEFINE_STATIC_KEY_FALSE(bpf_stats_enabled_key); +#ifdef CONFIG_X86_32 asmlinkage __wsum csum_partial(const void * buff,int len,__wsum sum) { lx_emul_trace_and_stop(__func__); } +#endif /* CONFIG_X86_32 */ struct static_key_false init_on_alloc; @@ -377,3 +379,120 @@ void ieee80211_free_led_names(struct ieee80211_local * local) { lx_emul_trace(__func__); } + + +#include + +pteval_t __default_kernel_pte_mask __read_mostly = ~0; + + +#include + +u32 __get_random_u32_below(u32 ceil) +{ + lx_emul_trace_and_stop(__func__); +} + + +u16 get_random_u16(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +u8 get_random_u8(void) +{ + lx_emul_trace_and_stop(__func__); +} + + +DEFINE_PER_CPU_READ_MOSTLY(cpumask_var_t, cpu_sibling_map); +EXPORT_PER_CPU_SYMBOL(cpu_sibling_map); + + +#include + +DEFINE_STATIC_KEY_FALSE(bpf_master_redirect_enabled_key); +EXPORT_SYMBOL_GPL(bpf_master_redirect_enabled_key); + + +extern const struct attribute_group dev_attr_physical_location_group; +const struct attribute_group dev_attr_physical_location_group = {}; + + +#include + +void acpi_device_notify(struct device * dev) +{ + lx_emul_trace(__func__); +} + + +extern bool dev_add_physical_location(struct device * dev); +bool dev_add_physical_location(struct device * dev) +{ + lx_emul_trace(__func__); + return false; +} + + +#include + +struct ctl_table_header * register_sysctl(const char * path,struct ctl_table * table) +{ + lx_emul_trace(__func__); + return NULL; +} + + +#include + +void gnet_stats_basic_sync_init(struct gnet_stats_basic_sync * b) +{ + lx_emul_trace(__func__); +} + + +#include + +int iommu_device_use_default_domain(struct device * dev) +{ + lx_emul_trace(__func__); + return 0; +} + + +#include + +noinstr void ct_irq_enter(void) +{ + lx_emul_trace(__func__); +} + + +#include + +noinstr void ct_irq_exit(void) +{ + lx_emul_trace(__func__); +} + + +#include + +void __init __register_sysctl_init(const char * path,struct ctl_table * table,const char * table_name) +{ + lx_emul_trace(__func__); +} + + +#include + +int sysfs_add_file_to_group(struct kobject * kobj,const struct attribute * attr,const char * group) +{ + lx_emul_trace(__func__); + return 0; +} + + +void * high_memory; diff --git a/repos/pc/src/lib/wifi/firmware.cc b/repos/pc/src/lib/wifi/firmware.cc index d35ac89e54..eeef2776e1 100644 --- a/repos/pc/src/lib/wifi/firmware.cc +++ b/repos/pc/src/lib/wifi/firmware.cc @@ -53,6 +53,7 @@ Firmware_list fw_list[] = { { "iwlwifi-so-a0-gf-a0.pnvm", 41808, nullptr }, { "iwlwifi-ty-a0-gf-a0-63.ucode", 1460012, nullptr }, { "iwlwifi-ty-a0-gf-a0-64.ucode", 1460012, "iwlwifi-ty-a0-gf-a0-63.ucode" }, + { "iwlwifi-ty-a0-gf-a0-72.ucode", 1460012, "iwlwifi-ty-a0-gf-a0-63.ucode" }, { "iwlwifi-ty-a0-gf-a0.pnvm", 41588, nullptr }, { "rtl8192eu_nic.bin", 31818, nullptr }, diff --git a/repos/pc/src/lib/wifi/generated_dummies.c b/repos/pc/src/lib/wifi/generated_dummies.c index 068746604a..a2a841fe8b 100644 --- a/repos/pc/src/lib/wifi/generated_dummies.c +++ b/repos/pc/src/lib/wifi/generated_dummies.c @@ -1,20 +1,12 @@ /* * \brief Dummy definitions of Linux Kernel functions * \author Automatically generated file - do no edit - * \date 2023-02-28 + * \date 2023-03-23 */ #include -#include - -void * PDE_DATA(const struct inode * inode) -{ - lx_emul_trace_and_stop(__func__); -} - - #include int ___ratelimit(struct ratelimit_state * rs,const char * func) @@ -23,9 +15,14 @@ int ___ratelimit(struct ratelimit_state * rs,const char * func) } -#include +#include -const char * __clk_get_name(const struct clk * clk) +struct cpumask __cpu_active_mask; + + +#include + +void __crypto_xor(u8 * dst,const u8 * src1,const u8 * src2,unsigned int len) { lx_emul_trace_and_stop(__func__); } @@ -47,25 +44,17 @@ unsigned long __fdget(unsigned int fd) } -#include +#include -int __get_unused_fd_flags(unsigned flags,unsigned long nofile) +void __printk_safe_enter(void) { lx_emul_trace_and_stop(__func__); } -#include +#include -void __gnet_stats_copy_basic(const seqcount_t * running,struct gnet_stats_basic_packed * bstats,struct gnet_stats_basic_cpu __percpu * cpu,struct gnet_stats_basic_packed * b) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void __gnet_stats_copy_queue(struct gnet_stats_queue * qstats,const struct gnet_stats_queue __percpu * cpu,const struct gnet_stats_queue * q,__u32 qlen) +void __printk_safe_exit(void) { lx_emul_trace_and_stop(__func__); } @@ -103,6 +92,14 @@ int __scm_send(struct socket * sock,struct msghdr * msg,struct scm_cookie * p) } +#include + +void __show_mem(unsigned int filter,nodemask_t * nodemask,int max_zone_idx) +{ + lx_emul_trace_and_stop(__func__); +} + + #include u32 __skb_get_hash_symmetric(const struct sk_buff * skb) @@ -129,7 +126,7 @@ void __srcu_read_unlock(struct srcu_struct * ssp,int idx) #include -void * __vmalloc_node(unsigned long size,unsigned long align,gfp_t gfp_mask,int node,const void * caller) +void * __vmalloc_node_range(unsigned long size,unsigned long align,unsigned long start,unsigned long end,gfp_t gfp_mask,pgprot_t prot,unsigned long vm_flags,int node,const void * caller) { lx_emul_trace_and_stop(__func__); } @@ -143,6 +140,14 @@ unsigned long _copy_to_user(void __user * to,const void * from,unsigned long n) } +#include + +int _printk_deferred(const char * fmt,...) +{ + lx_emul_trace_and_stop(__func__); +} + + extern void ack_bad_irq(unsigned int irq); void ack_bad_irq(unsigned int irq) { @@ -150,6 +155,14 @@ void ack_bad_irq(unsigned int irq) } +#include + +void acpi_device_notify_remove(struct device * dev) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int add_uevent_var(struct kobj_uevent_env * env,const char * format,...) @@ -182,6 +195,13 @@ int arc4_setkey(struct arc4_ctx * ctx,const u8 * in_key,unsigned int key_len) } +extern void arch_trigger_cpumask_backtrace(const cpumask_t * mask,bool exclude_self); +void arch_trigger_cpumask_backtrace(const cpumask_t * mask,bool exclude_self) +{ + lx_emul_trace_and_stop(__func__); +} + + #include async_cookie_t async_schedule_node(async_func_t func,void * data,int node) @@ -216,7 +236,7 @@ void bpf_prog_destroy(struct bpf_prog * fp) #include -void bpf_warn_invalid_xdp_action(u32 act) +void bpf_warn_invalid_xdp_action(struct net_device * dev,struct bpf_prog * prog,u32 act) { lx_emul_trace_and_stop(__func__); } @@ -238,11 +258,6 @@ void console_flush_on_panic(enum con_flush_mode mode) } -#include - -int console_printk[] = {}; - - #include void console_unblank(void) @@ -251,6 +266,14 @@ void console_unblank(void) } +#include + +void console_verbose(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int copy_bpf_fprog_from_user(struct sock_fprog * dst,sockptr_t src,int len) @@ -267,9 +290,9 @@ size_t copy_page_from_iter(struct page * page,size_t offset,size_t bytes,struct } -#include +#include -int dev_ifconf(struct net * net,struct ifconf * ifc,int size) +const struct cpumask * cpu_clustergroup_mask(int cpu) { lx_emul_trace_and_stop(__func__); } @@ -277,7 +300,23 @@ int dev_ifconf(struct net * net,struct ifconf * ifc,int size) #include -int dev_ioctl(struct net * net,unsigned int cmd,struct ifreq * ifr,bool * need_copyout) +int dev_ifconf(struct net * net,struct ifconf __user * uifc) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int dev_ioctl(struct net * net,unsigned int cmd,struct ifreq * ifr,void __user * data,bool * need_copyout) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int device_create_managed_software_node(struct device * dev,const struct property_entry * properties,const struct software_node * parent) { lx_emul_trace_and_stop(__func__); } @@ -293,7 +332,7 @@ void dst_release(struct dst_entry * dst) #include -char * dynamic_dname(struct dentry * dentry,char * buffer,int buflen,const char * fmt,...) +char * dynamic_dname(char * buffer,int buflen,const char * fmt,...) { lx_emul_trace_and_stop(__func__); } @@ -363,6 +402,14 @@ struct task_struct * find_task_by_vpid(pid_t vnr) } +#include + +void finish_rcuwait(struct rcuwait * w) +{ + lx_emul_trace_and_stop(__func__); +} + + #include struct flow_dissector flow_keys_basic_dissector; @@ -376,30 +423,6 @@ void fput(struct file * file) } -#include - -void free_uid(struct user_struct * up) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -struct fwnode_handle * fwnode_create_software_node(const struct property_entry * properties,const struct fwnode_handle * parent) -{ - lx_emul_trace_and_stop(__func__); -} - - -#include - -void fwnode_remove_software_node(struct fwnode_handle * fwnode) -{ - lx_emul_trace_and_stop(__func__); -} - - #include unsigned long gcd(unsigned long a,unsigned long b) @@ -466,7 +489,23 @@ bool gfp_pfmemalloc_allowed(gfp_t gfp_mask) #include -int gnet_stats_copy_basic(const seqcount_t * running,struct gnet_dump * d,struct gnet_stats_basic_cpu __percpu * cpu,struct gnet_stats_basic_packed * b) +void gnet_stats_add_basic(struct gnet_stats_basic_sync * bstats,struct gnet_stats_basic_sync __percpu * cpu,struct gnet_stats_basic_sync * b,bool running) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void gnet_stats_add_queue(struct gnet_stats_queue * qstats,const struct gnet_stats_queue __percpu * cpu,const struct gnet_stats_queue * q) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +int gnet_stats_copy_basic(struct gnet_dump * d,struct gnet_stats_basic_sync __percpu * cpu,struct gnet_stats_basic_sync * b,bool running) { lx_emul_trace_and_stop(__func__); } @@ -514,6 +553,14 @@ void inode_init_once(struct inode * inode) } +#include + +void __sched io_schedule(void) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void io_schedule_finish(int token) @@ -538,6 +585,19 @@ long __sched io_schedule_timeout(long timeout) } +#include + +struct io_tlb_mem io_tlb_default_mem; + + +#include + +void iommu_device_unuse_default_domain(struct device * dev) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void iov_iter_kvec(struct iov_iter * i,unsigned int direction,const struct kvec * kvec,unsigned long nr_segs,size_t count) @@ -562,14 +622,6 @@ void irq_work_tick(void) } -#include - -bool is_software_node(const struct fwnode_handle * fwnode) -{ - lx_emul_trace_and_stop(__func__); -} - - #include struct kobject *kernel_kobj; @@ -607,14 +659,6 @@ void kill_fasync(struct fasync_struct ** fp,int sig,int band) } -#include - -int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t size,void ** p) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void kmem_cache_destroy(struct kmem_cache * s) @@ -673,14 +717,6 @@ void netdev_rss_key_fill(void * buffer,size_t len) struct irq_chip no_irq_chip; -#include - -loff_t no_llseek(struct file * file,loff_t offset,int whence) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void note_interrupt(struct irq_desc * desc,irqreturn_t action_ret) @@ -726,17 +762,17 @@ int poll_select_set_timeout(struct timespec64 * to,time64_t sec,long nsec) } -#include +#include -int printk_deferred(const char * fmt,...) +int proc_dointvec_minmax(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) { lx_emul_trace_and_stop(__func__); } -#include +#include -void printk_safe_flush_on_panic(void) +int proc_douintvec(struct ctl_table * table,int write,void * buffer,size_t * lenp,loff_t * ppos) { lx_emul_trace_and_stop(__func__); } @@ -811,6 +847,14 @@ void reuseport_detach_sock(struct sock * sk) } +#include + +void reuseport_update_incoming_cpu(struct sock * sk,int val) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void scm_detach_fds(struct msghdr * msg,struct scm_cookie * scm) @@ -907,14 +951,6 @@ void sha256_update(struct sha256_state * sctx,const u8 * data,unsigned int len) } -#include - -void show_mem(unsigned int filter,nodemask_t * nodemask) -{ - lx_emul_trace_and_stop(__func__); -} - - #include void show_state_filter(unsigned int state_filter) @@ -973,7 +1009,7 @@ void sk_filter_uncharge(struct sock * sk,struct sk_filter * fp) #include -int sk_get_filter(struct sock * sk,struct sock_filter __user * ubuf,unsigned int len) +int sk_get_filter(struct sock * sk,sockptr_t optval,unsigned int len) { lx_emul_trace_and_stop(__func__); } @@ -995,6 +1031,22 @@ int sk_reuseport_attach_filter(struct sock_fprog * fprog,struct sock * sk) } +#include + +char * skip_spaces(const char * str) +{ + lx_emul_trace_and_stop(__func__); +} + + +#include + +void smp_call_function_many(const struct cpumask * mask,smp_call_func_t func,void * info,bool wait) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int smp_call_function_single(int cpu,smp_call_func_t func,void * info,int wait) @@ -1019,6 +1071,13 @@ void sock_diag_broadcast_destroy(struct sock * sk) } +extern void software_node_notify_remove(struct device * dev); +void software_node_notify_remove(struct device * dev) +{ + lx_emul_trace_and_stop(__func__); +} + + #include bool static_key_initialized; @@ -1040,11 +1099,24 @@ int string_escape_mem(const char * src,size_t isz,char * dst,size_t osz,unsigned } +#include + +char * strreplace(char * s,char old,char new) +{ + lx_emul_trace_and_stop(__func__); +} + + #include int suppress_printk; +#include + +const int sysctl_vals[] = {}; + + #include int sysfs_rename_dir_ns(struct kobject * kobj,const char * new_name,const void * new_ns) @@ -1061,17 +1133,17 @@ int sysfs_rename_link_ns(struct kobject * kobj,struct kobject * targ,const char } -#include +#include -struct callback_head * task_work_cancel(struct task_struct * task,task_work_func_t func) +bool sysfs_streq(const char * s1,const char * s2) { lx_emul_trace_and_stop(__func__); } -#include +#include -void unblank_screen(void) +struct callback_head * task_work_cancel(struct task_struct * task,task_work_func_t func) { lx_emul_trace_and_stop(__func__); } @@ -1129,6 +1201,14 @@ int xdp_do_generic_redirect(struct net_device * dev,struct sk_buff * skb,struct } +#include + +u32 xdp_master_redirect(struct xdp_buff * xdp) +{ + lx_emul_trace_and_stop(__func__); +} + + #include void __sched yield(void) diff --git a/repos/pc/src/lib/wifi/lx_emul.c b/repos/pc/src/lib/wifi/lx_emul.c index 91371d53ef..048cf8151c 100644 --- a/repos/pc/src/lib/wifi/lx_emul.c +++ b/repos/pc/src/lib/wifi/lx_emul.c @@ -437,6 +437,15 @@ void __put_page(struct page * page) } +#include + +void __folio_put(struct folio * folio) +{ + __free_pages(&folio->page, 0); + kfree(folio); +} + + #include void prandom_bytes(void *buf, size_t bytes) @@ -698,3 +707,24 @@ int pci_read_config_dword(const struct pci_dev * dev,int where,u32 * val) *val = 0; return 0; } + + +int kmem_cache_alloc_bulk(struct kmem_cache * s,gfp_t flags,size_t nr,void ** p) +{ + size_t i; + for (i = 0; i < nr; i++) + p[i] = kmem_cache_alloc(s, flags); + + return nr; +} + + +#include <../mm/slab.h> + +void * kmem_cache_alloc_lru(struct kmem_cache * cachep,struct list_lru * lru,gfp_t flags) +{ + return kmalloc(cachep->size, flags); +} + + +unsigned long __FIXADDR_TOP = 0xfffff000; diff --git a/repos/pc/src/lib/wifi/spec/x86_32/dep.list b/repos/pc/src/lib/wifi/spec/x86_32/dep.list index d3414d2994..8815541e45 100644 --- a/repos/pc/src/lib/wifi/spec/x86_32/dep.list +++ b/repos/pc/src/lib/wifi/spec/x86_32/dep.list @@ -8,17 +8,8 @@ arch/x86/include/asm/pgtable_32_areas.h arch/x86/include/asm/pgtable_32_types.h arch/x86/include/asm/user_32.h arch/x86/include/uapi/asm/posix_types_32.h -certs/system_keyring.c include/asm-generic/asm-prototypes.h include/asm-generic/bitops/fls64.h include/asm-generic/pgtable-nopmd.h include/asm-generic/pgtable-nopud.h -include/crypto/pkcs7.h -include/crypto/public_key.h -include/keys/asymmetric-type.h -include/keys/system_keyring.h -include/linux/key-type.h -include/linux/keyctl.h -include/linux/oid_registry.h -include/uapi/linux/keyctl.h -kernel/time/tick-broadcast.c +include/asm-generic/softirq_stack.h diff --git a/repos/pc/src/lib/wifi/spec/x86_32/source.list b/repos/pc/src/lib/wifi/spec/x86_32/source.list index 08e2f59251..a901c4514d 100644 --- a/repos/pc/src/lib/wifi/spec/x86_32/source.list +++ b/repos/pc/src/lib/wifi/spec/x86_32/source.list @@ -1,5 +1,4 @@ arch/x86/lib/hweight.S -certs/common.c crypto/acompress.c crypto/aead.c crypto/aes_generic.c @@ -8,6 +7,7 @@ crypto/akcipher.c crypto/algapi.c crypto/algboss.c crypto/api.c +crypto/asymmetric_keys/x509_loader.c crypto/ccm.c crypto/cipher.c crypto/cmac.c @@ -20,7 +20,6 @@ crypto/gf128mul.c crypto/ghash-generic.c crypto/hash_info.c crypto/kpp.c -crypto/memneq.c crypto/proc.c crypto/rng.c crypto/scatterwalk.c @@ -38,8 +37,6 @@ drivers/base/devres.c drivers/base/driver.c drivers/base/platform.c drivers/base/property.c -drivers/clk/clk-devres.c -drivers/net/Space.c drivers/net/loopback.c drivers/net/wireless/intel/iwlwifi/cfg/1000.c drivers/net/wireless/intel/iwlwifi/cfg/2000.c @@ -71,6 +68,7 @@ drivers/net/wireless/intel/iwlwifi/fw/init.c drivers/net/wireless/intel/iwlwifi/fw/notif-wait.c drivers/net/wireless/intel/iwlwifi/fw/paging.c drivers/net/wireless/intel/iwlwifi/fw/pnvm.c +drivers/net/wireless/intel/iwlwifi/fw/rs.c drivers/net/wireless/intel/iwlwifi/fw/smem.c drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c drivers/net/wireless/intel/iwlwifi/iwl-debug.c @@ -152,11 +150,7 @@ kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -180,6 +174,7 @@ lib/bitmap.c lib/bsearch.c lib/crc32.c lib/crypto/aes.c +lib/crypto/memneq.c lib/ctype.c lib/debug_locks.c lib/dynamic_queue_limits.c @@ -211,6 +206,7 @@ mm/util.c net/core/datagram.c net/core/dev.c net/core/dev_addr_lists.c +net/core/gro.c net/core/link_watch.c net/core/net-sysfs.c net/core/net_namespace.c @@ -229,6 +225,7 @@ net/mac80211/airtime.c net/mac80211/cfg.c net/mac80211/chan.c net/mac80211/driver-ops.c +net/mac80211/eht.c net/mac80211/ethtool.c net/mac80211/fils_aead.c net/mac80211/he.c @@ -236,6 +233,7 @@ net/mac80211/ht.c net/mac80211/ibss.c net/mac80211/iface.c net/mac80211/key.c +net/mac80211/link.c net/mac80211/main.c net/mac80211/michael.c net/mac80211/mlme.c diff --git a/repos/pc/src/lib/wifi/spec/x86_64/dep.list b/repos/pc/src/lib/wifi/spec/x86_64/dep.list index 1c43d62e62..199cf302a3 100644 --- a/repos/pc/src/lib/wifi/spec/x86_64/dep.list +++ b/repos/pc/src/lib/wifi/spec/x86_64/dep.list @@ -1,6 +1,7 @@ arch/x86/include/asm/atomic64_64.h arch/x86/include/asm/checksum_64.h arch/x86/include/asm/cmpxchg_64.h +arch/x86/include/asm/irq_stack.h arch/x86/include/asm/kaslr.h arch/x86/include/asm/page_64_types.h arch/x86/include/asm/pgtable_64_types.h diff --git a/repos/pc/src/lib/wifi/spec/x86_64/source.list b/repos/pc/src/lib/wifi/spec/x86_64/source.list index e2b8a215f3..6b44e9bf1c 100644 --- a/repos/pc/src/lib/wifi/spec/x86_64/source.list +++ b/repos/pc/src/lib/wifi/spec/x86_64/source.list @@ -1,5 +1,5 @@ +arch/x86/lib/csum-partial_64.c arch/x86/lib/hweight.S -certs/common.c crypto/acompress.c crypto/aead.c crypto/aes_generic.c @@ -8,6 +8,7 @@ crypto/akcipher.c crypto/algapi.c crypto/algboss.c crypto/api.c +crypto/asymmetric_keys/x509_loader.c crypto/ccm.c crypto/cipher.c crypto/cmac.c @@ -20,7 +21,6 @@ crypto/gf128mul.c crypto/ghash-generic.c crypto/hash_info.c crypto/kpp.c -crypto/memneq.c crypto/proc.c crypto/rng.c crypto/scatterwalk.c @@ -38,8 +38,6 @@ drivers/base/devres.c drivers/base/driver.c drivers/base/platform.c drivers/base/property.c -drivers/clk/clk-devres.c -drivers/net/Space.c drivers/net/loopback.c drivers/net/wireless/intel/iwlwifi/cfg/1000.c drivers/net/wireless/intel/iwlwifi/cfg/2000.c @@ -71,6 +69,7 @@ drivers/net/wireless/intel/iwlwifi/fw/init.c drivers/net/wireless/intel/iwlwifi/fw/notif-wait.c drivers/net/wireless/intel/iwlwifi/fw/paging.c drivers/net/wireless/intel/iwlwifi/fw/pnvm.c +drivers/net/wireless/intel/iwlwifi/fw/rs.c drivers/net/wireless/intel/iwlwifi/fw/smem.c drivers/net/wireless/intel/iwlwifi/iwl-dbg-tlv.c drivers/net/wireless/intel/iwlwifi/iwl-debug.c @@ -152,11 +151,7 @@ kernel/locking/rwsem.c kernel/notifier.c kernel/panic.c kernel/resource.c -kernel/sched/clock.c -kernel/sched/completion.c -kernel/sched/swait.c -kernel/sched/wait.c -kernel/sched/wait_bit.c +kernel/sched/build_utility.c kernel/smpboot.c kernel/softirq.c kernel/time/clockevents.c @@ -180,6 +175,7 @@ lib/bitmap.c lib/bsearch.c lib/crc32.c lib/crypto/aes.c +lib/crypto/memneq.c lib/ctype.c lib/debug_locks.c lib/dynamic_queue_limits.c @@ -210,6 +206,7 @@ mm/util.c net/core/datagram.c net/core/dev.c net/core/dev_addr_lists.c +net/core/gro.c net/core/link_watch.c net/core/net-sysfs.c net/core/net_namespace.c @@ -228,6 +225,7 @@ net/mac80211/airtime.c net/mac80211/cfg.c net/mac80211/chan.c net/mac80211/driver-ops.c +net/mac80211/eht.c net/mac80211/ethtool.c net/mac80211/fils_aead.c net/mac80211/he.c @@ -235,6 +233,7 @@ net/mac80211/ht.c net/mac80211/ibss.c net/mac80211/iface.c net/mac80211/key.c +net/mac80211/link.c net/mac80211/main.c net/mac80211/michael.c net/mac80211/mlme.c diff --git a/repos/pc/src/pc_linux/target.inc b/repos/pc/src/pc_linux/target.inc index cf5793d16d..1c56c149a1 100644 --- a/repos/pc/src/pc_linux/target.inc +++ b/repos/pc/src/pc_linux/target.inc @@ -47,6 +47,9 @@ LX_ENABLE += FB # mandatory fs support LX_ENABLE += PROC_FS SYSFS +# disable cpu frequency scaling +LX_DISABLE += SCHED_MC CPU_FREQ + # disable optimization not possible in PIC code under Genode LX_DISABLE += CC_HAS_ASM_GOTO