--- linux-intel-opt-6.5.0.orig/Documentation/ABI/testing/ima_policy +++ linux-intel-opt-6.5.0/Documentation/ABI/testing/ima_policy @@ -26,7 +26,7 @@ [uid=] [euid=] [gid=] [egid=] [fowner=] [fgroup=]] lsm: [[subj_user=] [subj_role=] [subj_type=] - [obj_user=] [obj_role=] [obj_type=]] + [obj_user=] [obj_role=] [obj_type=] [lsm=]] option: [digest_type=] [template=] [permit_directio] [appraise_type=] [appraise_flag=] [appraise_algos=] [keyrings=] @@ -138,6 +138,12 @@ measure subj_user=_ func=FILE_CHECK mask=MAY_READ + It is possible to explicitly specify which security + module a rule applies to using lsm=. If the security + module specified is not active on the system the rule + will be rejected. If lsm= is not specified the first + security module registered on the system will be assumed. + Example of measure rules using alternate PCRs:: measure func=KEXEC_KERNEL_CHECK pcr=4 --- linux-intel-opt-6.5.0.orig/Documentation/ABI/testing/sysfs-bus-fsi-devices-sbefifo +++ linux-intel-opt-6.5.0/Documentation/ABI/testing/sysfs-bus-fsi-devices-sbefifo @@ -5,6 +5,6 @@ Indicates whether or not this SBE device has experienced a timeout; i.e. the SBE did not respond within the time allotted by the driver. A value of 1 indicates that a timeout has - ocurred and no transfers have completed since the timeout. A - value of 0 indicates that no timeout has ocurred, or if one - has, more recent transfers have completed successful. + occurred and no transfers have completed since the timeout. A + value of 0 indicates that no timeout has occurred, or if one + has, more recent transfers have completed successfully. --- linux-intel-opt-6.5.0.orig/Documentation/ABI/testing/sysfs-driver-chromeos-acpi +++ linux-intel-opt-6.5.0/Documentation/ABI/testing/sysfs-driver-chromeos-acpi @@ -134,4 +134,4 @@ Description: Returns the verified boot data block shared between the firmware verification step and the kernel verification step - (binary). + (hex dump). --- linux-intel-opt-6.5.0.orig/Documentation/ABI/testing/sysfs-firmware-tdx +++ linux-intel-opt-6.5.0/Documentation/ABI/testing/sysfs-firmware-tdx @@ -0,0 +1,97 @@ +What: /sys/firmware/tdx/ +Date: March 2023 +KernelVersion: 6.3 +Contact: Isaku Yamahata , kvm@vger.kernel.org +Users: libvirt +Description: + Intel's Trust Domain Extensions (TDX) protect guest VMs from + malicious hosts and some physical attacks. This directory + represents the entry point directory for the TDX. + + This feature requires the TDX firmware to load into an isolated + memory region. It uses two-step loading process; the first + phase is NP-SEAMLDR loader that loads the next one and the + second phase is P-SEAMLDR loader that loads the TDX firmware + (a.k.a the "TDX module"). + + =============== ================================================ + keyid_num the number of SEAM keyid as an hexadecimal + number with the "0x" prefix. + =============== ================================================ + +What: /sys/firmware/tdx/tdx_module/ +Date: March 2023 +KernelVersion: 6.3 +Contact: Isaku Yamahata , kvm@vger.kernel.org +Users: libvirt +Description: + The TDX feature requires a firmware that is known as the TDX + module. The module exposes its information in the following + read-only files. The information corresponds to the data + structure named TDSYSINFO_STRUCT. Administrators or VMM + managers like libvirt can refer to it to determine if TDX is + supported and identify the loaded module. + + ================== ============================================ + status string of the TDX module status. + + * "unknown", "none": the TDX module is not + loaded + * "loaded": The TDX module is loaded, but + not initialized + * "initialized": the TDX module is fully + initialized + * "shutdown": the TDX module is shutdown due + to error during initialization. + + attributes 32-bit flags of the TDX module attributes as + a hexadecimal number with the "0x" prefix. + + * Bits 31 - a production module(0) or + a debug module(1). + * Bits 0-30 - Reserved - set to 0. + + vendor_id vendor ID as a hexadecimal number with the + "0x" prefix. + build_date build date in yyyymmdd BCD format. + build_num build number as a hexadecimal number with + the "0x" prefix. + minor_version minor version as a hexadecimal number with + the "0x" prefix. + major_version major version as a hexadecimal number with + the "0x" prefix. + ================== ============================================ + +What: /sys/firmware/tdx/tdx_module/metadata/ +Date: March 2023 +KernelVersion: 6.3 +Contact: Isaku Yamahata , kvm@vger.kernel.org +Users: qemu, libvirt +Description: + The TDX feature requires a firmware that is known as the TDX + module. The TDX module exposes its metadata in the following + read-only files. The information corresponds to the TDX global + metadata specified by 64bit field id. The file name is hex + string in lower case. The value is binary. + User space VMM like qemu needs refer to them to determine what + parameters are needed or allowed to configure guest TDs. + + ================ =============== ============================== + path name value type content + field id in hex + in lower case + ================ =============== ============================== + 1900000300000000 64bit value ATTRIBUTES_FIXED0 + 1900000300000001 64bit value ATTRIBUTES_FIXED1 + 1900000300000002 64bit value XFAM_FIXED0 + 1900000300000003 64bit value XFAM_FIXED1 + 9900000100000004 64bit value NUM_CPUID_CONFIG + 9900000300000400 array of CPUID_LEAVES + (32bit leaf, array size is NUM_CPUID_CONFIG + 32bit subleaf) + 9900000300000500 array of CPUID_VALUES + (32bit eax, array size is NUM_CPUID_CONFIG + 32bit ebx, + 32bit ecx, + 32bit edx) + ================ =============== ============================== \ No newline at end of file --- linux-intel-opt-6.5.0.orig/Documentation/ABI/testing/sysfs-fs-f2fs +++ linux-intel-opt-6.5.0/Documentation/ABI/testing/sysfs-fs-f2fs @@ -54,9 +54,9 @@ 0x00 DISABLE disable IPU(=default option in LFS mode) 0x01 FORCE all the time 0x02 SSR if SSR mode is activated - 0x04 UTIL if FS utilization is over threashold + 0x04 UTIL if FS utilization is over threshold 0x08 SSR_UTIL if SSR mode is activated and FS utilization is over - threashold + threshold 0x10 FSYNC activated in fsync path only for high performance flash storages. IPU will be triggered only if the # of dirty pages over min_fsync_blocks. @@ -117,7 +117,7 @@ Contact: "Konstantin Vyshetsky" Description: Controls the number of discards a thread will issue at a time. Higher number will allow the discard thread to finish its work - faster, at the cost of higher latency for incomming I/O. + faster, at the cost of higher latency for incoming I/O. What: /sys/fs/f2fs//min_discard_issue_time Date: December 2021 @@ -334,7 +334,7 @@ state. 2048 trials is set by default. What: /sys/fs/f2fs//extension_list -Date: Feburary 2018 +Date: February 2018 Contact: "Chao Yu" Description: Used to control configure extension list: - Query: cat /sys/fs/f2fs//extension_list --- linux-intel-opt-6.5.0.orig/Documentation/Makefile +++ linux-intel-opt-6.5.0/Documentation/Makefile @@ -92,7 +92,7 @@ fi htmldocs: - @$(srctree)/scripts/sphinx-pre-install --version-check + @$(srctree)/scripts/sphinx-pre-install --version-check --no-virtualenv @+$(foreach var,$(SPHINXDIRS),$(call loop_cmd,sphinx,html,$(var),,$(var))) texinfodocs: --- linux-intel-opt-6.5.0.orig/Documentation/admin-guide/cgroup-v1/memory.rst +++ linux-intel-opt-6.5.0/Documentation/admin-guide/cgroup-v1/memory.rst @@ -92,8 +92,13 @@ memory.oom_control set/show oom controls. memory.numa_stat show the number of memory usage per numa node - memory.kmem.limit_in_bytes This knob is deprecated and writing to - it will return -ENOTSUPP. + memory.kmem.limit_in_bytes Deprecated knob to set and read the kernel + memory hard limit. Kernel hard limit is not + supported since 5.16. Writing any value to + do file will not have any effect same as if + nokmem kernel parameter was specified. + Kernel memory is still charged and reported + by memory.kmem.usage_in_bytes. memory.kmem.usage_in_bytes show current kernel memory allocation memory.kmem.failcnt show the number of kernel memory usage hits limits --- linux-intel-opt-6.5.0.orig/Documentation/admin-guide/devices.txt +++ linux-intel-opt-6.5.0/Documentation/admin-guide/devices.txt @@ -2691,18 +2691,9 @@ 45 = /dev/ttyMM1 Marvell MPSC - port 1 (obsolete unused) 46 = /dev/ttyCPM0 PPC CPM (SCC or SMC) - port 0 ... - 49 = /dev/ttyCPM5 PPC CPM (SCC or SMC) - port 3 - 50 = /dev/ttyIOC0 Altix serial card - ... - 81 = /dev/ttyIOC31 Altix serial card + 51 = /dev/ttyCPM5 PPC CPM (SCC or SMC) - port 5 82 = /dev/ttyVR0 NEC VR4100 series SIU 83 = /dev/ttyVR1 NEC VR4100 series DSIU - 84 = /dev/ttyIOC84 Altix ioc4 serial card - ... - 115 = /dev/ttyIOC115 Altix ioc4 serial card - 116 = /dev/ttySIOC0 Altix ioc3 serial card - ... - 147 = /dev/ttySIOC31 Altix ioc3 serial card 148 = /dev/ttyPSC0 PPC PSC - port 0 ... 153 = /dev/ttyPSC5 PPC PSC - port 5 @@ -2761,10 +2752,7 @@ 43 = /dev/ttycusmx2 Callout device for ttySMX2 46 = /dev/cucpm0 Callout device for ttyCPM0 ... - 49 = /dev/cucpm5 Callout device for ttyCPM5 - 50 = /dev/cuioc40 Callout device for ttyIOC40 - ... - 81 = /dev/cuioc431 Callout device for ttyIOC431 + 51 = /dev/cucpm5 Callout device for ttyCPM5 82 = /dev/cuvr0 Callout device for ttyVR0 83 = /dev/cuvr1 Callout device for ttyVR1 --- linux-intel-opt-6.5.0.orig/Documentation/admin-guide/kernel-parameters.txt +++ linux-intel-opt-6.5.0/Documentation/admin-guide/kernel-parameters.txt @@ -822,6 +822,10 @@ Format: ,,,[,] + cpufreq_driver= [X86] Allow only the named cpu frequency scaling driver + to register. Example: cpufreq_driver=powernow-k8 + Format: { none | STRING } + cpuidle.off=1 [CPU_IDLE] disable the cpuidle sub-system @@ -4271,6 +4275,12 @@ nomsi [MSI] If the PCI_MSI kernel config parameter is enabled, this kernel boot option can be used to disable the use of MSI interrupts system-wide. + clearmsi [X86] Clears MSI/MSI-X enable bits early in boot + time in order to avoid issues like adapters + screaming irqs and preventing boot progress. + Also, it enforces the PCI Local Bus spec + rule that those bits should be 0 in system reset + events (useful for kexec/kdump cases). noioapicquirk [APIC] Disable all boot interrupt quirks. Safety option to keep boot IRQs enabled. This should never be necessary. @@ -6275,10 +6285,6 @@ -1: disable all critical trip points in all thermal zones : override all critical trip points - thermal.nocrt= [HW,ACPI] - Set to disable actions on ACPI thermal zone - critical and hot trip points. - thermal.off= [HW,ACPI] 1: disable ACPI thermal control --- linux-intel-opt-6.5.0.orig/Documentation/admin-guide/sysctl/kernel.rst +++ linux-intel-opt-6.5.0/Documentation/admin-guide/sysctl/kernel.rst @@ -450,6 +450,35 @@ ``IA64_THREAD_UAC_NOPRINT`` ``prctl`` and avoid logs being flooded. +io_uring_disabled +================= + +Prevents all processes from creating new io_uring instances. Enabling this +shrinks the kernel's attack surface. + += ====================================================================== +0 All processes can create io_uring instances as normal. This is the + default setting. +1 io_uring creation is disabled (io_uring_setup() will fail with + -EPERM) for unprivileged processes not in the io_uring_group group. + Existing io_uring instances can still be used. See the + documentation for io_uring_group for more information. +2 io_uring creation is disabled for all processes. io_uring_setup() + always fails with -EPERM. Existing io_uring instances can still be + used. += ====================================================================== + + +io_uring_group +============== + +When io_uring_disabled is set to 1, a process must either be +privileged (CAP_SYS_ADMIN) or be in the io_uring_group group in order +to create an io_uring instance. If io_uring_group is set to -1 (the +default), only processes with the CAP_SYS_ADMIN capability may create +io_uring instances. + + kexec_load_disabled =================== --- linux-intel-opt-6.5.0.orig/Documentation/arch/arm64/silicon-errata.rst +++ linux-intel-opt-6.5.0/Documentation/arch/arm64/silicon-errata.rst @@ -63,6 +63,8 @@ +----------------+-----------------+-----------------+-----------------------------+ | ARM | Cortex-A510 | #1902691 | ARM64_ERRATUM_1902691 | +----------------+-----------------+-----------------+-----------------------------+ +| ARM | Cortex-A520 | #2966298 | ARM64_ERRATUM_2966298 | ++----------------+-----------------+-----------------+-----------------------------+ | ARM | Cortex-A53 | #826319 | ARM64_ERRATUM_826319 | +----------------+-----------------+-----------------+-----------------------------+ | ARM | Cortex-A53 | #827319 | ARM64_ERRATUM_827319 | @@ -198,6 +200,9 @@ +----------------+-----------------+-----------------+-----------------------------+ | Hisilicon | Hip08 SMMU PMCG | #162001800 | N/A | +----------------+-----------------+-----------------+-----------------------------+ +| Hisilicon | Hip08 SMMU PMCG | #162001900 | N/A | +| | Hip09 SMMU PMCG | | | ++----------------+-----------------+-----------------+-----------------------------+ +----------------+-----------------+-----------------+-----------------------------+ | Qualcomm Tech. | Kryo/Falkor v1 | E1003 | QCOM_FALKOR_ERRATUM_1003 | +----------------+-----------------+-----------------+-----------------------------+ --- linux-intel-opt-6.5.0.orig/Documentation/arch/x86/tdx.rst +++ linux-intel-opt-6.5.0/Documentation/arch/x86/tdx.rst @@ -10,6 +10,173 @@ mode sits between the host and the guest and manages the guest/host separation. +TDX Host Kernel Support +======================= + +TDX introduces a new CPU mode called Secure Arbitration Mode (SEAM) and +a new isolated range pointed by the SEAM Ranger Register (SEAMRR). A +CPU-attested software module called 'the TDX module' runs inside the new +isolated range to provide the functionalities to manage and run protected +VMs. + +TDX also leverages Intel Multi-Key Total Memory Encryption (MKTME) to +provide crypto-protection to the VMs. TDX reserves part of MKTME KeyIDs +as TDX private KeyIDs, which are only accessible within the SEAM mode. +BIOS is responsible for partitioning legacy MKTME KeyIDs and TDX KeyIDs. + +Before the TDX module can be used to create and run protected VMs, it +must be loaded into the isolated range and properly initialized. The TDX +architecture doesn't require the BIOS to load the TDX module, but the +kernel assumes it is loaded by the BIOS. + +TDX boot-time detection +----------------------- + +The kernel detects TDX by detecting TDX private KeyIDs during kernel +boot. Below dmesg shows when TDX is enabled by BIOS:: + + [..] tdx: BIOS enabled: private KeyID range: [16, 64). + +TDX module initialization +--------------------------------------- + +The kernel talks to the TDX module via the new SEAMCALL instruction. The +TDX module implements SEAMCALL leaf functions to allow the kernel to +initialize it. + +If the TDX module isn't loaded, the SEAMCALL instruction fails with a +special error. In this case the kernel fails the module initialization +and reports the module isn't loaded:: + + [..] tdx: Module isn't loaded. + +Initializing the TDX module consumes roughly ~1/256th system RAM size to +use it as 'metadata' for the TDX memory. It also takes additional CPU +time to initialize those metadata along with the TDX module itself. Both +are not trivial. The kernel initializes the TDX module at runtime on +demand. + +Besides initializing the TDX module, a per-cpu initialization SEAMCALL +must be done on one cpu before any other SEAMCALLs can be made on that +cpu. + +The kernel provides two functions, tdx_enable() and tdx_cpu_enable() to +allow the user of TDX to enable the TDX module and enable TDX on local +cpu. + +Making SEAMCALL requires the CPU already being in VMX operation (VMXON +has been done). For now both tdx_enable() and tdx_cpu_enable() don't +handle VMXON internally, but depends on the caller to guarantee that. + +To enable TDX, the caller of TDX should: 1) hold read lock of CPU hotplug +lock; 2) do VMXON and tdx_enable_cpu() on all online cpus successfully; +3) call tdx_enable(). For example:: + + cpus_read_lock(); + on_each_cpu(vmxon_and_tdx_cpu_enable()); + ret = tdx_enable(); + cpus_read_unlock(); + if (ret) + goto no_tdx; + // TDX is ready to use + +And the caller of TDX must guarantee the tdx_cpu_enable() has been +successfully done on any cpu before it wants to run any other SEAMCALL. +A typical usage is do both VMXON and tdx_cpu_enable() in CPU hotplug +online callback, and refuse to online if tdx_cpu_enable() fails. + +User can consult dmesg to see the presence of the TDX module, and whether +it has been initialized. + +If the TDX module is not loaded, dmesg shows below:: + + [..] tdx: TDX module is not loaded. + +If the TDX module is initialized successfully, dmesg shows something +like below:: + + [..] tdx: TDX module: attributes 0x0, vendor_id 0x8086, major_version 1, minor_version 0, build_date 20211209, build_num 160 + [..] tdx: 262668 KBs allocated for PAMT. + [..] tdx: TDX module initialized. + +If the TDX module failed to initialize, dmesg also shows it failed to +initialize:: + + [..] tdx: TDX module initialization failed ... + +TDX Interaction to Other Kernel Components +------------------------------------------ + +TDX Memory Policy +~~~~~~~~~~~~~~~~~ + +TDX reports a list of "Convertible Memory Region" (CMR) to tell the +kernel which memory is TDX compatible. The kernel needs to build a list +of memory regions (out of CMRs) as "TDX-usable" memory and pass those +regions to the TDX module. Once this is done, those "TDX-usable" memory +regions are fixed during module's lifetime. + +To keep things simple, currently the kernel simply guarantees all pages +in the page allocator are TDX memory. Specifically, the kernel uses all +system memory in the core-mm at the time of initializing the TDX module +as TDX memory, and in the meantime, refuses to online any non-TDX-memory +in the memory hotplug. + +This can be enhanced in the future, i.e. by allowing adding non-TDX +memory to a separate NUMA node. In this case, the "TDX-capable" nodes +and the "non-TDX-capable" nodes can co-exist, but the kernel/userspace +needs to guarantee memory pages for TDX guests are always allocated from +the "TDX-capable" nodes. + +Physical Memory Hotplug +~~~~~~~~~~~~~~~~~~~~~~~ + +Note TDX assumes convertible memory is always physically present during +machine's runtime. A non-buggy BIOS should never support hot-removal of +any convertible memory. This implementation doesn't handle ACPI memory +removal but depends on the BIOS to behave correctly. + +CPU Hotplug +~~~~~~~~~~~ + +TDX module requires the per-cpu initialization SEAMCALL (TDH.SYS.LP.INIT) +must be done on one cpu before any other SEAMCALLs can be made on that +cpu, including those involved during the module initialization. + +The kernel provides tdx_cpu_enable() to let the user of TDX to do it when +the user wants to use a new cpu for TDX task. + +TDX doesn't support physical (ACPI) CPU hotplug. During machine boot, +TDX verifies all boot-time present logical CPUs are TDX compatible before +enabling TDX. A non-buggy BIOS should never support hot-add/removal of +physical CPU. Currently the kernel doesn't handle physical CPU hotplug, +but depends on the BIOS to behave correctly. + +Note TDX works with CPU logical online/offline, thus the kernel still +allows to offline logical CPU and online it again. + +Kexec() +~~~~~~~ + +There are two problems in terms of using kexec() to boot to a new kernel +when the old kernel has enabled TDX: 1) Part of the memory pages are +still TDX private pages; 2) There might be dirty cachelines associated +with TDX private pages. + +The first problem doesn't matter. KeyID 0 doesn't have integrity check. +Even the new kernel wants use any non-zero KeyID, it needs to convert +the memory to that KeyID and such conversion would work from any KeyID. + +However the old kernel needs to guarantee there's no dirty cacheline +left behind before booting to the new kernel to avoid silent corruption +from later cacheline writeback (Intel hardware doesn't guarantee cache +coherency across different KeyIDs). + +Similar to AMD SME, the kernel just uses wbinvd() to flush cache before +booting to the new kernel. + +TDX Guest Support +================= Since the host cannot directly access guest registers or memory, much normal functionality of a hypervisor must be moved into the guest. This is implemented using a Virtualization Exception (#VE) that is handled by the @@ -20,7 +187,7 @@ guest to the hypervisor or the TDX module. New TDX Exceptions -================== +------------------ TDX guests behave differently from bare-metal and traditional VMX guests. In TDX guests, otherwise normal instructions or memory accesses can cause @@ -30,7 +197,7 @@ details for these instructions are discussed below. Instruction-based #VE ---------------------- +~~~~~~~~~~~~~~~~~~~~~ - Port I/O (INS, OUTS, IN, OUT) - HLT @@ -41,7 +208,7 @@ - CPUID* Instruction-based #GP ---------------------- +~~~~~~~~~~~~~~~~~~~~~ - All VMX instructions: INVEPT, INVVPID, VMCLEAR, VMFUNC, VMLAUNCH, VMPTRLD, VMPTRST, VMREAD, VMRESUME, VMWRITE, VMXOFF, VMXON @@ -52,7 +219,7 @@ - RDMSR*,WRMSR* RDMSR/WRMSR Behavior --------------------- +~~~~~~~~~~~~~~~~~~~~ MSR access behavior falls into three categories: @@ -73,7 +240,7 @@ these MSRs appear to function just as they would on bare metal. CPUID Behavior --------------- +~~~~~~~~~~~~~~ For some CPUID leaves and sub-leaves, the virtualized bit fields of CPUID return values (in guest EAX/EBX/ECX/EDX) are configurable by the @@ -93,7 +260,7 @@ value with a hypercall. #VE on Memory Accesses -====================== +---------------------- There are essentially two classes of TDX memory: private and shared. Private memory receives full TDX protections. Its content is protected @@ -107,7 +274,7 @@ information in shared memory, exposing it to the untrusted hypervisor. #VE on Shared Memory --------------------- +~~~~~~~~~~~~~~~~~~~~ Access to shared mappings can cause a #VE. The hypervisor ultimately controls whether a shared memory access causes a #VE, so the guest must be @@ -127,7 +294,7 @@ handle a #VE. #VE on Private Pages --------------------- +~~~~~~~~~~~~~~~~~~~~ An access to private mappings can also cause a #VE. Since all kernel memory is also private memory, the kernel might theoretically need to @@ -145,7 +312,7 @@ to handle the exception. Linux #VE handler -================= +----------------- Just like page faults or #GP's, #VE exceptions can be either handled or be fatal. Typically, an unhandled userspace #VE results in a SIGSEGV. @@ -167,7 +334,7 @@ which is not recoverable. MMIO handling -============= +------------- In non-TDX VMs, MMIO is usually implemented by giving a guest access to a mapping which will cause a VMEXIT on access, and then the hypervisor @@ -189,7 +356,7 @@ oops. Shared Memory Conversions -========================= +------------------------- All TDX guest memory starts out as private at boot. This memory can not be accessed by the hypervisor. However, some kernel users like device --- linux-intel-opt-6.5.0.orig/Documentation/cgroups/namespace.txt +++ linux-intel-opt-6.5.0/Documentation/cgroups/namespace.txt @@ -0,0 +1,142 @@ + CGroup Namespaces + +CGroup Namespace provides a mechanism to virtualize the view of the +/proc//cgroup file. The CLONE_NEWCGROUP clone-flag can be used with +clone() and unshare() syscalls to create a new cgroup namespace. +The process running inside the cgroup namespace will have its /proc//cgroup +output restricted to cgroupns-root. cgroupns-root is the cgroup of the process +at the time of creation of the cgroup namespace. + +Prior to CGroup Namespace, the /proc//cgroup file used to show complete +path of the cgroup of a process. In a container setup (where a set of cgroups +and namespaces are intended to isolate processes), the /proc//cgroup file +may leak potential system level information to the isolated processes. + +For Example: + $ cat /proc/self/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/batchjobs/container_id1 + +The path '/batchjobs/container_id1' can generally be considered as system-data +and its desirable to not expose it to the isolated process. + +CGroup Namespaces can be used to restrict visibility of this path. +For Example: + # Before creating cgroup namespace + $ ls -l /proc/self/ns/cgroup + lrwxrwxrwx 1 root root 0 2014-07-15 10:37 /proc/self/ns/cgroup -> cgroup:[4026531835] + $ cat /proc/self/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/batchjobs/container_id1 + + # unshare(CLONE_NEWCGROUP) and exec /bin/bash + $ ~/unshare -c + [ns]$ ls -l /proc/self/ns/cgroup + lrwxrwxrwx 1 root root 0 2014-07-15 10:35 /proc/self/ns/cgroup -> cgroup:[4026532183] + # From within new cgroupns, process sees that its in the root cgroup + [ns]$ cat /proc/self/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/ + + # From global cgroupns: + $ cat /proc//cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/batchjobs/container_id1 + + # Unshare cgroupns along with userns and mountns + # Following calls unshare(CLONE_NEWCGROUP|CLONE_NEWUSER|CLONE_NEWNS), then + # sets up uid/gid map and execs /bin/bash + $ ~/unshare -c -u -m + # Originally, we were in /batchjobs/container_id1 cgroup. Mount our own cgroup + # hierarchy. + [ns]$ mount -t cgroup cgroup /tmp/cgroup + [ns]$ ls -l /tmp/cgroup + total 0 + -r--r--r-- 1 root root 0 2014-10-13 09:32 cgroup.controllers + -r--r--r-- 1 root root 0 2014-10-13 09:32 cgroup.populated + -rw-r--r-- 1 root root 0 2014-10-13 09:25 cgroup.procs + -rw-r--r-- 1 root root 0 2014-10-13 09:32 cgroup.subtree_control + +The cgroupns-root (/batchjobs/container_id1 in above example) becomes the +filesystem root for the namespace specific cgroupfs mount. + +The virtualization of /proc/self/cgroup file combined with restricting +the view of cgroup hierarchy by namespace-private cgroupfs mount +should provide a completely isolated cgroup view inside the container. + +In its current form, the cgroup namespaces patcheset provides following +behavior: + +(1) The 'cgroupns-root' for a cgroup namespace is the cgroup in which + the process calling unshare is running. + For ex. if a process in /batchjobs/container_id1 cgroup calls unshare, + cgroup /batchjobs/container_id1 becomes the cgroupns-root. + For the init_cgroup_ns, this is the real root ('/') cgroup + (identified in code as cgrp_dfl_root.cgrp). + +(2) The cgroupns-root cgroup does not change even if the namespace + creator process later moves to a different cgroup. + $ ~/unshare -c # unshare cgroupns in some cgroup + [ns]$ cat /proc/self/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/ + [ns]$ mkdir sub_cgrp_1 + [ns]$ echo 0 > sub_cgrp_1/cgroup.procs + [ns]$ cat /proc/self/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/sub_cgrp_1 + +(3) Each process gets its CGROUPNS specific view of /proc//cgroup +(a) Processes running inside the cgroup namespace will be able to see + cgroup paths (in /proc/self/cgroup) only inside their root cgroup + [ns]$ sleep 100000 & # From within unshared cgroupns + [1] 7353 + [ns]$ echo 7353 > sub_cgrp_1/cgroup.procs + [ns]$ cat /proc/7353/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/sub_cgrp_1 + +(b) From global cgroupns, the real cgroup path will be visible: + $ cat /proc/7353/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/batchjobs/container_id1/sub_cgrp_1 + +(c) From a sibling cgroupns (cgroupns root-ed at a different cgroup), cgroup + path relative to its own cgroupns-root will be shown: + # ns2's cgroupns-root is at '/batchjobs/container_id2' + [ns2]$ cat /proc/7353/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/../container_id2/sub_cgrp_1 + + Note that the relative path always starts with '/' to indicate that its + relative to the cgroupns-root of the caller. + +(4) Processes inside a cgroupns can move in-and-out of the cgroupns-root + (if they have proper access to external cgroups). + # From inside cgroupns (with cgroupns-root at /batchjobs/container_id1), and + # assuming that the global hierarchy is still accessible inside cgroupns: + $ cat /proc/7353/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/sub_cgrp_1 + $ echo 7353 > batchjobs/container_id2/cgroup.procs + $ cat /proc/7353/cgroup + 0:cpuset,cpu,cpuacct,memory,devices,freezer,hugetlb:/../container_id2 + + Note that this kind of setup is not encouraged. A task inside cgroupns + should only be exposed to its own cgroupns hierarchy. Otherwise it makes + the virtualization of /proc//cgroup less useful. + +(5) Setns to another cgroup namespace is allowed when: + (a) the process has CAP_SYS_ADMIN in its current userns + (b) the process has CAP_SYS_ADMIN in the target cgroupns' userns + No implicit cgroup changes happen with attaching to another cgroupns. It + is expected that the somone moves the attaching process under the target + cgroupns-root. + +(6) When some thread from a multi-threaded process unshares its + cgroup-namespace, the new cgroupns gets applied to the entire process (all + the threads). For the unified-hierarchy this is expected as it only allows + process-level containerization. For the legacy hierarchies this may be + unexpected. So all the threads in the process will have the same cgroup. + +(7) The cgroup namespace is alive as long as there is atleast 1 + process inside it. When the last process exits, the cgroup + namespace is destroyed. The cgroupns-root and the actual cgroups + remain though. + +(8) Namespace specific cgroup hierarchy can be mounted by a process running + inside cgroupns: + $ mount -t cgroup -o __DEVEL__sane_behavior cgroup $MOUNT_POINT + + This will mount the unified cgroup hierarchy with cgroupns-root as the + filesystem root. The process needs CAP_SYS_ADMIN in its userns and mntns. --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/clock/xlnx,versal-clk.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/clock/xlnx,versal-clk.yaml @@ -14,8 +14,6 @@ reads required input clock frequencies from the devicetree and acts as clock provider for all clock consumers of PS clocks. -select: false - properties: compatible: const: xlnx,versal-clk --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/extcon/maxim,max77843.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/extcon/maxim,max77843.yaml @@ -23,6 +23,7 @@ connector: $ref: /schemas/connector/usb-connector.yaml# + unevaluatedProperties: false ports: $ref: /schemas/graph.yaml#/properties/ports --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/interrupt-controller/renesas,rzg2l-irqc.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/interrupt-controller/renesas,rzg2l-irqc.yaml @@ -31,8 +31,9 @@ - const: renesas,rzg2l-irqc '#interrupt-cells': - description: The first cell should contain external interrupt number (IRQ0-7) and the - second cell is used to specify the flag. + description: The first cell should contain a macro RZG2L_{NMI,IRQX} included in the + include/dt-bindings/interrupt-controller/irqc-rzg2l.h and the second + cell is used to specify the flag. const: 2 '#address-cells': --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/media/nxp,imx7-csi.yaml @@ -59,7 +59,6 @@ compatible: contains: enum: - - fsl,imx8mq-csi - fsl,imx8mm-csi then: required: --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/pci/qcom,pcie-ep.yaml @@ -11,10 +11,13 @@ properties: compatible: - enum: - - qcom,sdx55-pcie-ep - - qcom,sdx65-pcie-ep - - qcom,sm8450-pcie-ep + oneOf: + - enum: + - qcom,sdx55-pcie-ep + - qcom,sm8450-pcie-ep + - items: + - const: qcom,sdx65-pcie-ep + - const: qcom,sdx55-pcie-ep reg: items: @@ -110,7 +113,6 @@ contains: enum: - qcom,sdx55-pcie-ep - - qcom,sdx65-pcie-ep then: properties: clocks: --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/power/qcom,kpss-acc-v2.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/power/qcom,kpss-acc-v2.yaml @@ -21,6 +21,7 @@ const: qcom,kpss-acc-v2 reg: + minItems: 1 items: - description: Base address and size of the register region - description: Optional base address and size of the alias register region --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/regulator/qcom,rpm-regulator.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/regulator/qcom,rpm-regulator.yaml @@ -49,7 +49,7 @@ ".*-supply$": description: Input supply phandle(s) for this node - "^((s|l|lvs)[0-9]*)|(s[1-2][a-b])|(ncp)|(mvs)|(usb-switch)|(hdmi-switch)$": + "^((s|l|lvs)[0-9]*|s[1-2][a-b]|ncp|mvs|usb-switch|hdmi-switch)$": description: List of regulators and its properties $ref: regulator.yaml# unevaluatedProperties: false --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/serial/nxp,sc16is7xx.txt +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/serial/nxp,sc16is7xx.txt @@ -23,6 +23,9 @@ 1 = active low. - irda-mode-ports: An array that lists the indices of the port that should operate in IrDA mode. +- nxp,modem-control-line-ports: An array that lists the indices of the port that + should have shared GPIO lines configured as + modem control lines. Example: sc16is750: sc16is750@51 { @@ -35,6 +38,26 @@ #gpio-cells = <2>; }; + sc16is752: sc16is752@53 { + compatible = "nxp,sc16is752"; + reg = <0x53>; + clocks = <&clk20m>; + interrupt-parent = <&gpio3>; + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; + nxp,modem-control-line-ports = <1>; /* Port 1 as modem control lines */ + gpio-controller; /* Port 0 as GPIOs */ + #gpio-cells = <2>; + }; + + sc16is752: sc16is752@54 { + compatible = "nxp,sc16is752"; + reg = <0x54>; + clocks = <&clk20m>; + interrupt-parent = <&gpio3>; + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; + nxp,modem-control-line-ports = <0 1>; /* Ports 0 and 1 as modem control lines */ + }; + * spi as bus Required properties: @@ -59,6 +82,9 @@ 1 = active low. - irda-mode-ports: An array that lists the indices of the port that should operate in IrDA mode. +- nxp,modem-control-line-ports: An array that lists the indices of the port that + should have shared GPIO lines configured as + modem control lines. Example: sc16is750: sc16is750@0 { @@ -70,3 +96,23 @@ gpio-controller; #gpio-cells = <2>; }; + + sc16is752: sc16is752@1 { + compatible = "nxp,sc16is752"; + reg = <1>; + clocks = <&clk20m>; + interrupt-parent = <&gpio3>; + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; + nxp,modem-control-line-ports = <1>; /* Port 1 as modem control lines */ + gpio-controller; /* Port 0 as GPIOs */ + #gpio-cells = <2>; + }; + + sc16is752: sc16is752@2 { + compatible = "nxp,sc16is752"; + reg = <2>; + clocks = <&clk20m>; + interrupt-parent = <&gpio3>; + interrupts = <7 IRQ_TYPE_EDGE_FALLING>; + nxp,modem-control-line-ports = <0 1>; /* Ports 0 and 1 as modem control lines */ + }; --- linux-intel-opt-6.5.0.orig/Documentation/devicetree/bindings/usb/samsung,exynos-dwc3.yaml +++ linux-intel-opt-6.5.0/Documentation/devicetree/bindings/usb/samsung,exynos-dwc3.yaml @@ -72,7 +72,7 @@ properties: compatible: contains: - const: samsung,exynos54333-dwusb3 + const: samsung,exynos5433-dwusb3 then: properties: clocks: @@ -82,8 +82,8 @@ items: - const: aclk - const: susp_clk - - const: pipe_pclk - const: phyclk + - const: pipe_pclk - if: properties: --- linux-intel-opt-6.5.0.orig/Documentation/filesystems/ceph.rst +++ linux-intel-opt-6.5.0/Documentation/filesystems/ceph.rst @@ -57,6 +57,16 @@ system. Snapshot creation and deletion are as simple as 'mkdir .snap/foo' and 'rmdir .snap/foo'. +Snapshot names have two limitations: + +* They can not start with an underscore ('_'), as these names are reserved + for internal usage by the MDS. +* They can not exceed 240 characters in size. This is because the MDS makes + use of long snapshot names internally, which follow the format: + `__`. Since filenames in general can't have + more than 255 characters, and `` takes 13 characters, the long + snapshot names can take as much as 255 - 1 - 1 - 13 = 240. + Ceph also provides some recursive accounting on directories for nested files and bytes. That is, a 'getfattr -d foo' on any directory in the system will reveal the total number of nested regular files and --- linux-intel-opt-6.5.0.orig/Documentation/filesystems/overlayfs.rst +++ linux-intel-opt-6.5.0/Documentation/filesystems/overlayfs.rst @@ -339,6 +339,18 @@ rightmost one and going left. In the above example lower1 will be the top, lower2 the middle and lower3 the bottom layer. +Note: directory names containing colons can be provided as lower layer by +escaping the colons with a single backslash. For example: + + mount -t overlay overlay -olowerdir=/a\:lower\:\:dir /merged + +Since kernel version v6.5, directory names containing colons can also +be provided as lower layer using the fsconfig syscall from new mount api: + + fsconfig(fs_fd, FSCONFIG_SET_STRING, "lowerdir", "/a:lower::dir", 0); + +In the latter case, colons in lower layer directory names will be escaped +as an octal characters (\072) when displayed in /proc/self/mountinfo. Metadata only copy up --------------------- --- linux-intel-opt-6.5.0.orig/Documentation/networking/ip-sysctl.rst +++ linux-intel-opt-6.5.0/Documentation/networking/ip-sysctl.rst @@ -2287,6 +2287,14 @@ Default: 1 +accept_ra_min_lft - INTEGER + Minimum acceptable lifetime value in Router Advertisement. + + RA sections with a lifetime less than this value shall be + ignored. Zero lifetimes stay unaffected. + + Default: 0 + accept_ra_pinfo - BOOLEAN Learn Prefix Information in Router Advertisement. --- linux-intel-opt-6.5.0.orig/Documentation/scsi/scsi_mid_low_api.rst +++ linux-intel-opt-6.5.0/Documentation/scsi/scsi_mid_low_api.rst @@ -1190,11 +1190,11 @@ - pointer to scsi_device object that this command is associated with. resid - - an LLD should set this signed integer to the requested + - an LLD should set this unsigned integer to the requested transfer length (i.e. 'request_bufflen') less the number of bytes that are actually transferred. 'resid' is preset to 0 so an LLD can ignore it if it cannot detect - underruns (overruns should be rare). If possible an LLD + underruns (overruns should not be reported). An LLD should set 'resid' prior to invoking 'done'. The most interesting case is data transfers from a SCSI target device (e.g. READs) that underrun. --- linux-intel-opt-6.5.0.orig/Documentation/sound/designs/midi-2.0.rst +++ linux-intel-opt-6.5.0/Documentation/sound/designs/midi-2.0.rst @@ -74,8 +74,8 @@ doesn't respond to the new UMP inquiries, the driver falls back and builds the topology based on Group Terminal Block (GTB) information from the USB descriptor. Some device might be screwed up by the -unexpected UMP command; in such a case, pass `midi2_probe=0` option to -snd-usb-audio driver for skipping the UMP v1.1 inquiries. +unexpected UMP command; in such a case, pass `midi2_ump_probe=0` +option to snd-usb-audio driver for skipping the UMP v1.1 inquiries. When the MIDI 2.0 device is probed, the kernel creates a rawmidi device for each UMP Endpoint of the device. Its device name is --- linux-intel-opt-6.5.0.orig/Documentation/sphinx/cdomain.py +++ linux-intel-opt-6.5.0/Documentation/sphinx/cdomain.py @@ -37,12 +37,29 @@ import sphinx from sphinx import addnodes -from sphinx.domains.c import c_funcptr_sig_re, c_sig_re from sphinx.domains.c import CObject as Base_CObject from sphinx.domains.c import CDomain as Base_CDomain from itertools import chain import re +# fixes https://github.com/sphinx-doc/sphinx/commit/0f49e30c51b5cc5055cda5b4b294c2dd9d1df573#r38750737 + +# pylint: disable=invalid-name +c_sig_re = re.compile( + r'''^([^(]*?) # return type + ([\w:.]+) \s* # thing name (colon allowed for C++) + (?: \((.*)\) )? # optionally arguments + (\s+const)? $ # const specifier + ''', re.VERBOSE) + +c_funcptr_sig_re = re.compile( + r'''^([^(]+?) # return type + (\( [^()]+ \)) \s* # name in parentheses + \( (.*) \) # arguments + (\s+const)? $ # const specifier + ''', re.VERBOSE) +# pylint: enable=invalid-name + __version__ = '1.1' # Get Sphinx version --- linux-intel-opt-6.5.0.orig/Documentation/userspace-api/media/v4l/vidioc-subdev-g-routing.rst +++ linux-intel-opt-6.5.0/Documentation/userspace-api/media/v4l/vidioc-subdev-g-routing.rst @@ -58,6 +58,9 @@ value of the ``num_routes`` field. Application should then reserve enough memory for all the route entries and call ``VIDIOC_SUBDEV_G_ROUTING`` again. +On a successful ``VIDIOC_SUBDEV_G_ROUTING`` call the driver updates the +``num_routes`` field to reflect the actual number of routes returned. + .. tabularcolumns:: |p{4.4cm}|p{4.4cm}|p{8.7cm}| .. c:type:: v4l2_subdev_routing @@ -138,9 +141,7 @@ EINVAL The sink or source pad identifiers reference a non-existing pad, or reference - pads of different types (ie. the sink_pad identifiers refers to a source pad) - or the sink or source stream identifiers reference a non-existing stream on - the sink or source pad. + pads of different types (ie. the sink_pad identifiers refers to a source pad). E2BIG The application provided ``num_routes`` for ``VIDIOC_SUBDEV_S_ROUTING`` is --- linux-intel-opt-6.5.0.orig/Documentation/virt/coco/tdx-guest.rst +++ linux-intel-opt-6.5.0/Documentation/virt/coco/tdx-guest.rst @@ -42,6 +42,17 @@ a new IOCTL CMD will be created to handle it. To keep the IOCTL naming consistent, a subtype index is added as part of the IOCTL CMD. + +2.2 TDX_CMD_EXTEND_RTMR +----------------------- + +:Input parameters: struct tdx_extend_rtmr_req +:Output: Return 0 on success, -EIO on TDCALL failure, -EBUSY for TDX Module busy + condition, or standard error number on common failures. + +The TDX_CMD_VERIFY_REPORT IOCTL can be used by userspace application to extend +RTMR registers > 1 with user specified data using TDG.MR.RTMR.EXTEND TDCALL. + Reference --------- --- linux-intel-opt-6.5.0.orig/Documentation/virt/kvm/api.rst +++ linux-intel-opt-6.5.0/Documentation/virt/kvm/api.rst @@ -147,10 +147,29 @@ The new VM has no virtual cpus and no memory. You probably want to use 0 as machine type. +X86: +^^^^ + +Supported X86 VM types can be queried via KVM_CAP_VM_TYPES. + +S390: +^^^^^ + In order to create user controlled virtual machines on S390, check KVM_CAP_S390_UCONTROL and use the flag KVM_VM_S390_UCONTROL as privileged user (CAP_SYS_ADMIN). +MIPS: +^^^^^ + +To use hardware assisted virtualization on MIPS (VZ ASE) rather than +the default trap & emulate implementation (which changes the virtual +memory layout to fit in user mode), check KVM_CAP_MIPS_VZ and use the +flag KVM_VM_MIPS_VZ. + +ARM64: +^^^^^^ + On arm64, the physical address size for a VM (IPA Size limit) is limited to 40bits by default. The limit can be configured if the host supports the extension KVM_CAP_ARM_VM_IPA_SIZE. When supported, use @@ -1309,7 +1328,7 @@ __u64 userspace_addr; /* start of the userspace allocated memory */ }; - /* for kvm_userspace_memory_region::flags */ + /\* for kvm_userspace_memory_region::flags \*/ #define KVM_MEM_LOG_DIRTY_PAGES (1UL << 0) #define KVM_MEM_READONLY (1UL << 1) @@ -1354,6 +1373,9 @@ mmap() that affects the region will be made visible immediately. Another example is madvise(MADV_DROP). +For TDX guest, deleting/moving memory region loses guest memory contents. +Read only region isn't supported. Only as-id 0 is supported. + Note: On arm64, a write generated by the page-table walker (to update the Access and Dirty flags, for example) never results in a KVM_EXIT_MMIO exit when the slot has the KVM_MEM_READONLY flag. This @@ -4671,7 +4693,7 @@ :Capability: basic :Architectures: x86 -:Type: vm +:Type: vm ioctl, vcpu ioctl :Parameters: an opaque platform specific structure (in/out) :Returns: 0 on success; -1 on error @@ -4683,6 +4705,10 @@ (SEV) commands on AMD Processors. The SEV commands are defined in Documentation/virt/kvm/x86/amd-memory-encryption.rst. +Currently, this ioctl is used for issuing Trusted Domain Extensions +(TDX) commands on Intel Processors. The TDX commands are defined in +Documentation/virt/kvm/x86/intel-tdx.rst. + 4.111 KVM_MEMORY_ENCRYPT_REG_REGION ----------------------------------- @@ -6068,6 +6094,56 @@ interface. No error will be returned, but the resulting offset will not be applied. +4.139 KVM_GET_SUPPORTED_MEMORY_ATTRIBUTES +----------------------------------------- + +:Capability: KVM_CAP_MEMORY_ATTRIBUTES +:Architectures: x86 +:Type: vm ioctl +:Parameters: u64 memory attributes bitmask(out) +:Returns: 0 on success, <0 on error + +Returns supported memory attributes bitmask. Supported memory attributes will +have the corresponding bits set in u64 memory attributes bitmask. + +The following memory attributes are defined:: + + #define KVM_MEMORY_ATTRIBUTE_PRIVATE (1ULL << 3) + +4.140 KVM_SET_MEMORY_ATTRIBUTES +----------------------------------------- + +:Capability: KVM_CAP_MEMORY_ATTRIBUTES +:Architectures: x86 +:Type: vm ioctl +:Parameters: struct kvm_memory_attributes(in/out) +:Returns: 0 on success, <0 on error + +Sets memory attributes for pages in a guest memory range. Parameters are +specified via the following structure:: + + struct kvm_memory_attributes { + __u64 address; + __u64 size; + __u64 attributes; + __u64 flags; + }; + +The user sets the per-page memory attributes to a guest memory range indicated +by address/size, and in return KVM adjusts address and size to reflect the +actual pages of the memory range have been successfully set to the attributes. +If the call returns 0, "address" is updated to the last successful address + 1 +and "size" is updated to the remaining address size that has not been set +successfully. The user should check the return value as well as the size to +decide if the operation succeeded for the whole range or not. The user may want +to retry the operation with the returned address/size if the previous range was +partially successful. + +Both address and size should be page aligned and the supported attributes can be +retrieved with KVM_GET_SUPPORTED_MEMORY_ATTRIBUTES. + +The "flags" field may be used for future extensions and should be set to 0s. + 5. The kvm_run structure ======================== @@ -6702,6 +6778,28 @@ :: + /\* KVM_EXIT_MEMORY_FAULT \*/ + struct { + #define KVM_MEMORY_EXIT_FLAG_PRIVATE (1ULL << 3) + __u64 flags; + __u64 gpa; + __u64 size; + } memory; + +If exit reason is KVM_EXIT_MEMORY_FAULT then it indicates that the VCPU has +encountered a memory error which is not handled by KVM kernel module and +userspace may choose to handle it. The 'flags' field indicates the memory +properties of the exit. + + - KVM_MEMORY_EXIT_FLAG_PRIVATE - indicates the memory error is caused by + private memory access when the bit is set. Otherwise the memory error is + caused by shared memory access when the bit is clear. + +'gpa' and 'size' indicate the memory range the error occurs at. The userspace +may handle the error and return to KVM to retry the previous memory access. + +:: + /* KVM_EXIT_NOTIFY */ struct { #define KVM_NOTIFY_CONTEXT_INVALID (1 << 0) @@ -6752,7 +6850,6 @@ primary storage for certain register types. Therefore, the kernel may use the values in kvm_run even if the corresponding bit in kvm_dirty_regs is not set. - 6. Capabilities that can be enabled on vCPUs ============================================ @@ -8472,6 +8569,29 @@ 64-bit bitmap (each bit describing a block size). The default value is 0, to disable the eager page splitting. +8.41 KVM_CAP_MEMORY_ATTRIBUTES +------------------------------ + +:Capability: KVM_CAP_MEMORY_ATTRIBUTES +:Architectures: x86 +:Type: vm + +This capability indicates KVM supports per-page memory attributes and ioctls +KVM_GET_SUPPORTED_MEMORY_ATTRIBUTES/KVM_SET_MEMORY_ATTRIBUTES are available. + +8.41 KVM_CAP_VM_TYPES +--------------------- + +:Capability: KVM_CAP_MEMORY_ATTRIBUTES +:Architectures: x86 +:Type: system ioctl + +This capability returns a bitmap of support VM types. The 1-setting of bit @n +means the VM type with value @n is supported. Possible values of @n are:: + + #define KVM_X86_DEFAULT_VM 0 + #define KVM_X86_SW_PROTECTED_VM 1 + 9. Known KVM API problems ========================= --- linux-intel-opt-6.5.0.orig/Documentation/virt/kvm/index.rst +++ linux-intel-opt-6.5.0/Documentation/virt/kvm/index.rst @@ -19,3 +19,4 @@ vcpu-requests halt-polling review-checklist + --- linux-intel-opt-6.5.0.orig/Documentation/virt/kvm/x86/index.rst +++ linux-intel-opt-6.5.0/Documentation/virt/kvm/x86/index.rst @@ -11,8 +11,10 @@ cpuid errata hypercalls + intel-tdx mmu msr nested-vmx running-nested-guests + tdx-tdp-mmu timekeeping --- linux-intel-opt-6.5.0.orig/Documentation/virt/kvm/x86/intel-tdx.rst +++ linux-intel-opt-6.5.0/Documentation/virt/kvm/x86/intel-tdx.rst @@ -0,0 +1,362 @@ +.. SPDX-License-Identifier: GPL-2.0 + +=================================== +Intel Trust Domain Extensions (TDX) +=================================== + +Overview +======== +TDX stands for Trust Domain Extensions which isolates VMs from +the virtual-machine manager (VMM)/hypervisor and any other software on +the platform. For details, see the specifications [1]_, whitepaper [2]_, +architectural extensions specification [3]_, module documentation [4]_, +loader interface specification [5]_, guest-hypervisor communication +interface [6]_, virtual firmware design guide [7]_, and other resources +([8]_, [9]_, [10]_, [11]_, and [12]_). + + +API description +=============== + +KVM_MEMORY_ENCRYPT_OP +--------------------- +:Type: vm ioctl, vcpu ioctl + +For TDX operations, KVM_MEMORY_ENCRYPT_OP is re-purposed to be generic +ioctl with TDX specific sub ioctl command. + +:: + + /* Trust Domain eXtension sub-ioctl() commands. */ + enum kvm_tdx_cmd_id { + KVM_TDX_CAPABILITIES = 0, + KVM_TDX_INIT_VM, + KVM_TDX_INIT_VCPU, + KVM_TDX_INIT_MEM_REGION, + KVM_TDX_FINALIZE_VM, + + KVM_TDX_CMD_NR_MAX, + }; + + struct kvm_tdx_cmd { + /* enum kvm_tdx_cmd_id */ + __u32 id; + /* flags for sub-commend. If sub-command doesn't use this, set zero. */ + __u32 flags; + /* + * data for each sub-command. An immediate or a pointer to the actual + * data in process virtual address. If sub-command doesn't use it, + * set zero. + */ + __u64 data; + /* + * Auxiliary error code. The sub-command may return TDX SEAMCALL + * status code in addition to -Exxx. + * Defined for consistency with struct kvm_sev_cmd. + */ + __u64 error; + /* Reserved: Defined for consistency with struct kvm_sev_cmd. */ + __u64 unused; + }; + +KVM_TDX_CAPABILITIES +-------------------- +:Type: vm ioctl + +Subset of TDSYSINFO_STRCUCT retrieved by TDH.SYS.INFO TDX SEAM call will be +returned. Which describes about Intel TDX module. + +- id: KVM_TDX_CAPABILITIES +- flags: must be 0 +- data: pointer to struct kvm_tdx_capabilities +- error: must be 0 +- unused: must be 0 + +:: + + struct kvm_tdx_cpuid_config { + __u32 leaf; + __u32 sub_leaf; + __u32 eax; + __u32 ebx; + __u32 ecx; + __u32 edx; + }; + + struct kvm_tdx_capabilities { + __u64 attrs_fixed0; + __u64 attrs_fixed1; + __u64 xfam_fixed0; + __u64 xfam_fixed1; + #define TDX_CAP_GPAW_48 (1 << 0) + #define TDX_CAP_GPAW_52 (1 << 1) + __u32 supported_gpaw; + __u32 padding; + __u64 reserved[251]; + + __u32 nr_cpuid_configs; + struct kvm_tdx_cpuid_config cpuid_configs[]; + }; + + +KVM_TDX_INIT_VM +--------------- +:Type: vm ioctl + +Does additional VM initialization specific to TDX which corresponds to +TDH.MNG.INIT TDX SEAM call. + +- id: KVM_TDX_INIT_VM +- flags: must be 0 +- data: pointer to struct kvm_tdx_init_vm +- error: must be 0 +- unused: must be 0 + +:: + + struct kvm_tdx_init_vm { + __u64 attributes; + __u64 mrconfigid[6]; /* sha384 digest */ + __u64 mrowner[6]; /* sha384 digest */ + __u64 mrownerconfig[6]; /* sha348 digest */ + __u64 reserved[1004]; /* must be zero for future extensibility */ + + struct kvm_cpuid2 cpuid; + }; + + +KVM_TDX_INIT_VCPU +----------------- +:Type: vcpu ioctl + +Does additional VCPU initialization specific to TDX which corresponds to +TDH.VP.INIT TDX SEAM call. + +- id: KVM_TDX_INIT_VCPU +- flags: must be 0 +- data: initial value of the guest TD VCPU RCX +- error: must be 0 +- unused: must be 0 + +KVM_TDX_INIT_MEM_REGION +----------------------- +:Type: vm ioctl + +Encrypt a memory continuous region which corresponding to TDH.MEM.PAGE.ADD +TDX SEAM call. +If KVM_TDX_MEASURE_MEMORY_REGION flag is specified, it also extends measurement +which corresponds to TDH.MR.EXTEND TDX SEAM call. + +- id: KVM_TDX_INIT_VCPU +- flags: flags + currently only KVM_TDX_MEASURE_MEMORY_REGION is defined +- data: pointer to struct kvm_tdx_init_mem_region +- error: must be 0 +- unused: must be 0 + +:: + + #define KVM_TDX_MEASURE_MEMORY_REGION (1UL << 0) + + struct kvm_tdx_init_mem_region { + __u64 source_addr; + __u64 gpa; + __u64 nr_pages; + }; + + +KVM_TDX_FINALIZE_VM +------------------- +:Type: vm ioctl + +Complete measurement of the initial TD contents and mark it ready to run +which corresponds to TDH.MR.FINALIZE + +- id: KVM_TDX_FINALIZE_VM +- flags: must be 0 +- data: must be 0 +- error: must be 0 +- unused: must be 0 + +KVM TDX creation flow +===================== +In addition to KVM normal flow, new TDX ioctls need to be called. The control flow +looks like as follows. + +#. system wide capability check + + * KVM_CAP_VM_TYPES: check if VM type is supported and if KVM_X86_TDX_VM + is supported. + +#. creating VM + + * KVM_CREATE_VM + * KVM_TDX_CAPABILITIES: query if TDX is supported on the platform. + * KVM_ENABLE_CAP_VM(KVM_CAP_MAX_VCPUS): set max_vcpus. KVM_MAX_VCPUS by + default. KVM_MAX_VCPUS is not a part of ABI, but kernel internal constant + that is subject to change. Because max vcpus is a part of attestation, max + vcpus should be explicitly set. + * KVM_SET_TSC_KHZ for vm. optional + * KVM_TDX_INIT_VM: pass TDX specific VM parameters. + +#. creating VCPU + + * KVM_CREATE_VCPU + * KVM_TDX_INIT_VCPU: pass TDX specific VCPU parameters. + * KVM_SET_CPUID2: Enable CPUID[0x1].ECX.X2APIC(bit 21)=1 so that the following + setting of MSR_IA32_APIC_BASE success. Without this, + KVM_SET_MSRS(MSR_IA32_APIC_BASE) fails. + * KVM_SET_MSRS: Set the initial reset value of MSR_IA32_APIC_BASE to + APIC_DEFAULT_ADDRESS(0xfee00000) | XAPIC_ENABLE(bit 10) | + X2APIC_ENABLE(bit 11) [| MSR_IA32_APICBASE_BSP(bit 8) optional] + +#. initializing guest memory + + * allocate guest memory and initialize page same to normal KVM case + In TDX case, parse and load TDVF into guest memory in addition. + * KVM_TDX_INIT_MEM_REGION to add and measure guest pages. + If the pages has contents above, those pages need to be added. + Otherwise the contents will be lost and guest sees zero pages. + * KVM_TDX_FINALIAZE_VM: Finalize VM and measurement + This must be after KVM_TDX_INIT_MEM_REGION. + +#. run vcpu + +Design discussion +================= + +Coexistence of normal(VMX) VM and TD VM +--------------------------------------- +It's required to allow both legacy(normal VMX) VMs and new TD VMs to +coexist. Otherwise the benefits of VM flexibility would be eliminated. +The main issue for it is that the logic of kvm_x86_ops callbacks for +TDX is different from VMX. On the other hand, the variable, +kvm_x86_ops, is global single variable. Not per-VM, not per-vcpu. + +Several points to be considered: + + * No or minimal overhead when TDX is disabled(CONFIG_INTEL_TDX_HOST=n). + * Avoid overhead of indirect call via function pointers. + * Contain the changes under arch/x86/kvm/vmx directory and share logic + with VMX for maintenance. + Even though the ways to operation on VM (VMX instruction vs TDX + SEAM call) are different, the basic idea remains the same. So, many + logic can be shared. + * Future maintenance + The huge change of kvm_x86_ops in (near) future isn't expected. + a centralized file is acceptable. + +- Wrapping kvm x86_ops: The current choice + + Introduce dedicated file for arch/x86/kvm/vmx/main.c (the name, + main.c, is just chosen to show main entry points for callbacks.) and + wrapper functions around all the callbacks with + "if (is-tdx) tdx-callback() else vmx-callback()". + + Pros: + + - No major change in common x86 KVM code. The change is (mostly) + contained under arch/x86/kvm/vmx/. + - When TDX is disabled(CONFIG_INTEL_TDX_HOST=n), the overhead is + optimized out. + - Micro optimization by avoiding function pointer. + + Cons: + + - Many boiler plates in arch/x86/kvm/vmx/main.c. + +KVM MMU Changes +--------------- +KVM MMU needs to be enhanced to handle Secure/Shared-EPT. The +high-level execution flow is mostly same to normal EPT case. +EPT violation/misconfiguration -> invoke TDP fault handler -> +resolve TDP fault -> resume execution. (or emulate MMIO) +The difference is, that S-EPT is operated(read/write) via TDX SEAM +call which is expensive instead of direct read/write EPT entry. +One bit of GPA (51 or 47 bit) is repurposed so that it means shared +with host(if set to 1) or private to TD(if cleared to 0). + +- The current implementation + + * Reuse the existing MMU code with minimal update. Because the + execution flow is mostly same. But additional operation, TDX call + for S-EPT, is needed. So add hooks for it to kvm_x86_ops. + * For performance, minimize TDX SEAM call to operate on S-EPT. When + getting corresponding S-EPT pages/entry from faulting GPA, don't + use TDX SEAM call to read S-EPT entry. Instead create shadow copy + in host memory. + Repurpose the existing kvm_mmu_page as shadow copy of S-EPT and + associate S-EPT to it. + * Treats share bit as attributes. mask/unmask the bit where + necessary to keep the existing traversing code works. + Introduce kvm.arch.gfn_shared_mask and use "if (gfn_share_mask)" + for special case. + + * 0 : for non-TDX case + * 51 or 47 bit set for TDX case. + + Pros: + + - Large code reuse with minimal new hooks. + - Execution path is same. + + Cons: + + - Complicates the existing code. + - Repurpose kvm_mmu_page as shadow of Secure-EPT can be confusing. + +New KVM API, ioctl (sub)command, to manage TD VMs +------------------------------------------------- +Additional KVM APIs are needed to control TD VMs. The operations on TD +VMs are specific to TDX. + +- Piggyback and repurpose KVM_MEMORY_ENCRYPT_OP + + Although operations for TD VMs aren't necessarily related to memory + encryption, define sub operations of KVM_MEMORY_ENCRYPT_OP for TDX specific + ioctls. + + Pros: + + - No major change in common x86 KVM code. + - Follows the SEV case. + + Cons: + + - The sub operations of KVM_MEMORY_ENCRYPT_OP aren't necessarily memory + encryption, but operations on TD VMs. + +References +========== + +.. [1] TDX specification + https://software.intel.com/content/www/us/en/develop/articles/intel-trust-domain-extensions.html +.. [2] Intel Trust Domain Extensions (Intel TDX) + https://software.intel.com/content/dam/develop/external/us/en/documents/tdx-whitepaper-final9-17.pdf +.. [3] Intel CPU Architectural Extensions Specification + https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-cpu-architectural-specification.pdf +.. [4] Intel TDX Module 1.0 EAS + https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-module-1eas.pdf +.. [5] Intel TDX Loader Interface Specification + https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-seamldr-interface-specification.pdf +.. [6] Intel TDX Guest-Hypervisor Communication Interface + https://software.intel.com/content/dam/develop/external/us/en/documents/intel-tdx-guest-hypervisor-communication-interface.pdf +.. [7] Intel TDX Virtual Firmware Design Guide + https://software.intel.com/content/dam/develop/external/us/en/documents/tdx-virtual-firmware-design-guide-rev-1. +.. [8] intel public github + + * kvm TDX branch: https://github.com/intel/tdx/tree/kvm + * TDX guest branch: https://github.com/intel/tdx/tree/guest + +.. [9] tdvf + https://github.com/tianocore/edk2-staging/tree/TDVF +.. [10] KVM forum 2020: Intel Virtualization Technology Extensions to + Enable Hardware Isolated VMs + https://osseu2020.sched.com/event/eDzm/intel-virtualization-technology-extensions-to-enable-hardware-isolated-vms-sean-christopherson-intel +.. [11] Linux Security Summit EU 2020: + Architectural Extensions for Hardware Virtual Machine Isolation + to Advance Confidential Computing in Public Clouds - Ravi Sahita + & Jun Nakajima, Intel Corporation + https://osseu2020.sched.com/event/eDOx/architectural-extensions-for-hardware-virtual-machine-isolation-to-advance-confidential-computing-in-public-clouds-ravi-sahita-jun-nakajima-intel-corporation +.. [12] [RFCv2,00/16] KVM protected memory extension + https://lore.kernel.org/all/20201020061859.18385-1-kirill.shutemov@linux.intel.com/ --- linux-intel-opt-6.5.0.orig/Documentation/virt/kvm/x86/tdx-tdp-mmu.rst +++ linux-intel-opt-6.5.0/Documentation/virt/kvm/x86/tdx-tdp-mmu.rst @@ -0,0 +1,473 @@ +.. SPDX-License-Identifier: GPL-2.0 + +Design of TDP MMU for TDX support +================================= +This document describes a (high level) design for TDX support of KVM TDP MMU of +x86 KVM. + +In this document, we use "TD" or "guest TD" to differentiate it from the current +"VM" (Virtual Machine), which is supported by KVM today. + + +Background of TDX +================= +TD private memory is designed to hold TD private content, encrypted by the CPU +using the TD ephemeral key. An encryption engine holds a table of encryption +keys, and an encryption key is selected for each memory transaction based on a +Host Key Identifier (HKID). By design, the host VMM does not have access to the +encryption keys. + +In the first generation of MKTME, HKID is "stolen" from the physical address by +allocating a configurable number of bits from the top of the physical address. +The HKID space is partitioned into shared HKIDs for legacy MKTME accesses and +private HKIDs for SEAM-mode-only accesses. We use 0 for the shared HKID on the +host so that MKTME can be opaque or bypassed on the host. + +During TDX non-root operation (i.e. guest TD), memory accesses can be qualified +as either shared or private, based on the value of a new SHARED bit in the Guest +Physical Address (GPA). The CPU translates shared GPAs using the usual VMX EPT +(Extended Page Table) or "Shared EPT" (in this document), which resides in the +host VMM memory. The Shared EPT is directly managed by the host VMM - the same +as with the current VMX. Since guest TDs usually require I/O, and the data +exchange needs to be done via shared memory, thus KVM needs to use the current +EPT functionality even for TDs. + +The CPU translates private GPAs using a separate Secure EPT. The Secure EPT +pages are encrypted and integrity-protected with the TD's ephemeral private key. +Secure EPT can be managed _indirectly_ by the host VMM, using the TDX interface +functions (SEAMCALLs), and thus conceptually Secure EPT is a subset of EPT +because not all functionalities are available. + +Since the execution of such interface functions takes much longer time than +accessing memory directly, in KVM we use the existing TDP code to mirror the +Secure EPT for the TD. And we think there are at least two options today in +terms of the timing for executing such SEAMCALLs: + +1. synchronous, i.e. while walking the TDP page tables, or +2. post-walk, i.e. record what needs to be done to the real Secure EPT during + the walk, and execute SEAMCALLs later. + +The option 1 seems to be more intuitive and simpler, but the Secure EPT +concurrency rules are different from the ones of the TDP or EPT. For example, +MEM.SEPT.RD acquire shared access to the whole Secure EPT tree of the target + +Secure EPT(SEPT) operations +--------------------------- +Secure EPT is an Extended Page Table for GPA-to-HPA translation of TD private +HPA. A Secure EPT is designed to be encrypted with the TD's ephemeral private +key. SEPT pages are allocated by the host VMM via Intel TDX functions, but their +content is intended to be hidden and is not architectural. + +Unlike the conventional EPT, the CPU can't directly read/write its entry. +Instead, TDX SEAMCALL API is used. Several SEAMCALLs correspond to operation on +the EPT entry. + +* TDH.MEM.SEPT.ADD(): + + Add a secure EPT page from the secure EPT tree. This corresponds to updating + the non-leaf EPT entry with present bit set + +* TDH.MEM.SEPT.REMOVE(): + + Remove the secure page from the secure EPT tree. There is no corresponding + to the EPT operation. + +* TDH.MEM.SEPT.RD(): + + Read the secure EPT entry. This corresponds to reading the EPT entry as + memory. Please note that this is much slower than direct memory reading. + +* TDH.MEM.PAGE.ADD() and TDH.MEM.PAGE.AUG(): + + Add a private page to the secure EPT tree. This corresponds to updating the + leaf EPT entry with present bit set. + +* THD.MEM.PAGE.REMOVE(): + + Remove a private page from the secure EPT tree. There is no corresponding + to the EPT operation. + +* TDH.MEM.RANGE.BLOCK(): + + This (mostly) corresponds to clearing the present bit of the leaf EPT entry. + Note that the private page is still linked in the secure EPT. To remove it + from the secure EPT, TDH.MEM.SEPT.REMOVE() and TDH.MEM.PAGE.REMOVE() needs to + be called. + +* TDH.MEM.TRACK(): + + Increment the TLB epoch counter. This (mostly) corresponds to EPT TLB flush. + Note that the private page is still linked in the secure EPT. To remove it + from the secure EPT, tdh_mem_page_remove() needs to be called. + + +Adding private page +------------------- +The procedure of populating the private page looks as follows. + +1. TDH.MEM.SEPT.ADD(512G level) +2. TDH.MEM.SEPT.ADD(1G level) +3. TDH.MEM.SEPT.ADD(2M level) +4. TDH.MEM.PAGE.AUG(4K level) + +Those operations correspond to updating the EPT entries. + +Dropping private page and TLB shootdown +--------------------------------------- +The procedure of dropping the private page looks as follows. + +1. TDH.MEM.RANGE.BLOCK(4K level) + + This mostly corresponds to clear the present bit in the EPT entry. This + prevents (or blocks) TLB entry from creating in the future. Note that the + private page is still linked in the secure EPT tree and the existing cache + entry in the TLB isn't flushed. + +2. TDH.MEM.TRACK(range) and TLB shootdown + + This mostly corresponds to the EPT TLB shootdown. Because all vcpus share + the same Secure EPT, all vcpus need to flush TLB. + + * TDH.MEM.TRACK(range) by one vcpu. It increments the global internal TLB + epoch counter. + + * send IPI to remote vcpus + * Other vcpu exits to VMM from guest TD and then re-enter. TDH.VP.ENTER(). + * TDH.VP.ENTER() checks the TLB epoch counter and If its TLB is old, flush + TLB. + + Note that only single vcpu issues tdh_mem_track(). + + Note that the private page is still linked in the secure EPT tree, unlike the + conventional EPT. + +3. TDH.MEM.PAGE.PROMOTE, TDH.MEM.PAGEDEMOTE(), TDH.MEM.PAGE.RELOCATE(), or + TDH.MEM.PAGE.REMOVE() + + There is no corresponding operation to the conventional EPT. + + * When changing page size (e.g. 4K <-> 2M) TDH.MEM.PAGE.PROMOTE() or + TDH.MEM.PAGE.DEMOTE() is used. During those operation, the guest page is + kept referenced in the Secure EPT. + + * When migrating page, TDH.MEM.PAGE.RELOCATE(). This requires both source + page and destination page. + * when destroying TD, TDH.MEM.PAGE.REMOVE() removes the private page from the + secure EPT tree. In this case TLB shootdown is not needed because vcpus + don't run any more. + +The basic idea for TDX support +============================== +Because shared EPT is the same as the existing EPT, use the existing logic for +shared EPT. On the other hand, secure EPT requires additional operations +instead of directly reading/writing of the EPT entry. + +On EPT violation, The KVM mmu walks down the EPT tree from the root, determines +the EPT entry to operate, and updates the entry. If necessary, a TLB shootdown +is done. Because it's very slow to directly walk secure EPT by TDX SEAMCALL, +TDH.MEM.SEPT.RD(), the mirror of secure EPT is created and maintained. Add +hooks to KVM MMU to reuse the existing code. + +EPT violation on shared GPA +--------------------------- +(1) EPT violation on shared GPA or zapping shared GPA + :: + + walk down shared EPT tree (the existing code) + | + | + V + shared EPT tree (CPU refers.) + +(2) update the EPT entry. (the existing code) + + TLB shootdown in the case of zapping. + + +EPT violation on private GPA +---------------------------- +(1) EPT violation on private GPA or zapping private GPA + :: + + walk down the mirror of secure EPT tree (mostly same as the existing code) + | + | + V + mirror of secure EPT tree (KVM MMU software only. reuse of the existing code) + +(2) update the (mirrored) EPT entry. (mostly same as the existing code) + +(3) call the hooks with what EPT entry is changed + :: + + | + NEW: hooks in KVM MMU + | + V + secure EPT root(CPU refers) + +(4) the TDX backend calls necessary TDX SEAMCALLs to update real secure EPT. + +The major modification is to add hooks for the TDX backend for additional +operations and to pass down which EPT, shared EPT, or private EPT is used, and +twist the behavior if we're operating on private EPT. + +The following depicts the relationship. +:: + + KVM | TDX module + | | | + -------------+---------- | | + | | | | + V V | | + shared GPA private GPA | V + CPU shared EPT pointer KVM private EPT pointer | CPU secure EPT pointer + | | | | + | | | | + V V | V + shared EPT private EPT<-------mirror----->Secure EPT + | | | | + | \--------------------+------\ | + | | | | + V | V V + shared guest page | private guest page + | + | + non-encrypted memory | encrypted memory + | + +shared EPT: CPU and KVM walk with shared GPA + Maintained by the existing code +private EPT: KVM walks with private GPA + Maintained by the twisted existing code +secure EPT: CPU walks with private GPA. + Maintained by TDX module with TDX SEAMCALLs via hooks + + +Tracking private EPT page +========================= +Shared EPT pages are managed by struct kvm_mmu_page. They are linked in a list +structure. When necessary, the list is traversed to operate on. Private EPT +pages have different characteristics. For example, private pages can't be +swapped out. When shrinking memory, we'd like to traverse only shared EPT pages +and skip private EPT pages. Likewise, page migration isn't supported for +private pages (yet). Introduce an additional list to track shared EPT pages and +track private EPT pages independently. + +At the beginning of EPT violation, the fault handler knows fault GPA, thus it +knows which EPT to operate on, private or shared. If it's private EPT, +an additional task is done. Something like "if (private) { callback a hook }". +Since the fault handler has deep function calls, it's cumbersome to hold the +information of which EPT is operating. Options to mitigate it are + +1. Pass the information as an argument for the function call. +2. Record the information in struct kvm_mmu_page somehow. +3. Record the information in vcpu structure. + +Option 2 was chosen. Because option 1 requires modifying all the functions. It +would affect badly to the normal case. Option 3 doesn't work well because in +some cases, we need to walk both private and shared EPT. + +The role of the EPT page can be utilized and one bit can be curved out from +unused bits in struct kvm_mmu_page_role. When allocating the EPT page, +initialize the information. Mostly struct kvm_mmu_page is available because +we're operating on EPT pages. + + +The conversion of private GPA and shared GPA +============================================ +A page of a given GPA can be assigned to only private GPA xor shared GPA at one +time. (This is the restriction by KVM implementation to avoid doubling guest +memory usage. Not by TDX architecture.) The GPA can't be accessed +simultaneously via both private GPA and shared GPA. On guest startup, all the +GPAs are assigned as private. Guest converts the range of GPA to shared (or +private) from private (or shared) by MapGPA hypercall. MapGPA hypercall takes +the start GPA and the size of the region. If the given start GPA is shared +(shared bit set), VMM converts the region into shared (if it's already shared, +nop). + +If the guest TD triggers an EPT violation on the already converted region, +i.e. EPT violation on private(or shared) GPA when page is shared(or private), +the access won't be allowed. KVM_EXIT_MEMORY_FAULT is triggered. The user +space VMM will decide how to handle it. + +If the guest access private (or shared) GPA after the conversion to shared (or +private), the following sequence will be observed + +1. MapGPA(shared GPA: shared bit set) hypercall +2. KVM cause KVM_TDX_EXIT with hypercall to the user space VMM. +3. The user space VMM converts the GPA with KVM_SET_MEMORY_ATTRIBUTES(shared). +4. The user space VMM resumes vcpu execution with KVM_VCPU_RUN +5. Guest TD accesses private GPA (shared bit cleared) +6. KVM gets EPT violation on private GPA (shared bit cleared) +7. KVM finds the GPA was set to be shared in the xarray while the faulting GPA + is private (shared bit cleared) +8. KVM_EXIT_MEMORY_FAULT. User space VMM, e.g. qemu, decide what to do. + Typically requests KVM conversion of GPA without MapGPA hypercall. +9. KVM converts GPA from shared to private with + KVM_SET_MEMORY_ATTRIBUTES(private) +10. Resume vcpu execution + +At step 9, user space VMM may think such memory access is due to race, let vcpu +resume without conversion with the expectation that other vcpu issues MapGPA. +Or user space VMM may think such memory access is doubtful and the guest is +trying to attack VMM. It may throttle vcpu execution as mitigation or finally +kill such a guest. Or user space VMM may think it's a bug of the guest TD, kill +the guest TD. + +This sequence is not efficient. Guest TD shouldn't access private (or shared) +GPA after converting GPA to shared (or private). Although KVM can handle it, +it's sub-optimal and won't be optimized. + +The original TDP MMU and race condition +======================================= +Because vcpus share the EPT, once the EPT entry is zapped, we need to shootdown +TLB. Send IPI to remote vcpus. Remote vcpus flush their down TLBs. Until TLB +shootdown is done, vcpus may reference the zapped guest page. + +TDP MMU uses read lock of mmu_lock to mitigate vcpu contention. When read lock +is obtained, it depends on the atomic update of the EPT entry. (On the other +hand legacy MMU uses write lock.) When vcpu is populating/zapping the EPT entry +with a read lock held, other vcpu may be populating or zapping the same EPT +entry at the same time. + +To avoid the race condition, the entry is frozen. It means the EPT entry is set +to the special value, REMOVED_SPTE which clears the present bit. And then after +TLB shootdown, update the EPT entry to the final value. + +Concurrent zapping +------------------ +1. read lock +2. freeze the EPT entry (atomically set the value to REMOVED_SPTE) + If other vcpu froze the entry, restart page fault. +3. TLB shootdown + + * send IPI to remote vcpus + * TLB flush (local and remote) + + For each entry update, TLB shootdown is needed because of the + concurrency. +4. atomically set the EPT entry to the final value +5. read unlock + +Concurrent populating +--------------------- +In the case of populating the non-present EPT entry, atomically update the EPT +entry. + +1. read lock + +2. atomically update the EPT entry + If other vcpu frozen the entry or updated the entry, restart page fault. + +3. read unlock + +In the case of updating the present EPT entry (e.g. page migration), the +operation is split into two. Zapping the entry and populating the entry. + +1. read lock +2. zap the EPT entry. follow the concurrent zapping case. +3. populate the non-present EPT entry. +4. read unlock + +Non-concurrent batched zapping +------------------------------ +In some cases, zapping the ranges is done exclusively with a write lock held. +In this case, the TLB shootdown is batched into one. + +1. write lock +2. zap the EPT entries by traversing them +3. TLB shootdown +4. write unlock + +For Secure EPT, TDX SEAMCALLs are needed in addition to updating the mirrored +EPT entry. + +TDX concurrent zapping +---------------------- +Add a hook for TDX SEAMCALLs at the step of the TLB shootdown. + +1. read lock +2. freeze the EPT entry(set the value to REMOVED_SPTE) +3. TLB shootdown via a hook + + * TLB.MEM.RANGE.BLOCK() + * TLB.MEM.TRACK() + * send IPI to remote vcpus + +4. set the EPT entry to the final value +5. read unlock + +TDX concurrent populating +------------------------- +TDX SEAMCALLs are required in addition to operating the mirrored EPT entry. The +frozen entry is utilized by following the zapping case to avoid the race +condition. A hook can be added. + +1. read lock +2. freeze the EPT entry +3. hook + + * TDH_MEM_SEPT_ADD() for non-leaf or TDH_MEM_PAGE_AUG() for leaf. + +4. set the EPT entry to the final value +5. read unlock + +Without freezing the entry, the following race can happen. Suppose two vcpus +are faulting on the same GPA and the 2M and 4K level entries aren't populated +yet. + +* vcpu 1: update 2M level EPT entry +* vcpu 2: update 4K level EPT entry +* vcpu 2: TDX SEAMCALL to update 4K secure EPT entry => error +* vcpu 1: TDX SEAMCALL to update 2M secure EPT entry + + +TDX non-concurrent batched zapping +---------------------------------- +For simplicity, the procedure of concurrent populating is utilized. The +procedure can be optimized later. + + +Co-existing with unmapping guest private memory +=============================================== +TODO. This needs to be addressed. + + +Optimizing TLB flush +==================== +It's inefficient to issue TLB.MEM.TRACK for each EPT entry. Similar to EPT TLB +flush, multiple TLB.MEM.TRACK and sending IPI (TLB shootdown) can be combined +into one TLB.MEM.TRACK and one IPI. After the TLB shootdown, the PFNs are still +needed to unlink the private pages from the secure EPT. PFN needs to be stashed +somewhere. The choice is to keep the PFN in the EPT entry with the special +flag. SPTE_PRIVATE_ZAPPED with the present flag cleared. And specially handle +such EPT entry. Later get PFN and unlink the private page from secure EPT, +clear the EPT entry into normal zapped EPT entry. + +1. lock +2. loop on EPT entries. + - set SEPT_PRIVATE_ZAPPED + - keep PFN + - clear other bits + - TLB.MEM.RANGE.BLOCK() +3. TLB shootdown via a hook. kvm_flush_remote_tlbs_with_address() + - TLB.MEM.TRACK() + - send IPI to remote vcpus + - loop on EPT entries + + - check if SPTE_PRIVATE_ZAPPED is set + - get PFN + - unlink private pages from secure EPT if necessary + - make the EPT entry into initial zapped value + (clear SPTE_PRIVATE_ZAPPED and PFN) + +5. unlock + + +Restrictions or future work +=========================== +The following features aren't supported yet at the moment. + +* optimizing non-concurrent zap +* Page migration --- linux-intel-opt-6.5.0.orig/Kbuild +++ linux-intel-opt-6.5.0/Kbuild @@ -97,3 +97,4 @@ obj-$(CONFIG_NET) += net/ obj-y += virt/ obj-y += $(ARCH_DRIVERS) +obj-y += ubuntu/ --- linux-intel-opt-6.5.0.orig/Kconfig +++ linux-intel-opt-6.5.0/Kconfig @@ -19,6 +19,8 @@ source "drivers/Kconfig" +source "ubuntu/Kconfig" + source "fs/Kconfig" source "security/Kconfig" --- linux-intel-opt-6.5.0.orig/MAINTAINERS +++ linux-intel-opt-6.5.0/MAINTAINERS @@ -193,6 +193,18 @@ F: Documentation/devicetree/bindings/power/supply/*ab8500* F: drivers/power/supply/*ab8500* +AAEON DEVICE DRIVER WITH WMI INTERFACE +M: Edward Lin +M: Kunyang Fan +M: Frank Hsieh +M: Jacob Wu +S: Supported +F: drivers/gpio/gpio-aaeon.c +F: drivers/hwmon/hwmon-aaeon.c +F: drivers/leds/leds-aaeon.c +F: drivers/mfd/mfd-aaeon.c +F: drivers/watchdog/wdt_aaeon.c + ABI/API L: linux-api@vger.kernel.org F: include/linux/syscalls.h --- linux-intel-opt-6.5.0.orig/Makefile +++ linux-intel-opt-6.5.0/Makefile @@ -1,7 +1,7 @@ # SPDX-License-Identifier: GPL-2.0 VERSION = 6 PATCHLEVEL = 5 -SUBLEVEL = 0 +SUBLEVEL = 8 EXTRAVERSION = NAME = Hurr durr I'ma ninja sloth @@ -554,6 +554,9 @@ -I$(objtree)/include \ $(USERINCLUDE) +# UBUNTU: Include our third party driver stuff too +LINUXINCLUDE += -I$(srctree)/ubuntu/include + KBUILD_AFLAGS := -D__ASSEMBLY__ -fno-PIE KBUILD_CFLAGS := @@ -1289,7 +1292,7 @@ # All the preparing.. prepare: prepare0 ifdef CONFIG_RUST - $(Q)$(CONFIG_SHELL) $(srctree)/scripts/rust_is_available.sh -v + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/rust_is_available.sh $(Q)$(MAKE) $(build)=rust endif @@ -1366,8 +1369,9 @@ quiet_cmd_headers_install = INSTALL $(INSTALL_HDR_PATH)/include cmd_headers_install = \ mkdir -p $(INSTALL_HDR_PATH); \ - rsync -mrl --include='*/' --include='*\.h' --exclude='*' \ - usr/include $(INSTALL_HDR_PATH) + find usr/include -type f -name '*.h' -print0 | \ + tar -czf - --null --no-recursion --no-wildcards-match-slash -T- | \ + tar -xzf - --strip-components=1 -C $(INSTALL_HDR_PATH) PHONY += headers_install headers_install: headers @@ -1382,6 +1386,7 @@ $(if $(filter um, $(SRCARCH)), $(error Headers not exportable for UML)) $(Q)$(MAKE) $(hdr-inst)=include/uapi $(Q)$(MAKE) $(hdr-inst)=arch/$(SRCARCH)/include/uapi + $(Q)$(MAKE) $(hdr-inst)=ubuntu/include dst=include oldheaders= ifdef CONFIG_HEADERS_INSTALL prepare: headers @@ -1601,7 +1606,7 @@ # Directories & files removed with 'make mrproper' MRPROPER_FILES += include/config include/generated \ arch/$(SRCARCH)/include/generated .objdiff \ - debian snap tar-install \ + snap tar-install \ .config .config.old .version \ Module.symvers \ certs/signing_key.pem \ @@ -1825,7 +1830,7 @@ # "Is Rust available?" target PHONY += rustavailable rustavailable: - $(Q)$(CONFIG_SHELL) $(srctree)/scripts/rust_is_available.sh -v && echo "Rust is available!" + $(Q)$(CONFIG_SHELL) $(srctree)/scripts/rust_is_available.sh && echo "Rust is available!" # Documentation target # @@ -1962,7 +1967,9 @@ modules_install: $(Q)$(MAKE) -f $(srctree)/scripts/Makefile.modinst +ifndef modules_sign_only $(call cmd,depmod) +endif else # CONFIG_MODULES --- linux-intel-opt-6.5.0.orig/Ubuntu.md +++ linux-intel-opt-6.5.0/Ubuntu.md @@ -0,0 +1,7 @@ +Name: linux-intel-opt +Version: 6.5.0 +Series: 23.10 (mantic) +Description: + This is the source code for the Ubuntu linux kernel for the 23.10 series. This + source tree is used to produce the flavours: intel-opt. + This kernel is configured to support intel system configurations. --- linux-intel-opt-6.5.0.orig/arch/arc/include/asm/atomic-llsc.h +++ linux-intel-opt-6.5.0/arch/arc/include/asm/atomic-llsc.h @@ -18,7 +18,7 @@ : [val] "=&r" (val) /* Early clobber to prevent reg reuse */ \ : [ctr] "r" (&v->counter), /* Not "m": llock only supports reg direct addr mode */ \ [i] "ir" (i) \ - : "cc"); \ + : "cc", "memory"); \ } \ #define ATOMIC_OP_RETURN(op, asm_op) \ @@ -34,7 +34,7 @@ : [val] "=&r" (val) \ : [ctr] "r" (&v->counter), \ [i] "ir" (i) \ - : "cc"); \ + : "cc", "memory"); \ \ return val; \ } @@ -56,7 +56,7 @@ [orig] "=&r" (orig) \ : [ctr] "r" (&v->counter), \ [i] "ir" (i) \ - : "cc"); \ + : "cc", "memory"); \ \ return orig; \ } --- linux-intel-opt-6.5.0.orig/arch/arc/include/asm/atomic64-arcv2.h +++ linux-intel-opt-6.5.0/arch/arc/include/asm/atomic64-arcv2.h @@ -60,7 +60,7 @@ " bnz 1b \n" \ : "=&r"(val) \ : "r"(&v->counter), "ir"(a) \ - : "cc"); \ + : "cc", "memory"); \ } \ #define ATOMIC64_OP_RETURN(op, op1, op2) \ @@ -77,7 +77,7 @@ " bnz 1b \n" \ : [val] "=&r"(val) \ : "r"(&v->counter), "ir"(a) \ - : "cc"); /* memory clobber comes from smp_mb() */ \ + : "cc", "memory"); \ \ return val; \ } @@ -99,7 +99,7 @@ " bnz 1b \n" \ : "=&r"(orig), "=&r"(val) \ : "r"(&v->counter), "ir"(a) \ - : "cc"); /* memory clobber comes from smp_mb() */ \ + : "cc", "memory"); \ \ return orig; \ } --- linux-intel-opt-6.5.0.orig/arch/arm/Makefile +++ linux-intel-opt-6.5.0/arch/arm/Makefile @@ -59,6 +59,9 @@ # KBUILD_CFLAGS += $(call cc-option,-fno-ipa-sra) +# Need -msoft-float for gcc 11 for the below instruction set selection +KBUILD_CFLAGS += -msoft-float + # This selects which instruction set is used. arch-$(CONFIG_CPU_32v7M) :=-march=armv7-m arch-$(CONFIG_CPU_32v7) :=-march=armv7-a @@ -141,7 +144,7 @@ # Need -Uarm for gcc < 3.x KBUILD_CPPFLAGS +=$(cpp-y) -KBUILD_CFLAGS +=$(CFLAGS_ABI) $(CFLAGS_ISA) $(arch-y) $(tune-y) $(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) -msoft-float -Uarm +KBUILD_CFLAGS +=$(CFLAGS_ABI) $(CFLAGS_ISA) $(arch-y) $(tune-y) $(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) -Uarm KBUILD_AFLAGS +=$(CFLAGS_ABI) $(AFLAGS_ISA) -Wa,$(arch-y) $(tune-y) -include asm/unified.h -msoft-float CHECKFLAGS += -D__arm__ --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm4708-linksys-ea6500-v2.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm4708-linksys-ea6500-v2.dts @@ -19,7 +19,8 @@ memory@0 { device_type = "memory"; - reg = <0x00000000 0x08000000>; + reg = <0x00000000 0x08000000>, + <0x88000000 0x08000000>; }; gpio-keys { --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm47189-luxul-xap-1440.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm47189-luxul-xap-1440.dts @@ -26,7 +26,6 @@ led-wlan { label = "bcm53xx:blue:wlan"; gpios = <&chipcommon 10 GPIO_ACTIVE_LOW>; - linux,default-trigger = "default-off"; }; led-system { @@ -46,3 +45,16 @@ }; }; }; + +&gmac0 { + phy-mode = "rgmii"; + phy-handle = <&bcm54210e>; + + mdio { + /delete-node/ switch@1e; + + bcm54210e: ethernet-phy@0 { + reg = <0>; + }; + }; +}; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm47189-luxul-xap-810.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm47189-luxul-xap-810.dts @@ -26,7 +26,6 @@ led-5ghz { label = "bcm53xx:blue:5ghz"; gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "default-off"; }; led-system { @@ -42,7 +41,6 @@ led-2ghz { label = "bcm53xx:blue:2ghz"; gpios = <&pcie0_chipcommon 3 GPIO_ACTIVE_HIGH>; - linux,default-trigger = "default-off"; }; }; @@ -83,3 +81,16 @@ }; }; }; + +&gmac0 { + phy-mode = "rgmii"; + phy-handle = <&bcm54210e>; + + mdio { + /delete-node/ switch@1e; + + bcm54210e: ethernet-phy@0 { + reg = <0>; + }; + }; +}; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm47189-tenda-ac9.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm47189-tenda-ac9.dts @@ -135,8 +135,8 @@ label = "lan4"; }; - port@5 { - reg = <5>; + port@8 { + reg = <8>; label = "cpu"; ethernet = <&gmac0>; }; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm53573.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm53573.dtsi @@ -127,6 +127,9 @@ pcie0: pcie@2000 { reg = <0x00002000 0x1000>; + + #address-cells = <3>; + #size-cells = <2>; }; usb2: usb2@4000 { @@ -156,8 +159,6 @@ }; ohci: usb@d000 { - #usb-cells = <0>; - compatible = "generic-ohci"; reg = <0xd000 0x1000>; interrupt-parent = <&gic>; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/broadcom/bcm947189acdbmr.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/broadcom/bcm947189acdbmr.dts @@ -60,9 +60,9 @@ spi { compatible = "spi-gpio"; num-chipselects = <1>; - gpio-sck = <&chipcommon 21 0>; - gpio-miso = <&chipcommon 22 0>; - gpio-mosi = <&chipcommon 23 0>; + sck-gpios = <&chipcommon 21 0>; + miso-gpios = <&chipcommon 22 0>; + mosi-gpios = <&chipcommon 23 0>; cs-gpios = <&chipcommon 24 0>; #address-cells = <1>; #size-cells = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/qcom/qcom-ipq4019.dtsi @@ -230,9 +230,12 @@ interrupts = , ; interrupt-names = "hc_irq", "pwr_irq"; bus-width = <8>; - clocks = <&gcc GCC_SDCC1_AHB_CLK>, <&gcc GCC_SDCC1_APPS_CLK>, - <&gcc GCC_DCD_XO_CLK>; - clock-names = "iface", "core", "xo"; + clocks = <&gcc GCC_SDCC1_AHB_CLK>, + <&gcc GCC_SDCC1_APPS_CLK>, + <&xo>; + clock-names = "iface", + "core", + "xo"; status = "disabled"; }; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/qcom/qcom-msm8974pro-sony-xperia-shinano-castor.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/qcom/qcom-msm8974pro-sony-xperia-shinano-castor.dts @@ -125,15 +125,15 @@ syna,startup-delay-ms = <100>; - rmi-f01@1 { + rmi4-f01@1 { reg = <0x1>; - syna,nosleep = <1>; + syna,nosleep-mode = <1>; }; - rmi-f11@11 { + rmi4-f11@11 { reg = <0x11>; - syna,f11-flip-x = <1>; syna,sensor-type = <1>; + touchscreen-inverted-x; }; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/qcom/qcom-sdx65-mtp.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/qcom/qcom-sdx65-mtp.dts @@ -7,7 +7,7 @@ #include "qcom-sdx65.dtsi" #include #include -#include +#include #include "qcom-pmx65.dtsi" / { --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/samsung/exynos4210-i9100.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/samsung/exynos4210-i9100.dts @@ -207,8 +207,8 @@ power-on-delay = <10>; reset-delay = <10>; - panel-width-mm = <90>; - panel-height-mm = <154>; + panel-width-mm = <56>; + panel-height-mm = <93>; display-timings { timing { --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/samsung/s3c6410-mini6410.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/samsung/s3c6410-mini6410.dts @@ -51,7 +51,7 @@ ethernet@18000000 { compatible = "davicom,dm9000"; - reg = <0x18000000 0x2 0x18000004 0x2>; + reg = <0x18000000 0x2>, <0x18000004 0x2>; interrupt-parent = <&gpn>; interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; davicom,no-eeprom; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/samsung/s5pv210-smdkv210.dts +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/samsung/s5pv210-smdkv210.dts @@ -41,7 +41,7 @@ ethernet@a8000000 { compatible = "davicom,dm9000"; - reg = <0xA8000000 0x2 0xA8000002 0x2>; + reg = <0xa8000000 0x2>, <0xa8000002 0x2>; interrupt-parent = <&gph1>; interrupts = <1 IRQ_TYPE_LEVEL_HIGH>; local-mac-address = [00 00 de ad be ef]; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/st/stm32mp157c-emstamp-argon.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/st/stm32mp157c-emstamp-argon.dtsi @@ -368,8 +368,8 @@ &m4_rproc { memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, <&vdev0vring1>, <&vdev0buffer>; - mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; - mbox-names = "vq0", "vq1", "shutdown"; + mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; + mbox-names = "vq0", "vq1", "shutdown", "detach"; interrupt-parent = <&exti>; interrupts = <68 1>; interrupt-names = "wdg"; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/st/stm32mp157c-odyssey-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/st/stm32mp157c-odyssey-som.dtsi @@ -230,8 +230,8 @@ &m4_rproc { memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, <&vdev0vring1>, <&vdev0buffer>; - mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; - mbox-names = "vq0", "vq1", "shutdown"; + mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; + mbox-names = "vq0", "vq1", "shutdown", "detach"; interrupt-parent = <&exti>; interrupts = <68 1>; status = "okay"; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/st/stm32mp15xx-dhcom-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/st/stm32mp15xx-dhcom-som.dtsi @@ -416,8 +416,8 @@ &m4_rproc { memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, <&vdev0vring1>, <&vdev0buffer>; - mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; - mbox-names = "vq0", "vq1", "shutdown"; + mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; + mbox-names = "vq0", "vq1", "shutdown", "detach"; interrupt-parent = <&exti>; interrupts = <68 1>; status = "okay"; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/st/stm32mp15xx-dhcor-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/st/stm32mp15xx-dhcor-som.dtsi @@ -227,8 +227,8 @@ &m4_rproc { memory-region = <&retram>, <&mcuram>, <&mcuram2>, <&vdev0vring0>, <&vdev0vring1>, <&vdev0buffer>; - mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>; - mbox-names = "vq0", "vq1", "shutdown"; + mboxes = <&ipcc 0>, <&ipcc 1>, <&ipcc 2>, <&ipcc 3>; + mbox-names = "vq0", "vq1", "shutdown", "detach"; interrupt-parent = <&exti>; interrupts = <68 1>; status = "okay"; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/ti/omap/motorola-mapphone-common.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/ti/omap/motorola-mapphone-common.dtsi @@ -614,12 +614,12 @@ /* Configure pwm clock source for timers 8 & 9 */ &timer8 { assigned-clocks = <&abe_clkctrl OMAP4_TIMER8_CLKCTRL 24>; - assigned-clock-parents = <&sys_clkin_ck>; + assigned-clock-parents = <&sys_32k_ck>; }; &timer9 { assigned-clocks = <&l4_per_clkctrl OMAP4_TIMER9_CLKCTRL 24>; - assigned-clock-parents = <&sys_clkin_ck>; + assigned-clock-parents = <&sys_32k_ck>; }; /* --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/ti/omap/omap3-cpu-thermal.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/ti/omap/omap3-cpu-thermal.dtsi @@ -12,8 +12,7 @@ polling-delay = <1000>; /* milliseconds */ coefficients = <0 20000>; - /* sensor ID */ - thermal-sensors = <&bandgap 0>; + thermal-sensors = <&bandgap>; cpu_trips: trips { cpu_alert0: cpu_alert { --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/ti/omap/omap4-cpu-thermal.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/ti/omap/omap4-cpu-thermal.dtsi @@ -12,7 +12,10 @@ polling-delay-passive = <250>; /* milliseconds */ polling-delay = <1000>; /* milliseconds */ - /* sensor ID */ + /* + * See 44xx files for single sensor addressing, omap5 and dra7 need + * also sensor ID for addressing. + */ thermal-sensors = <&bandgap 0>; cpu_trips: trips { --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/ti/omap/omap443x.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/ti/omap/omap443x.dtsi @@ -69,6 +69,7 @@ }; &cpu_thermal { + thermal-sensors = <&bandgap>; coefficients = <0 20000>; }; --- linux-intel-opt-6.5.0.orig/arch/arm/boot/dts/ti/omap/omap4460.dtsi +++ linux-intel-opt-6.5.0/arch/arm/boot/dts/ti/omap/omap4460.dtsi @@ -79,6 +79,7 @@ }; &cpu_thermal { + thermal-sensors = <&bandgap>; coefficients = <348 (-9301)>; }; --- linux-intel-opt-6.5.0.orig/arch/arm/include/asm/irq.h +++ linux-intel-opt-6.5.0/arch/arm/include/asm/irq.h @@ -32,7 +32,7 @@ #include extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask, - bool exclude_self); + int exclude_cpu); #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace #endif --- linux-intel-opt-6.5.0.orig/arch/arm/include/asm/syscall.h +++ linux-intel-opt-6.5.0/arch/arm/include/asm/syscall.h @@ -25,6 +25,9 @@ if (IS_ENABLED(CONFIG_AEABI) && !IS_ENABLED(CONFIG_OABI_COMPAT)) return task_thread_info(task)->abi_syscall; + if (task_thread_info(task)->abi_syscall == -1) + return -1; + return task_thread_info(task)->abi_syscall & __NR_SYSCALL_MASK; } --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/entry-common.S +++ linux-intel-opt-6.5.0/arch/arm/kernel/entry-common.S @@ -90,6 +90,7 @@ cmp r0, #0 beq no_work_pending movlt scno, #(__NR_restart_syscall - __NR_SYSCALL_BASE) + str scno, [tsk, #TI_ABI_SYSCALL] @ make sure tracers see update ldmia sp, {r0 - r6} @ have to reload r0 - r6 b local_restart @ ... and off we go ENDPROC(ret_fast_syscall) --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/hw_breakpoint.c +++ linux-intel-opt-6.5.0/arch/arm/kernel/hw_breakpoint.c @@ -626,7 +626,7 @@ hw->address &= ~alignment_mask; hw->ctrl.len <<= offset; - if (is_default_overflow_handler(bp)) { + if (uses_default_overflow_handler(bp)) { /* * Mismatch breakpoints are required for single-stepping * breakpoints. @@ -798,7 +798,7 @@ * Otherwise, insert a temporary mismatch breakpoint so that * we can single-step over the watchpoint trigger. */ - if (!is_default_overflow_handler(wp)) + if (!uses_default_overflow_handler(wp)) continue; step: enable_single_step(wp, instruction_pointer(regs)); @@ -811,7 +811,7 @@ info->trigger = addr; pr_debug("watchpoint fired: address = 0x%x\n", info->trigger); perf_bp_event(wp, regs); - if (is_default_overflow_handler(wp)) + if (uses_default_overflow_handler(wp)) enable_single_step(wp, instruction_pointer(regs)); } @@ -886,7 +886,7 @@ info->trigger = addr; pr_debug("breakpoint fired: address = 0x%x\n", addr); perf_bp_event(bp, regs); - if (is_default_overflow_handler(bp)) + if (uses_default_overflow_handler(bp)) enable_single_step(bp, addr); goto unlock; } --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/machine_kexec.c +++ linux-intel-opt-6.5.0/arch/arm/kernel/machine_kexec.c @@ -94,16 +94,28 @@ } } +static DEFINE_PER_CPU(call_single_data_t, cpu_stop_csd) = + CSD_INIT(machine_crash_nonpanic_core, NULL); + void crash_smp_send_stop(void) { static int cpus_stopped; unsigned long msecs; + call_single_data_t *csd; + int cpu, this_cpu = raw_smp_processor_id(); if (cpus_stopped) return; atomic_set(&waiting_for_crash_ipi, num_online_cpus() - 1); - smp_call_function(machine_crash_nonpanic_core, NULL, false); + for_each_online_cpu(cpu) { + if (cpu == this_cpu) + continue; + + csd = &per_cpu(cpu_stop_csd, cpu); + smp_call_function_single_async(cpu, csd); + } + msecs = 1000; /* Wait at most a second for the other cpus to stop */ while ((atomic_read(&waiting_for_crash_ipi) > 0) && msecs) { mdelay(1); --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/module-plts.c +++ linux-intel-opt-6.5.0/arch/arm/kernel/module-plts.c @@ -251,7 +251,7 @@ /* sort by type and symbol index */ sort(rels, numrels, sizeof(Elf32_Rel), cmp_rel, NULL); - if (strncmp(secstrings + dstsec->sh_name, ".init", 5) != 0) + if (!module_init_layout_section(secstrings + dstsec->sh_name)) core_plts += count_plts(syms, dstsec->sh_addr, rels, numrels, s->sh_info); else --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/ptrace.c +++ linux-intel-opt-6.5.0/arch/arm/kernel/ptrace.c @@ -783,8 +783,9 @@ break; case PTRACE_SET_SYSCALL: - task_thread_info(child)->abi_syscall = data & - __NR_SYSCALL_MASK; + if (data != -1) + data &= __NR_SYSCALL_MASK; + task_thread_info(child)->abi_syscall = data; ret = 0; break; --- linux-intel-opt-6.5.0.orig/arch/arm/kernel/smp.c +++ linux-intel-opt-6.5.0/arch/arm/kernel/smp.c @@ -846,7 +846,7 @@ __ipi_send_mask(ipi_desc[IPI_CPU_BACKTRACE], mask); } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { - nmi_trigger_cpumask_backtrace(mask, exclude_self, raise_nmi); + nmi_trigger_cpumask_backtrace(mask, exclude_cpu, raise_nmi); } --- linux-intel-opt-6.5.0.orig/arch/arm/mach-omap2/powerdomain.c +++ linux-intel-opt-6.5.0/arch/arm/mach-omap2/powerdomain.c @@ -174,7 +174,7 @@ break; case PWRDM_STATE_PREV: prev = pwrdm_read_prev_pwrst(pwrdm); - if (pwrdm->state != prev) + if (prev >= 0 && pwrdm->state != prev) pwrdm->state_counter[prev]++; if (prev == PWRDM_POWER_RET) _update_logic_membank_counters(pwrdm); --- linux-intel-opt-6.5.0.orig/arch/arm/mach-pxa/sharpsl_pm.c +++ linux-intel-opt-6.5.0/arch/arm/mach-pxa/sharpsl_pm.c @@ -216,8 +216,6 @@ { schedule_delayed_work(&sharpsl_bat, msecs_to_jiffies(125)); } -EXPORT_SYMBOL(sharpsl_battery_kick); - static void sharpsl_battery_thread(struct work_struct *private_) { --- linux-intel-opt-6.5.0.orig/arch/arm/mach-pxa/spitz.c +++ linux-intel-opt-6.5.0/arch/arm/mach-pxa/spitz.c @@ -9,7 +9,6 @@ */ #include -#include /* symbol_get ; symbol_put */ #include #include #include @@ -518,17 +517,6 @@ }, }; -static void spitz_bl_kick_battery(void) -{ - void (*kick_batt)(void); - - kick_batt = symbol_get(sharpsl_battery_kick); - if (kick_batt) { - kick_batt(); - symbol_put(sharpsl_battery_kick); - } -} - static struct gpiod_lookup_table spitz_lcdcon_gpio_table = { .dev_id = "spi2.1", .table = { @@ -556,7 +544,7 @@ .max_intensity = 0x2f, .default_intensity = 0x1f, .limit_mask = 0x0b, - .kick_battery = spitz_bl_kick_battery, + .kick_battery = sharpsl_battery_kick, }; static struct spi_board_info spitz_spi_devices[] = { --- linux-intel-opt-6.5.0.orig/arch/arm64/Kconfig +++ linux-intel-opt-6.5.0/arch/arm64/Kconfig @@ -1038,6 +1038,19 @@ If unsure, say Y. +config ARM64_ERRATUM_2966298 + bool "Cortex-A520: 2966298: workaround for speculatively executed unprivileged load" + default y + help + This option adds the workaround for ARM Cortex-A520 erratum 2966298. + + On an affected Cortex-A520 core, a speculatively executed unprivileged + load might leak data from a privileged level via a cache side channel. + + Work around this problem by executing a TLBI before returning to EL0. + + If unsure, say Y. + config CAVIUM_ERRATUM_22375 bool "Cavium erratum 22375, 24313" default y @@ -1545,7 +1558,7 @@ # 64K | 29 | 16 | 13 | 13 | config ARCH_FORCE_MAX_ORDER int - default "13" if ARM64_64K_PAGES + default "13" if ARM64_64K_PAGES || (ARCH_THUNDER && ARM64_4K_PAGES) default "11" if ARM64_16K_PAGES default "10" help --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/freescale/Makefile +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/freescale/Makefile @@ -66,6 +66,7 @@ dtb-$(CONFIG_ARCH_MXC) += imx8mm-nitrogen-r2.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-phg.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-phyboard-polis-rdk.dtb +dtb-$(CONFIG_ARCH_MXC) += imx8mm-prt8mm.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-tqma8mqml-mba8mx.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-var-som-symphony.dtb dtb-$(CONFIG_ARCH_MXC) += imx8mm-venice-gw71xx-0x.dtb --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi @@ -26,7 +26,7 @@ port { hdmi_connector_in: endpoint { - remote-endpoint = <&adv7533_out>; + remote-endpoint = <&adv7535_out>; }; }; }; @@ -72,6 +72,13 @@ enable-active-high; }; + reg_vddext_3v3: regulator-vddext-3v3 { + compatible = "regulator-fixed"; + regulator-name = "VDDEXT_3V3"; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + }; + backlight: backlight { compatible = "pwm-backlight"; pwms = <&pwm1 0 5000000 0>; @@ -317,15 +324,16 @@ hdmi@3d { compatible = "adi,adv7535"; - reg = <0x3d>, <0x3c>, <0x3e>, <0x3f>; - reg-names = "main", "cec", "edid", "packet"; + reg = <0x3d>; + interrupt-parent = <&gpio1>; + interrupts = <9 IRQ_TYPE_EDGE_FALLING>; adi,dsi-lanes = <4>; - - adi,input-depth = <8>; - adi,input-colorspace = "rgb"; - adi,input-clock = "1x"; - adi,input-style = <1>; - adi,input-justification = "evenly"; + avdd-supply = <&buck5_reg>; + dvdd-supply = <&buck5_reg>; + pvdd-supply = <&buck5_reg>; + a2vdd-supply = <&buck5_reg>; + v3p3-supply = <®_vddext_3v3>; + v1p2-supply = <&buck5_reg>; ports { #address-cells = <1>; @@ -334,7 +342,7 @@ port@0 { reg = <0>; - adv7533_in: endpoint { + adv7535_in: endpoint { remote-endpoint = <&dsi_out>; }; }; @@ -342,7 +350,7 @@ port@1 { reg = <1>; - adv7533_out: endpoint { + adv7535_out: endpoint { remote-endpoint = <&hdmi_connector_in>; }; }; @@ -408,7 +416,7 @@ reg = <1>; dsi_out: endpoint { - remote-endpoint = <&adv7533_in>; + remote-endpoint = <&adv7535_in>; data-lanes = <1 2 3 4>; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/freescale/imx8mp-beacon-kit.dts @@ -381,9 +381,10 @@ &sai3 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_sai3>; - assigned-clocks = <&clk IMX8MP_CLK_SAI3>; + assigned-clocks = <&clk IMX8MP_CLK_SAI3>, + <&clk IMX8MP_AUDIO_PLL2> ; assigned-clock-parents = <&clk IMX8MP_AUDIO_PLL2_OUT>; - assigned-clock-rates = <12288000>; + assigned-clock-rates = <12288000>, <361267200>; fsl,sai-mclk-direction-output; status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/freescale/imx8mp-debix-model-a.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/freescale/imx8mp-debix-model-a.dts @@ -355,28 +355,6 @@ >; }; - pinctrl_fec: fecgrp { - fsl,pins = < - MX8MP_IOMUXC_SAI1_RXD2__ENET1_MDC 0x3 - MX8MP_IOMUXC_SAI1_RXD3__ENET1_MDIO 0x3 - MX8MP_IOMUXC_SAI1_RXD4__ENET1_RGMII_RD0 0x91 - MX8MP_IOMUXC_SAI1_RXD5__ENET1_RGMII_RD1 0x91 - MX8MP_IOMUXC_SAI1_RXD6__ENET1_RGMII_RD2 0x91 - MX8MP_IOMUXC_SAI1_RXD7__ENET1_RGMII_RD3 0x91 - MX8MP_IOMUXC_SAI1_TXC__ENET1_RGMII_RXC 0x91 - MX8MP_IOMUXC_SAI1_TXFS__ENET1_RGMII_RX_CTL 0x91 - MX8MP_IOMUXC_SAI1_TXD0__ENET1_RGMII_TD0 0x1f - MX8MP_IOMUXC_SAI1_TXD1__ENET1_RGMII_TD1 0x1f - MX8MP_IOMUXC_SAI1_TXD2__ENET1_RGMII_TD2 0x1f - MX8MP_IOMUXC_SAI1_TXD3__ENET1_RGMII_TD3 0x1f - MX8MP_IOMUXC_SAI1_TXD4__ENET1_RGMII_TX_CTL 0x1f - MX8MP_IOMUXC_SAI1_TXD5__ENET1_RGMII_TXC 0x1f - MX8MP_IOMUXC_SAI1_RXD1__ENET1_1588_EVENT1_OUT 0x1f - MX8MP_IOMUXC_SAI1_RXD0__ENET1_1588_EVENT1_IN 0x1f - MX8MP_IOMUXC_SAI1_TXD7__GPIO4_IO19 0x19 - >; - }; - pinctrl_gpio_led: gpioledgrp { fsl,pins = < MX8MP_IOMUXC_NAND_READY_B__GPIO3_IO16 0x19 --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/freescale/imx8mp.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/freescale/imx8mp.dtsi @@ -794,6 +794,12 @@ reg = ; clocks = <&clk IMX8MP_CLK_AUDIO_ROOT>, <&clk IMX8MP_CLK_AUDIO_AXI>; + assigned-clocks = <&clk IMX8MP_CLK_AUDIO_AHB>, + <&clk IMX8MP_CLK_AUDIO_AXI_SRC>; + assigned-clock-parents = <&clk IMX8MP_SYS_PLL1_800M>, + <&clk IMX8MP_SYS_PLL1_800M>; + assigned-clock-rates = <400000000>, + <600000000>; }; pgc_gpu2d: power-domain@6 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/mediatek/mt7622.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/mediatek/mt7622.dtsi @@ -905,7 +905,7 @@ status = "disabled"; }; - sata_phy: t-phy@1a243000 { + sata_phy: t-phy { compatible = "mediatek,mt7622-tphy", "mediatek,generic-tphy-v1"; #address-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/mediatek/mt7986a.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/mediatek/mt7986a.dtsi @@ -434,7 +434,7 @@ }; }; - pcie_phy: t-phy@11c00000 { + pcie_phy: t-phy { compatible = "mediatek,mt7986-tphy", "mediatek,generic-tphy-v2"; #address-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/mediatek/mt8195-demo.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/mediatek/mt8195-demo.dts @@ -48,7 +48,7 @@ memory@40000000 { device_type = "memory"; - reg = <0 0x40000000 0 0x80000000>; + reg = <0 0x40000000 0x2 0x00000000>; }; reserved-memory { @@ -56,13 +56,8 @@ #size-cells = <2>; ranges; - /* 2 MiB reserved for ARM Trusted Firmware (BL31) */ - bl31_secmon_reserved: secmon@54600000 { - no-map; - reg = <0 0x54600000 0x0 0x200000>; - }; - - /* 12 MiB reserved for OP-TEE (BL32) + /* + * 12 MiB reserved for OP-TEE (BL32) * +-----------------------+ 0x43e0_0000 * | SHMEM 2MiB | * +-----------------------+ 0x43c0_0000 @@ -75,6 +70,34 @@ no-map; reg = <0 0x43200000 0 0x00c00000>; }; + + scp_mem: memory@50000000 { + compatible = "shared-dma-pool"; + reg = <0 0x50000000 0 0x2900000>; + no-map; + }; + + vpu_mem: memory@53000000 { + compatible = "shared-dma-pool"; + reg = <0 0x53000000 0 0x1400000>; /* 20 MB */ + }; + + /* 2 MiB reserved for ARM Trusted Firmware (BL31) */ + bl31_secmon_mem: memory@54600000 { + no-map; + reg = <0 0x54600000 0x0 0x200000>; + }; + + snd_dma_mem: memory@60000000 { + compatible = "shared-dma-pool"; + reg = <0 0x60000000 0 0x1100000>; + no-map; + }; + + apu_mem: memory@62000000 { + compatible = "shared-dma-pool"; + reg = <0 0x62000000 0 0x1400000>; /* 20 MB */ + }; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/mediatek/mt8195.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/mediatek/mt8195.dtsi @@ -313,6 +313,7 @@ interrupts = ; cpus = <&cpu0>, <&cpu1>, <&cpu2>, <&cpu3>, <&cpu4>, <&cpu5>, <&cpu6>, <&cpu7>; + status = "fail"; }; dmic_codec: dmic-codec { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra186.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra186.dtsi @@ -135,7 +135,8 @@ clocks = <&bpmp TEGRA186_CLK_AHUB>; clock-names = "ahub"; assigned-clocks = <&bpmp TEGRA186_CLK_AHUB>; - assigned-clock-parents = <&bpmp TEGRA186_CLK_PLL_A_OUT0>; + assigned-clock-parents = <&bpmp TEGRA186_CLK_PLLP_OUT0>; + assigned-clock-rates = <81600000>; #address-cells = <1>; #size-cells = <1>; ranges = <0x02900800 0x02900800 0x11800>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra194.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra194.dtsi @@ -231,7 +231,8 @@ clocks = <&bpmp TEGRA194_CLK_AHUB>; clock-names = "ahub"; assigned-clocks = <&bpmp TEGRA194_CLK_AHUB>; - assigned-clock-parents = <&bpmp TEGRA194_CLK_PLLA_OUT0>; + assigned-clock-parents = <&bpmp TEGRA194_CLK_PLLP_OUT0>; + assigned-clock-rates = <81600000>; status = "disabled"; #address-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra210-smaug.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra210-smaug.dts @@ -1317,6 +1317,7 @@ uartd: serial@70006300 { compatible = "nvidia,tegra30-hsuart"; + reset-names = "serial"; status = "okay"; bluetooth { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra210.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra210.dtsi @@ -1386,7 +1386,8 @@ clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; clock-names = "ahub"; assigned-clocks = <&tegra_car TEGRA210_CLK_D_AUDIO>; - assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_A_OUT0>; + assigned-clock-parents = <&tegra_car TEGRA210_CLK_PLL_P>; + assigned-clock-rates = <81600000>; #address-cells = <1>; #size-cells = <1>; ranges = <0x702d0000 0x702d0000 0x0000e400>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra234-p3737-0000+p3701-0000.dts @@ -2010,6 +2010,7 @@ serial@3100000 { compatible = "nvidia,tegra194-hsuart"; + reset-names = "serial"; status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra234-p3740-0002+p3701-0008.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra234-p3740-0002+p3701-0008.dts @@ -12,6 +12,7 @@ aliases { serial0 = &tcu; + serial1 = &uarta; }; chosen { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/nvidia/tegra234.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/nvidia/tegra234.dtsi @@ -180,7 +180,8 @@ clocks = <&bpmp TEGRA234_CLK_AHUB>; clock-names = "ahub"; assigned-clocks = <&bpmp TEGRA234_CLK_AHUB>; - assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLA_OUT0>; + assigned-clock-parents = <&bpmp TEGRA234_CLK_PLLP_OUT0>; + assigned-clock-rates = <81600000>; status = "disabled"; #address-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/apq8016-sbc.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/apq8016-sbc.dts @@ -278,7 +278,7 @@ compatible = "ovti,ov5640"; reg = <0x3b>; - enable-gpios = <&tlmm 34 GPIO_ACTIVE_HIGH>; + powerdown-gpios = <&tlmm 34 GPIO_ACTIVE_HIGH>; reset-gpios = <&tlmm 35 GPIO_ACTIVE_LOW>; pinctrl-names = "default"; pinctrl-0 = <&camera_rear_default>; @@ -287,9 +287,9 @@ clock-names = "xclk"; clock-frequency = <23880000>; - vdddo-supply = <&camera_vdddo_1v8>; - vdda-supply = <&camera_vdda_2v8>; - vddd-supply = <&camera_vddd_1v5>; + DOVDD-supply = <&camera_vdddo_1v8>; + AVDD-supply = <&camera_vdda_2v8>; + DVDD-supply = <&camera_vddd_1v5>; /* No camera mezzanine by default */ status = "disabled"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/apq8096-db820c.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/apq8096-db820c.dts @@ -208,6 +208,25 @@ status = "okay"; }; +&hdmi { + status = "okay"; + + pinctrl-names = "default", "sleep"; + pinctrl-0 = <&hdmi_hpd_active &hdmi_ddc_active>; + pinctrl-1 = <&hdmi_hpd_suspend &hdmi_ddc_suspend>; + + core-vdda-supply = <&vreg_l12a_1p8>; + core-vcc-supply = <&vreg_s4a_1p8>; +}; + +&hdmi_phy { + status = "okay"; + + vddio-supply = <&vreg_l12a_1p8>; + vcca-supply = <&vreg_l28a_0p925>; + #phy-cells = <0>; +}; + &hsusb_phy1 { status = "okay"; @@ -232,25 +251,6 @@ status = "okay"; }; -&mdss_hdmi { - status = "okay"; - - pinctrl-names = "default", "sleep"; - pinctrl-0 = <&mdss_hdmi_hpd_active &mdss_hdmi_ddc_active>; - pinctrl-1 = <&mdss_hdmi_hpd_suspend &mdss_hdmi_ddc_suspend>; - - core-vdda-supply = <&vreg_l12a_1p8>; - core-vcc-supply = <&vreg_s4a_1p8>; -}; - -&mdss_hdmi_phy { - status = "okay"; - - vddio-supply = <&vreg_l12a_1p8>; - vcca-supply = <&vreg_l28a_0p925>; - #phy-cells = <0>; -}; - &mmcc { vdd-gfx-supply = <&vdd_gfx>; }; @@ -433,28 +433,28 @@ drive-strength = <2>; }; - mdss_hdmi_hpd_active: mdss_hdmi-hpd-active-state { + hdmi_hpd_active: hdmi-hpd-active-state { pins = "gpio34"; function = "hdmi_hot"; bias-pull-down; drive-strength = <16>; }; - mdss_hdmi_hpd_suspend: mdss_hdmi-hpd-suspend-state { + hdmi_hpd_suspend: hdmi-hpd-suspend-state { pins = "gpio34"; function = "hdmi_hot"; bias-pull-down; drive-strength = <2>; }; - mdss_hdmi_ddc_active: mdss_hdmi-ddc-active-state { + hdmi_ddc_active: hdmi-ddc-active-state { pins = "gpio32", "gpio33"; function = "hdmi_ddc"; drive-strength = <2>; bias-pull-up; }; - mdss_hdmi_ddc_suspend: mdss_hdmi-ddc-suspend-state { + hdmi_ddc_suspend: hdmi-ddc-suspend-state { pins = "gpio32", "gpio33"; function = "hdmi_ddc"; drive-strength = <2>; @@ -1043,7 +1043,7 @@ }; }; - mdss_hdmi-dai-link { + hdmi-dai-link { link-name = "HDMI"; cpu { sound-dai = <&q6afedai HDMI_RX>; @@ -1054,7 +1054,7 @@ }; codec { - sound-dai = <&mdss_hdmi 0>; + sound-dai = <&hdmi 0>; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/apq8096-ifc6640.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/apq8096-ifc6640.dts @@ -92,15 +92,15 @@ status = "okay"; }; -&mdss { +&hdmi { status = "okay"; }; -&mdss_hdmi { +&hdmi_phy { status = "okay"; }; -&mdss_hdmi_phy { +&mdss { status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/ipq8074.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/ipq8074.dtsi @@ -794,10 +794,10 @@ pcie1: pci@10000000 { compatible = "qcom,pcie-ipq8074"; - reg = <0x10000000 0xf1d>, - <0x10000f20 0xa8>, - <0x00088000 0x2000>, - <0x10100000 0x1000>; + reg = <0x10000000 0xf1d>, + <0x10000f20 0xa8>, + <0x00088000 0x2000>, + <0x10100000 0x1000>; reg-names = "dbi", "elbi", "parf", "config"; device_type = "pci"; linux,pci-domain = <1>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8916-longcheer-l8150.dts @@ -165,7 +165,7 @@ pinctrl-0 = <&light_int_default>; vdd-supply = <&pm8916_l17>; - vio-supply = <&pm8916_l6>; + vddio-supply = <&pm8916_l6>; }; gyroscope@68 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8916-samsung-serranove.dts @@ -219,9 +219,9 @@ compatible = "yamaha,yas537"; reg = <0x2e>; - mount-matrix = "0", "1", "0", - "1", "0", "0", - "0", "0", "-1"; + mount-matrix = "0", "1", "0", + "1", "0", "0", + "0", "0", "-1"; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8939.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8939.dtsi @@ -55,6 +55,7 @@ L2_1: l2-cache { compatible = "cache"; cache-level = <2>; + cache-unified; }; }; @@ -111,6 +112,7 @@ L2_0: l2-cache { compatible = "cache"; cache-level = <2>; + cache-unified; }; }; @@ -155,7 +157,7 @@ idle-states { CPU_SLEEP_0: cpu-sleep-0 { - compatible ="qcom,idle-state-spc", "arm,idle-state"; + compatible = "arm,idle-state"; entry-latency-us = <130>; exit-latency-us = <150>; min-residency-us = <2000>; @@ -1644,7 +1646,7 @@ clocks = <&gcc GCC_SDCC2_AHB_CLK>, <&gcc GCC_SDCC2_APPS_CLK>, <&rpmcc RPM_SMD_XO_CLK_SRC>; - clock-names = "iface", "core", "xo"; + clock-names = "iface", "core", "xo"; resets = <&gcc GCC_SDCC2_BCR>; pinctrl-0 = <&sdc2_default>; pinctrl-1 = <&sdc2_sleep>; @@ -1731,7 +1733,7 @@ interrupts = ; clocks = <&gcc GCC_BLSP1_QUP2_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; - clock-names = "core", "iface"; + clock-names = "core", "iface"; dmas = <&blsp_dma 6>, <&blsp_dma 7>; dma-names = "tx", "rx"; pinctrl-0 = <&blsp_i2c2_default>; @@ -1765,7 +1767,7 @@ interrupts = ; clocks = <&gcc GCC_BLSP1_QUP3_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; - clock-names = "core", "iface"; + clock-names = "core", "iface"; dmas = <&blsp_dma 8>, <&blsp_dma 9>; dma-names = "tx", "rx"; pinctrl-0 = <&blsp_i2c3_default>; @@ -1799,7 +1801,7 @@ interrupts = ; clocks = <&gcc GCC_BLSP1_QUP4_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; - clock-names = "core", "iface"; + clock-names = "core", "iface"; dmas = <&blsp_dma 10>, <&blsp_dma 11>; dma-names = "tx", "rx"; pinctrl-0 = <&blsp_i2c4_default>; @@ -1833,7 +1835,7 @@ interrupts = ; clocks = <&gcc GCC_BLSP1_QUP5_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; - clock-names = "core", "iface"; + clock-names = "core", "iface"; dmas = <&blsp_dma 12>, <&blsp_dma 13>; dma-names = "tx", "rx"; pinctrl-0 = <&blsp_i2c5_default>; @@ -1867,7 +1869,7 @@ interrupts = ; clocks = <&gcc GCC_BLSP1_QUP6_I2C_APPS_CLK>, <&gcc GCC_BLSP1_AHB_CLK>; - clock-names = "core", "iface"; + clock-names = "core", "iface"; dmas = <&blsp_dma 14>, <&blsp_dma 15>; dma-names = "tx", "rx"; pinctrl-0 = <&blsp_i2c6_default>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8953-xiaomi-daisy.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8953-xiaomi-daisy.dts @@ -17,7 +17,7 @@ compatible = "xiaomi,daisy", "qcom,msm8953"; chassis-type = "handset"; qcom,msm-id = <293 0>; - qcom,board-id= <0x1000b 0x9>; + qcom,board-id = <0x1000b 0x9>; chosen { #address-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8953-xiaomi-vince.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8953-xiaomi-vince.dts @@ -20,7 +20,7 @@ compatible = "xiaomi,vince", "qcom,msm8953"; chassis-type = "handset"; qcom,msm-id = <293 0>; - qcom,board-id= <0x1000b 0x08>; + qcom,board-id = <0x1000b 0x08>; gpio-keys { compatible = "gpio-keys"; @@ -132,7 +132,6 @@ touchscreen@20 { reg = <0x20>; compatible = "syna,rmi4-i2c"; - interrupts-parent = <&tlmm>; interrupts-extended = <&tlmm 65 IRQ_TYPE_EDGE_FALLING>; #address-cells = <1>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8996-mtp.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8996-mtp.dts @@ -24,10 +24,10 @@ status = "okay"; }; -&mdss_hdmi { +&hdmi { status = "okay"; }; -&mdss_hdmi_phy { +&hdmi_phy { status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8996-xiaomi-gemini.dts @@ -82,7 +82,7 @@ #size-cells = <0>; interrupt-parent = <&tlmm>; interrupts = <125 IRQ_TYPE_LEVEL_LOW>; - vdda-supply = <&vreg_l6a_1p8>; + vio-supply = <&vreg_l6a_1p8>; vdd-supply = <&vdd_3v2_tp>; reset-gpios = <&tlmm 89 GPIO_ACTIVE_LOW>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8996.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8996.dtsi @@ -895,7 +895,7 @@ <&mdss_dsi0_phy 0>, <&mdss_dsi1_phy 1>, <&mdss_dsi1_phy 0>, - <&mdss_hdmi_phy>; + <&hdmi_phy>; clock-names = "xo", "gpll0", "gcc_mmss_noc_cfg_ahb_clk", @@ -980,7 +980,7 @@ port@0 { reg = <0>; mdp5_intf3_out: endpoint { - remote-endpoint = <&mdss_hdmi_in>; + remote-endpoint = <&hdmi_in>; }; }; @@ -1075,7 +1075,7 @@ reg-names = "dsi_ctrl"; interrupt-parent = <&mdss>; - interrupts = <4>; + interrupts = <5>; clocks = <&mmcc MDSS_MDP_CLK>, <&mmcc MDSS_BYTE1_CLK>, @@ -1136,11 +1136,11 @@ status = "disabled"; }; - mdss_hdmi: mdss_hdmi-tx@9a0000 { - compatible = "qcom,mdss_hdmi-tx-8996"; - reg = <0x009a0000 0x50c>, - <0x00070000 0x6158>, - <0x009e0000 0xfff>; + hdmi: hdmi-tx@9a0000 { + compatible = "qcom,hdmi-tx-8996"; + reg = <0x009a0000 0x50c>, + <0x00070000 0x6158>, + <0x009e0000 0xfff>; reg-names = "core_physical", "qfprom_physical", "hdcp_physical"; @@ -1160,7 +1160,7 @@ "alt_iface", "extp"; - phys = <&mdss_hdmi_phy>; + phys = <&hdmi_phy>; #sound-dai-cells = <1>; status = "disabled"; @@ -1171,16 +1171,16 @@ port@0 { reg = <0>; - mdss_hdmi_in: endpoint { + hdmi_in: endpoint { remote-endpoint = <&mdp5_intf3_out>; }; }; }; }; - mdss_hdmi_phy: phy@9a0600 { + hdmi_phy: phy@9a0600 { #phy-cells = <0>; - compatible = "qcom,mdss_hdmi-phy-8996"; + compatible = "qcom,hdmi-phy-8996"; reg = <0x009a0600 0x1c4>, <0x009a0a00 0x124>, <0x009a0c00 0x124>, @@ -3336,6 +3336,9 @@ #size-cells = <1>; ranges; + interrupts = ; + interrupt-names = "hs_phy_irq"; + clocks = <&gcc GCC_PERIPH_NOC_USB20_AHB_CLK>, <&gcc GCC_USB20_MASTER_CLK>, <&gcc GCC_USB20_MOCK_UTMI_CLK>, --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8996pro-xiaomi-natrium.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8996pro-xiaomi-natrium.dts @@ -106,7 +106,7 @@ &sound { compatible = "qcom,apq8096-sndcard"; model = "natrium"; - audio-routing = "RX_BIAS", "MCLK"; + audio-routing = "RX_BIAS", "MCLK"; mm1-dai-link { link-name = "MultiMedia1"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/msm8998.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/msm8998.dtsi @@ -909,10 +909,10 @@ pcie0: pci@1c00000 { compatible = "qcom,pcie-msm8998", "qcom,pcie-msm8996"; - reg = <0x01c00000 0x2000>, - <0x1b000000 0xf1d>, - <0x1b000f20 0xa8>, - <0x1b100000 0x100000>; + reg = <0x01c00000 0x2000>, + <0x1b000000 0xf1d>, + <0x1b000f20 0xa8>, + <0x1b100000 0x100000>; reg-names = "parf", "dbi", "elbi", "config"; device_type = "pci"; linux,pci-domain = <0>; @@ -2074,11 +2074,11 @@ spmi_bus: spmi@800f000 { compatible = "qcom,spmi-pmic-arb"; - reg = <0x0800f000 0x1000>, - <0x08400000 0x1000000>, - <0x09400000 0x1000000>, - <0x0a400000 0x220000>, - <0x0800a000 0x3000>; + reg = <0x0800f000 0x1000>, + <0x08400000 0x1000000>, + <0x09400000 0x1000000>, + <0x0a400000 0x220000>, + <0x0800a000 0x3000>; reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; interrupt-names = "periph_irq"; interrupts = ; @@ -2737,10 +2737,10 @@ clocks = <&mmcc MNOC_AHB_CLK>, <&mmcc BIMC_SMMU_AHB_CLK>, - <&rpmcc RPM_SMD_MMAXI_CLK>, <&mmcc BIMC_SMMU_AXI_CLK>; - clock-names = "iface-mm", "iface-smmu", - "bus-mm", "bus-smmu"; + clock-names = "iface-mm", + "iface-smmu", + "bus-smmu"; #global-interrupts = <0>; interrupts = @@ -2764,6 +2764,8 @@ , , ; + + power-domains = <&mmcc BIMC_SMMU_GDSC>; }; remoteproc_adsp: remoteproc@17300000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pm6150l.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pm6150l.dtsi @@ -121,8 +121,9 @@ pm6150l_wled: leds@d800 { compatible = "qcom,pm6150l-wled"; reg = <0xd800>, <0xd900>; - interrupts = <0x5 0xd8 0x1 IRQ_TYPE_EDGE_RISING>; - interrupt-names = "ovp"; + interrupts = <0x5 0xd8 0x1 IRQ_TYPE_EDGE_RISING>, + <0x5 0xd8 0x2 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "ovp", "short"; label = "backlight"; status = "disabled"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pm660l.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pm660l.dtsi @@ -74,8 +74,9 @@ pm660l_wled: leds@d800 { compatible = "qcom,pm660l-wled"; reg = <0xd800>, <0xd900>; - interrupts = <0x3 0xd8 0x1 IRQ_TYPE_EDGE_RISING>; - interrupt-names = "ovp"; + interrupts = <0x3 0xd8 0x1 IRQ_TYPE_EDGE_RISING>, + <0x3 0xd8 0x2 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "ovp", "short"; label = "backlight"; status = "disabled"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pm8350.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pm8350.dtsi @@ -8,7 +8,7 @@ / { thermal-zones { - pm8350_thermal: pm8350c-thermal { + pm8350_thermal: pm8350-thermal { polling-delay-passive = <100>; polling-delay = <0>; thermal-sensors = <&pm8350_temp_alarm>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pm8350b.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pm8350b.dtsi @@ -8,7 +8,7 @@ / { thermal-zones { - pm8350b_thermal: pm8350c-thermal { + pm8350b_thermal: pm8350b-thermal { polling-delay-passive = <100>; polling-delay = <0>; thermal-sensors = <&pm8350b_temp_alarm>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pmi8950.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pmi8950.dtsi @@ -87,8 +87,9 @@ pmi8950_wled: leds@d800 { compatible = "qcom,pmi8950-wled"; reg = <0xd800>, <0xd900>; - interrupts = <0x3 0xd8 0x02 IRQ_TYPE_EDGE_RISING>; - interrupt-names = "short"; + interrupts = <0x3 0xd8 0x1 IRQ_TYPE_EDGE_RISING>, + <0x3 0xd8 0x2 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "ovp", "short"; label = "backlight"; status = "disabled"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pmi8994.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pmi8994.dtsi @@ -54,8 +54,9 @@ pmi8994_wled: wled@d800 { compatible = "qcom,pmi8994-wled"; reg = <0xd800>, <0xd900>; - interrupts = <3 0xd8 0x02 IRQ_TYPE_EDGE_RISING>; - interrupt-names = "short"; + interrupts = <0x3 0xd8 0x1 IRQ_TYPE_EDGE_RISING>, + <0x3 0xd8 0x2 IRQ_TYPE_EDGE_RISING>; + interrupt-names = "ovp", "short"; qcom,cabc; qcom,external-pfet; status = "disabled"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pmk8350.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pmk8350.dtsi @@ -59,7 +59,7 @@ }; pmk8350_adc_tm: adc-tm@3400 { - compatible = "qcom,adc-tm7"; + compatible = "qcom,spmi-adc-tm5-gen2"; reg = <0x3400>; interrupts = ; #address-cells = <1>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/pmr735b.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/pmr735b.dtsi @@ -8,7 +8,7 @@ / { thermal-zones { - pmr735a_thermal: pmr735a-thermal { + pmr735b_thermal: pmr735b-thermal { polling-delay-passive = <100>; polling-delay = <0>; thermal-sensors = <&pmr735b_temp_alarm>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/qcm2290.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/qcm2290.dtsi @@ -790,7 +790,7 @@ , , ; - dma-channels = <10>; + dma-channels = <10>; dma-channel-mask = <0x1f>; iommus = <&apps_smmu 0xf6 0x0>; #dma-cells = <3>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/qcs404.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/qcs404.dtsi @@ -1459,10 +1459,10 @@ pcie: pci@10000000 { compatible = "qcom,pcie-qcs404"; - reg = <0x10000000 0xf1d>, - <0x10000f20 0xa8>, - <0x07780000 0x2000>, - <0x10001000 0x2000>; + reg = <0x10000000 0xf1d>, + <0x10000f20 0xa8>, + <0x07780000 0x2000>, + <0x10001000 0x2000>; reg-names = "dbi", "elbi", "parf", "config"; device_type = "pci"; linux,pci-domain = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sa8540p.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sa8540p.dtsi @@ -207,7 +207,7 @@ linux,pci-domain = <2>; - interrupts = ; + interrupts = ; interrupt-names = "msi"; interrupt-map = <0 0 0 1 &intc 0 0 GIC_SPI 541 IRQ_TYPE_LEVEL_HIGH>, --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc7280-herobrine-audio-rt5682-3mic.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc7280-herobrine-audio-rt5682-3mic.dtsi @@ -13,7 +13,7 @@ compatible = "google,sc7280-herobrine"; model = "sc7280-rt5682-max98360a-3mic"; - audio-routing = "VA DMIC0", "vdd-micb", + audio-routing = "VA DMIC0", "vdd-micb", "VA DMIC1", "vdd-micb", "VA DMIC2", "vdd-micb", "VA DMIC3", "vdd-micb", --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc7280.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc7280.dtsi @@ -2449,7 +2449,7 @@ <&apps_smmu 0x1821 0>, <&apps_smmu 0x1832 0>; - power-domains = <&rpmhpd SC7280_LCX>; + power-domains = <&rpmhpd SC7280_LCX>; power-domain-names = "lcx"; required-opps = <&rpmhpd_opp_nom>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc8180x-pmics.dtsi @@ -74,7 +74,7 @@ #address-cells = <1>; #size-cells = <0>; - pon: power-on@800 { + pon: pon@800 { compatible = "qcom,pm8916-pon"; reg = <0x0800>; pwrkey { @@ -142,9 +142,10 @@ }; pmc8180_gpios: gpio@c000 { - compatible = "qcom,pmc8180-gpio"; + compatible = "qcom,pmc8180-gpio", "qcom,spmi-gpio"; reg = <0xc000>; gpio-controller; + gpio-ranges = <&pmc8180_gpios 0 0 10>; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; @@ -246,7 +247,7 @@ #address-cells = <1>; #size-cells = <0>; - power-on@800 { + pon@800 { compatible = "qcom,pm8916-pon"; reg = <0x0800>; @@ -300,9 +301,10 @@ }; pmc8180c_gpios: gpio@c000 { - compatible = "qcom,pmc8180c-gpio"; + compatible = "qcom,pmc8180c-gpio", "qcom,spmi-gpio"; reg = <0xc000>; gpio-controller; + gpio-ranges = <&pmc8180c_gpios 0 0 12>; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; @@ -313,7 +315,7 @@ compatible = "qcom,pmc8180c", "qcom,spmi-pmic"; reg = <0x5 SPMI_USID>; - pmc8180c_lpg: lpg { + pmc8180c_lpg: pwm { compatible = "qcom,pmc8180c-lpg"; #address-cells = <1>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc8180x.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc8180x.dtsi @@ -64,6 +64,7 @@ L3_0: l3-cache { compatible = "cache"; cache-level = <3>; + cache-unified; }; }; }; @@ -298,7 +299,7 @@ domain-idle-states { CLUSTER_SLEEP_0: cluster-sleep-0 { compatible = "domain-idle-state"; - arm,psci-suspend-param = <0x4100c244>; + arm,psci-suspend-param = <0x4100a344>; entry-latency-us = <3263>; exit-latency-us = <6562>; min-residency-us = <9987>; @@ -2252,7 +2253,7 @@ }; gmu: gmu@2c6a000 { - compatible="qcom,adreno-gmu-680.1", "qcom,adreno-gmu"; + compatible = "qcom,adreno-gmu-680.1", "qcom,adreno-gmu"; reg = <0 0x02c6a000 0 0x30000>, <0 0x0b290000 0 0x10000>, @@ -2541,8 +2542,11 @@ system-cache-controller@9200000 { compatible = "qcom,sc8180x-llcc"; - reg = <0 0x09200000 0 0x50000>, <0 0x09600000 0 0x50000>; - reg-names = "llcc_base", "llcc_broadcast_base"; + reg = <0 0x09200000 0 0x50000>, <0 0x09280000 0 0x50000>, + <0 0x09300000 0 0x50000>, <0 0x09380000 0 0x50000>, + <0 0x09600000 0 0x50000>; + reg-names = "llcc0_base", "llcc1_base", "llcc2_base", + "llcc3_base", "llcc_broadcast_base"; interrupts = ; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc8280xp-crd.dts @@ -167,7 +167,7 @@ regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; - gpio = <&pmc8280_1_gpios 1 GPIO_ACTIVE_HIGH>; + gpio = <&pmc8280_1_gpios 2 GPIO_ACTIVE_HIGH>; enable-active-high; pinctrl-names = "default"; @@ -757,7 +757,7 @@ }; misc_3p3_reg_en: misc-3p3-reg-en-state { - pins = "gpio1"; + pins = "gpio2"; function = "normal"; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc8280xp-lenovo-thinkpad-x13s.dts @@ -12,6 +12,7 @@ #include #include #include +#include #include #include "sc8280xp.dtsi" @@ -78,6 +79,21 @@ }; }; + leds { + compatible = "gpio-leds"; + + led-camera-indicator { + label = "white:camera-indicator"; + function = LED_FUNCTION_INDICATOR; + color = ; + gpios = <&tlmm 28 GPIO_ACTIVE_HIGH>; + linux,default-trigger = "none"; + default-state = "off"; + /* Reuse as a panic indicator until we get a "camera on" trigger */ + panic-indicator; + }; + }; + pmic-glink { compatible = "qcom,sc8280xp-pmic-glink", "qcom,pmic-glink"; @@ -1246,7 +1262,7 @@ }; &tlmm { - gpio-reserved-ranges = <70 2>, <74 6>, <83 4>, <125 2>, <128 2>, <154 7>; + gpio-reserved-ranges = <70 2>, <74 6>, <125 2>, <128 2>, <154 4>; bt_default: bt-default-state { hstp-bt-en-pins { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sc8280xp.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sc8280xp.dtsi @@ -298,6 +298,7 @@ firmware { scm: scm { compatible = "qcom,scm-sc8280xp", "qcom,scm"; + interconnects = <&aggre2_noc MASTER_CRYPTO 0 &mc_virt SLAVE_EBI1 0>; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdm630.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdm630.dtsi @@ -1196,11 +1196,11 @@ spmi_bus: spmi@800f000 { compatible = "qcom,spmi-pmic-arb"; - reg = <0x0800f000 0x1000>, - <0x08400000 0x1000000>, - <0x09400000 0x1000000>, - <0x0a400000 0x220000>, - <0x0800a000 0x3000>; + reg = <0x0800f000 0x1000>, + <0x08400000 0x1000000>, + <0x09400000 0x1000000>, + <0x0a400000 0x220000>, + <0x0800a000 0x3000>; reg-names = "core", "chnls", "obsrvr", "intr", "cnfg"; interrupt-names = "periph_irq"; interrupts = ; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdm845-db845c.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdm845-db845c.dts @@ -101,6 +101,14 @@ }; }; + reserved-memory { + /* Cont splash region set up by the bootloader */ + cont_splash_mem: framebuffer@9d400000 { + reg = <0x0 0x9d400000 0x0 0x2400000>; + no-map; + }; + }; + lt9611_1v8: lt9611-vdd18-regulator { compatible = "regulator-fixed"; regulator-name = "LT9611_1V8"; @@ -506,6 +514,7 @@ }; &mdss { + memory-region = <&cont_splash_mem>; status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdm845-oneplus-enchilada.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdm845-oneplus-enchilada.dts @@ -57,7 +57,7 @@ &sound { model = "OnePlus 6"; - audio-routing = "RX_BIAS", "MCLK", + audio-routing = "RX_BIAS", "MCLK", "AMIC2", "MIC BIAS2", "AMIC3", "MIC BIAS4", "AMIC4", "MIC BIAS1", --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdm845-sony-xperia-tama.dtsi @@ -15,6 +15,15 @@ qcom,msm-id = <321 0x20001>; /* SDM845 v2.1 */ qcom,board-id = <8 0>; + aliases { + serial0 = &uart6; + serial1 = &uart9; + }; + + chosen { + stdout-path = "serial0:115200n8"; + }; + gpio-keys { compatible = "gpio-keys"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdm845.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdm845.dtsi @@ -1207,6 +1207,7 @@ #clock-cells = <1>; #reset-cells = <1>; #power-domain-cells = <1>; + power-domains = <&rpmhpd SDM845_CX>; }; qfprom@784000 { @@ -2613,7 +2614,7 @@ <0 0>, <0 0>, <0 0>, - <0 300000000>; + <75000000 300000000>; status = "disabled"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sdx75.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sdx75.dtsi @@ -484,14 +484,14 @@ tx-pins { pins = "gpio12"; function = "qup_se1_l2_mira"; - drive-strength= <2>; + drive-strength = <2>; bias-disable; }; rx-pins { pins = "gpio13"; function = "qup_se1_l3_mira"; - drive-strength= <2>; + drive-strength = <2>; bias-disable; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm6115.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm6115.dtsi @@ -1052,7 +1052,7 @@ , , ; - dma-channels = <10>; + dma-channels = <10>; dma-channel-mask = <0xf>; iommus = <&apps_smmu 0xf6 0x0>; #dma-cells = <3>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm6125-sony-xperia-seine-pdx201.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm6125-sony-xperia-seine-pdx201.dts @@ -79,7 +79,7 @@ reg = <0x0 0xffc40000 0x0 0xc0000>; record-size = <0x1000>; console-size = <0x40000>; - msg-size = <0x20000 0x20000>; + pmsg-size = <0x20000>; }; cmdline_mem: memory@ffd00000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm6125-xiaomi-laurel-sprout.dts @@ -52,7 +52,7 @@ reg = <0x0 0xffc40000 0x0 0xc0000>; record-size = <0x1000>; console-size = <0x40000>; - msg-size = <0x20000 0x20000>; + pmsg-size = <0x20000>; }; cmdline_mem: memory@ffd00000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm6350.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm6350.dtsi @@ -633,11 +633,6 @@ no-map; }; - pil_gpu_mem: memory@8b715400 { - reg = <0 0x8b715400 0 0x2000>; - no-map; - }; - pil_modem_mem: memory@8b800000 { reg = <0 0x8b800000 0 0xf800000>; no-map; @@ -658,6 +653,11 @@ no-map; }; + pil_gpu_mem: memory@f0d00000 { + reg = <0 0xf0d00000 0 0x1000>; + no-map; + }; + debug_region: memory@ffb00000 { reg = <0 0xffb00000 0 0xc0000>; no-map; @@ -673,7 +673,7 @@ reg = <0 0xffc00000 0 0x100000>; record-size = <0x1000>; console-size = <0x40000>; - msg-size = <0x20000 0x20000>; + pmsg-size = <0x20000>; ecc-size = <16>; no-map; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8150-sony-xperia-kumano.dtsi @@ -222,7 +222,7 @@ reg = <0x0 0xffc00000 0x0 0x100000>; record-size = <0x1000>; console-size = <0x40000>; - msg-size = <0x20000 0x20000>; + pmsg-size = <0x20000>; ecc-size = <16>; no-map; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8150.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8150.dtsi @@ -1231,7 +1231,7 @@ dma-names = "tx", "rx"; pinctrl-names = "default"; pinctrl-0 = <&qup_i2c7_default>; - interrupts = ; + interrupts = ; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -3840,7 +3840,7 @@ }; mdss_dsi0_phy: phy@ae94400 { - compatible = "qcom,dsi-phy-7nm"; + compatible = "qcom,dsi-phy-7nm-8150"; reg = <0 0x0ae94400 0 0x200>, <0 0x0ae94600 0 0x280>, <0 0x0ae94900 0 0x260>; @@ -3914,7 +3914,7 @@ }; mdss_dsi1_phy: phy@ae96400 { - compatible = "qcom,dsi-phy-7nm"; + compatible = "qcom,dsi-phy-7nm-8150"; reg = <0 0x0ae96400 0 0x200>, <0 0x0ae96600 0 0x280>, <0 0x0ae96900 0 0x260>; @@ -3958,7 +3958,7 @@ pdc: interrupt-controller@b220000 { compatible = "qcom,sm8150-pdc", "qcom,pdc"; - reg = <0 0x0b220000 0 0x400>; + reg = <0 0x0b220000 0 0x30000>; qcom,pdc-ranges = <0 480 94>, <94 609 31>, <125 63 1>; #interrupt-cells = <2>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx203.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx203.dts @@ -14,3 +14,236 @@ }; /delete-node/ &vreg_l7f_1p8; + +&pm8009_gpios { + gpio-line-names = "NC", /* GPIO_1 */ + "CAM_PWR_LD_EN", + "WIDEC_PWR_EN", + "NC"; +}; + +&pm8150_gpios { + gpio-line-names = "VOL_DOWN_N", /* GPIO_1 */ + "OPTION_2", + "NC", + "PM_SLP_CLK_IN", + "OPTION_1", + "NC", + "NC", + "SP_ARI_PWR_ALARM", + "NC", + "NC"; /* GPIO_10 */ +}; + +&pm8150b_gpios { + gpio-line-names = "SNAPSHOT_N", /* GPIO_1 */ + "FOCUS_N", + "NC", + "NC", + "RF_LCD_ID_EN", + "NC", + "NC", + "LCD_ID", + "NC", + "WLC_EN_N", /* GPIO_10 */ + "NC", + "RF_ID"; +}; + +&pm8150l_gpios { + gpio-line-names = "NC", /* GPIO_1 */ + "PM3003A_EN", + "NC", + "NC", + "NC", + "AUX2_THERM", + "BB_HP_EN", + "FP_LDO_EN", + "PMX_RESET_N", + "AUX3_THERM", /* GPIO_10 */ + "DTV_PWR_EN", + "PM3003A_MODE"; +}; + +&tlmm { + gpio-line-names = "AP_CTI_IN", /* GPIO_0 */ + "MDM2AP_ERR_FATAL", + "AP_CTI_OUT", + "MDM2AP_STATUS", + "NFC_I2C_SDA", + "NFC_I2C_SCL", + "NFC_EN", + "NFC_CLK_REQ", + "NFC_ESE_PWR_REQ", + "DVDT_WRT_DET_AND", + "SPK_AMP_RESET_N", /* GPIO_10 */ + "SPK_AMP_INT_N", + "APPS_I2C_1_SDA", + "APPS_I2C_1_SCL", + "NC", + "TX_GTR_THRES_IN", + "HST_BT_UART_CTS", + "HST_BT_UART_RFR", + "HST_BT_UART_TX", + "HST_BT_UART_RX", + "HST_WLAN_EN", /* GPIO_20 */ + "HST_BT_EN", + "RGBC_IR_PWR_EN", + "FP_INT_N", + "NC", + "NC", + "NC", + "NC", + "NFC_ESE_SPI_MISO", + "NFC_ESE_SPI_MOSI", + "NFC_ESE_SPI_SCLK", /* GPIO_30 */ + "NFC_ESE_SPI_CS_N", + "WCD_RST_N", + "NC", + "SDM_DEBUG_UART_TX", + "SDM_DEBUG_UART_RX", + "TS_I2C_SDA", + "TS_I2C_SCL", + "TS_INT_N", + "FP_SPI_MISO", /* GPIO_40 */ + "FP_SPI_MOSI", + "FP_SPI_SCLK", + "FP_SPI_CS_N", + "APPS_I2C_0_SDA", + "APPS_I2C_0_SCL", + "DISP_ERR_FG", + "UIM2_DETECT_EN", + "NC", + "NC", + "NC", /* GPIO_50 */ + "NC", + "MDM_UART_CTS", + "MDM_UART_RFR", + "MDM_UART_TX", + "MDM_UART_RX", + "AP2MDM_STATUS", + "AP2MDM_ERR_FATAL", + "MDM_IPC_HS_UART_TX", + "MDM_IPC_HS_UART_RX", + "NC", /* GPIO_60 */ + "NC", + "NC", + "NC", + "NC", + "USB_CC_DIR", + "DISP_VSYNC", + "NC", + "NC", + "CAM_PWR_B_CS", + "NC", /* GPIO_70 */ + "CAM_PWR_A_CS", + "SBU_SW_SEL", + "SBU_SW_OE", + "FP_RESET_N", + "FP_RESET_N", + "DISP_RESET_N", + "DEBUG_GPIO0", + "TRAY_DET", + "CAM2_RST_N", + "PCIE0_RST_N", + "PCIE0_CLK_REQ_N", /* GPIO_80 */ + "PCIE0_WAKE_N", + "DVDT_ENABLE", + "DVDT_WRT_DET_OR", + "NC", + "PCIE2_RST_N", + "PCIE2_CLK_REQ_N", + "PCIE2_WAKE_N", + "MDM_VFR_IRQ0", + "MDM_VFR_IRQ1", + "SW_SERVICE", /* GPIO_90 */ + "CAM_SOF", + "CAM1_RST_N", + "CAM0_RST_N", + "CAM0_MCLK", + "CAM1_MCLK", + "CAM2_MCLK", + "CAM3_MCLK", + "CAM4_MCLK", + "TOF_RST_N", + "NC", /* GPIO_100 */ + "CCI0_I2C_SDA", + "CCI0_I2C_SCL", + "CCI1_I2C_SDA", + "CCI1_I2C_SCL_", + "CCI2_I2C_SDA", + "CCI2_I2C_SCL", + "CCI3_I2C_SDA", + "CCI3_I2C_SCL", + "CAM3_RST_N", + "NFC_DWL_REQ", /* GPIO_110 */ + "NFC_IRQ", + "XVS", + "NC", + "RF_ID_EXTENSION", + "SPK_AMP_I2C_SDA", + "SPK_AMP_I2C_SCL", + "NC", + "NC", + "WLC_I2C_SDA", + "WLC_I2C_SCL", /* GPIO_120 */ + "ACC_COVER_OPEN", + "ALS_PROX_INT_N", + "ACCEL_INT", + "WLAN_SW_CTRL", + "CAMSENSOR_I2C_SDA", + "CAMSENSOR_I2C_SCL", + "UDON_SWITCH_SEL", + "WDOG_DISABLE", + "BAROMETER_INT", + "NC", /* GPIO_130 */ + "NC", + "FORCED_USB_BOOT", + "NC", + "NC", + "WLC_INT_N", + "NC", + "NC", + "RGBC_IR_INT", + "NC", + "NC", /* GPIO_140 */ + "NC", + "BT_SLIMBUS_CLK", + "BT_SLIMBUS_DATA", + "HW_ID_0", + "HW_ID_1", + "WCD_SWR_TX_CLK", + "WCD_SWR_TX_DATA0", + "WCD_SWR_TX_DATA1", + "WCD_SWR_RX_CLK", + "WCD_SWR_RX_DATA0", /* GPIO_150 */ + "WCD_SWR_RX_DATA1", + "SDM_DMIC_CLK1", + "SDM_DMIC_DATA1", + "SDM_DMIC_CLK2", + "SDM_DMIC_DATA2", + "SPK_AMP_I2S_CLK", + "SPK_AMP_I2S_WS", + "SPK_AMP_I2S_ASP_DIN", + "SPK_AMP_I2S_ASP_DOUT", + "COMPASS_I2C_SDA", /* GPIO_160 */ + "COMPASS_I2C_SCL", + "NC", + "NC", + "SSC_SPI_1_MISO", + "SSC_SPI_1_MOSI", + "SSC_SPI_1_CLK", + "SSC_SPI_1_CS_N", + "NC", + "NC", + "SSC_SENSOR_I2C_SDA", /* GPIO_170 */ + "SSC_SENSOR_I2C_SCL", + "NC", + "NC", + "NC", + "NC", + "HST_BLE_SNS_UART6_TX", + "HST_BLE_SNS_UART6_RX", + "HST_WLAN_UART_TX", + "HST_WLAN_UART_RX"; +}; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx206.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo-pdx206.dts @@ -20,6 +20,8 @@ }; &gpio_keys { + pinctrl-0 = <&focus_n &snapshot_n &vol_down_n &g_assist_n>; + g-assist-key { label = "Google Assistant Key"; linux,code = ; @@ -30,6 +32,247 @@ }; }; +&pm8009_gpios { + gpio-line-names = "NC", /* GPIO_1 */ + "NC", + "WIDEC_PWR_EN", + "NC"; +}; + +&pm8150_gpios { + gpio-line-names = "VOL_DOWN_N", /* GPIO_1 */ + "OPTION_2", + "NC", + "PM_SLP_CLK_IN", + "OPTION_1", + "G_ASSIST_N", + "NC", + "SP_ARI_PWR_ALARM", + "NC", + "NC"; /* GPIO_10 */ + + g_assist_n: g-assist-n-state { + pins = "gpio6"; + function = "normal"; + power-source = <1>; + bias-pull-up; + input-enable; + }; +}; + +&pm8150b_gpios { + gpio-line-names = "SNAPSHOT_N", /* GPIO_1 */ + "FOCUS_N", + "NC", + "NC", + "RF_LCD_ID_EN", + "NC", + "NC", + "LCD_ID", + "NC", + "NC", /* GPIO_10 */ + "NC", + "RF_ID"; +}; + +&pm8150l_gpios { + gpio-line-names = "NC", /* GPIO_1 */ + "PM3003A_EN", + "NC", + "NC", + "NC", + "AUX2_THERM", + "BB_HP_EN", + "FP_LDO_EN", + "PMX_RESET_N", + "NC", /* GPIO_10 */ + "NC", + "PM3003A_MODE"; +}; + +&tlmm { + gpio-line-names = "AP_CTI_IN", /* GPIO_0 */ + "MDM2AP_ERR_FATAL", + "AP_CTI_OUT", + "MDM2AP_STATUS", + "NFC_I2C_SDA", + "NFC_I2C_SCL", + "NFC_EN", + "NFC_CLK_REQ", + "NFC_ESE_PWR_REQ", + "DVDT_WRT_DET_AND", + "SPK_AMP_RESET_N", /* GPIO_10 */ + "SPK_AMP_INT_N", + "APPS_I2C_1_SDA", + "APPS_I2C_1_SCL", + "NC", + "TX_GTR_THRES_IN", + "HST_BT_UART_CTS", + "HST_BT_UART_RFR", + "HST_BT_UART_TX", + "HST_BT_UART_RX", + "HST_WLAN_EN", /* GPIO_20 */ + "HST_BT_EN", + "RGBC_IR_PWR_EN", + "FP_INT_N", + "NC", + "NC", + "NC", + "NC", + "NFC_ESE_SPI_MISO", + "NFC_ESE_SPI_MOSI", + "NFC_ESE_SPI_SCLK", /* GPIO_30 */ + "NFC_ESE_SPI_CS_N", + "WCD_RST_N", + "NC", + "SDM_DEBUG_UART_TX", + "SDM_DEBUG_UART_RX", + "TS_I2C_SDA", + "TS_I2C_SCL", + "TS_INT_N", + "FP_SPI_MISO", /* GPIO_40 */ + "FP_SPI_MOSI", + "FP_SPI_SCLK", + "FP_SPI_CS_N", + "APPS_I2C_0_SDA", + "APPS_I2C_0_SCL", + "DISP_ERR_FG", + "UIM2_DETECT_EN", + "NC", + "NC", + "NC", /* GPIO_50 */ + "NC", + "MDM_UART_CTS", + "MDM_UART_RFR", + "MDM_UART_TX", + "MDM_UART_RX", + "AP2MDM_STATUS", + "AP2MDM_ERR_FATAL", + "MDM_IPC_HS_UART_TX", + "MDM_IPC_HS_UART_RX", + "NC", /* GPIO_60 */ + "NC", + "NC", + "NC", + "NC", + "USB_CC_DIR", + "DISP_VSYNC", + "NC", + "NC", + "CAM_PWR_B_CS", + "NC", /* GPIO_70 */ + "FRONTC_PWR_EN", + "SBU_SW_SEL", + "SBU_SW_OE", + "FP_RESET_N", + "FP_RESET_N", + "DISP_RESET_N", + "DEBUG_GPIO0", + "TRAY_DET", + "CAM2_RST_N", + "PCIE0_RST_N", + "PCIE0_CLK_REQ_N", /* GPIO_80 */ + "PCIE0_WAKE_N", + "DVDT_ENABLE", + "DVDT_WRT_DET_OR", + "NC", + "PCIE2_RST_N", + "PCIE2_CLK_REQ_N", + "PCIE2_WAKE_N", + "MDM_VFR_IRQ0", + "MDM_VFR_IRQ1", + "SW_SERVICE", /* GPIO_90 */ + "CAM_SOF", + "CAM1_RST_N", + "CAM0_RST_N", + "CAM0_MCLK", + "CAM1_MCLK", + "CAM2_MCLK", + "CAM3_MCLK", + "NC", + "NC", + "NC", /* GPIO_100 */ + "CCI0_I2C_SDA", + "CCI0_I2C_SCL", + "CCI1_I2C_SDA", + "CCI1_I2C_SCL_", + "CCI2_I2C_SDA", + "CCI2_I2C_SCL", + "CCI3_I2C_SDA", + "CCI3_I2C_SCL", + "CAM3_RST_N", + "NFC_DWL_REQ", /* GPIO_110 */ + "NFC_IRQ", + "XVS", + "NC", + "RF_ID_EXTENSION", + "SPK_AMP_I2C_SDA", + "SPK_AMP_I2C_SCL", + "NC", + "NC", + "NC", + "NC", + "ACC_COVER_OPEN", + "ALS_PROX_INT_N", + "ACCEL_INT", + "WLAN_SW_CTRL", + "CAMSENSOR_I2C_SDA", + "CAMSENSOR_I2C_SCL", + "UDON_SWITCH_SEL", + "WDOG_DISABLE", + "BAROMETER_INT", + "NC", /* GPIO_130 */ + "NC", + "FORCED_USB_BOOT", + "NC", + "NC", + "NC", + "NC", + "NC", + "RGBC_IR_INT", + "NC", + "NC", /* GPIO_140 */ + "NC", + "BT_SLIMBUS_CLK", + "BT_SLIMBUS_DATA", + "HW_ID_0", + "HW_ID_1", + "WCD_SWR_TX_CLK", + "WCD_SWR_TX_DATA0", + "WCD_SWR_TX_DATA1", + "WCD_SWR_RX_CLK", + "WCD_SWR_RX_DATA0", /* GPIO_150 */ + "WCD_SWR_RX_DATA1", + "SDM_DMIC_CLK1", + "SDM_DMIC_DATA1", + "SDM_DMIC_CLK2", + "SDM_DMIC_DATA2", + "SPK_AMP_I2S_CLK", + "SPK_AMP_I2S_WS", + "SPK_AMP_I2S_ASP_DIN", + "SPK_AMP_I2S_ASP_DOUT", + "COMPASS_I2C_SDA", /* GPIO_160 */ + "COMPASS_I2C_SCL", + "NC", + "NC", + "SSC_SPI_1_MISO", + "SSC_SPI_1_MOSI", + "SSC_SPI_1_CLK", + "SSC_SPI_1_CS_N", + "NC", + "NC", + "SSC_SENSOR_I2C_SDA", /* GPIO_170 */ + "SSC_SENSOR_I2C_SCL", + "NC", + "NC", + "NC", + "NC", + "HST_BLE_SNS_UART6_TX", + "HST_BLE_SNS_UART6_RX", + "HST_WLAN_UART_TX", + "HST_WLAN_UART_RX"; +}; + &vreg_l2f_1p3 { regulator-min-microvolt = <1200000>; regulator-max-microvolt = <1200000>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8250-sony-xperia-edo.dtsi @@ -51,12 +51,26 @@ gpio_keys: gpio-keys { compatible = "gpio-keys"; - /* - * Camera focus (light press) and camera snapshot (full press) - * seem not to work properly.. Adding the former one stalls the CPU - * and the latter kills the volume down key for whatever reason. In any - * case, they are both on &pm8150b_gpios: camera focus(2), camera snapshot(1). - */ + pinctrl-0 = <&focus_n &snapshot_n &vol_down_n>; + pinctrl-names = "default"; + + key-camera-focus { + label = "Camera Focus"; + linux,code = ; + gpios = <&pm8150b_gpios 2 GPIO_ACTIVE_LOW>; + debounce-interval = <15>; + linux,can-disable; + wakeup-source; + }; + + key-camera-snapshot { + label = "Camera Snapshot"; + linux,code = ; + gpios = <&pm8150b_gpios 1 GPIO_ACTIVE_LOW>; + debounce-interval = <15>; + linux,can-disable; + wakeup-source; + }; key-vol-down { label = "Volume Down"; @@ -112,7 +126,7 @@ reg = <0x0 0xffc00000 0x0 0x100000>; record-size = <0x1000>; console-size = <0x40000>; - msg-size = <0x20000 0x20000>; + pmsg-size = <0x20000>; ecc-size = <16>; no-map; }; @@ -551,6 +565,34 @@ vdda-pll-supply = <&vreg_l9a_1p2>; }; +&pm8150_gpios { + vol_down_n: vol-down-n-state { + pins = "gpio1"; + function = "normal"; + power-source = <0>; + bias-pull-up; + input-enable; + }; +}; + +&pm8150b_gpios { + snapshot_n: snapshot-n-state { + pins = "gpio1"; + function = "normal"; + power-source = <0>; + bias-pull-up; + input-enable; + }; + + focus_n: focus-n-state { + pins = "gpio2"; + function = "normal"; + power-source = <0>; + bias-pull-up; + input-enable; + }; +}; + &pon_pwrkey { status = "okay"; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8250.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8250.dtsi @@ -100,7 +100,7 @@ clocks = <&cpufreq_hw 0>; enable-method = "psci"; capacity-dmips-mhz = <448>; - dynamic-power-coefficient = <205>; + dynamic-power-coefficient = <105>; next-level-cache = <&L2_0>; power-domains = <&CPU_PD0>; power-domain-names = "psci"; @@ -131,7 +131,7 @@ clocks = <&cpufreq_hw 0>; enable-method = "psci"; capacity-dmips-mhz = <448>; - dynamic-power-coefficient = <205>; + dynamic-power-coefficient = <105>; next-level-cache = <&L2_100>; power-domains = <&CPU_PD1>; power-domain-names = "psci"; @@ -156,7 +156,7 @@ clocks = <&cpufreq_hw 0>; enable-method = "psci"; capacity-dmips-mhz = <448>; - dynamic-power-coefficient = <205>; + dynamic-power-coefficient = <105>; next-level-cache = <&L2_200>; power-domains = <&CPU_PD2>; power-domain-names = "psci"; @@ -181,7 +181,7 @@ clocks = <&cpufreq_hw 0>; enable-method = "psci"; capacity-dmips-mhz = <448>; - dynamic-power-coefficient = <205>; + dynamic-power-coefficient = <105>; next-level-cache = <&L2_300>; power-domains = <&CPU_PD3>; power-domain-names = "psci"; @@ -1905,6 +1905,7 @@ pinctrl-names = "default"; pinctrl-0 = <&pcie0_default_state>; + dma-coherent; status = "disabled"; }; @@ -2011,6 +2012,7 @@ pinctrl-names = "default"; pinctrl-0 = <&pcie1_default_state>; + dma-coherent; status = "disabled"; }; @@ -2119,6 +2121,7 @@ pinctrl-names = "default"; pinctrl-0 = <&pcie2_default_state>; + dma-coherent; status = "disabled"; }; @@ -2726,6 +2729,7 @@ clock-names = "ahb", "bus", "iface"; power-domains = <&gpucc GPU_CX_GDSC>; + dma-coherent; }; slpi: remoteproc@5c00000 { @@ -3059,7 +3063,7 @@ port@7 { reg = <7>; funnel_swao_in_funnel_merg: endpoint { - remote-endpoint= <&funnel_merg_out_funnel_swao>; + remote-endpoint = <&funnel_merg_out_funnel_swao>; }; }; }; @@ -5298,104 +5302,105 @@ reg = <0 0x15000000 0 0x100000>; #iommu-cells = <2>; #global-interrupts = <2>; - interrupts = , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - ; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; + dma-coherent; }; adsp: remoteproc@17300000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8350.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8350.dtsi @@ -48,7 +48,7 @@ CPU0: cpu@0 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a55"; reg = <0x0 0x0>; clocks = <&cpufreq_hw 0>; enable-method = "psci"; @@ -72,7 +72,7 @@ CPU1: cpu@100 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a55"; reg = <0x0 0x100>; clocks = <&cpufreq_hw 0>; enable-method = "psci"; @@ -91,7 +91,7 @@ CPU2: cpu@200 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a55"; reg = <0x0 0x200>; clocks = <&cpufreq_hw 0>; enable-method = "psci"; @@ -110,7 +110,7 @@ CPU3: cpu@300 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a55"; reg = <0x0 0x300>; clocks = <&cpufreq_hw 0>; enable-method = "psci"; @@ -129,7 +129,7 @@ CPU4: cpu@400 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a78"; reg = <0x0 0x400>; clocks = <&cpufreq_hw 1>; enable-method = "psci"; @@ -148,7 +148,7 @@ CPU5: cpu@500 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a78"; reg = <0x0 0x500>; clocks = <&cpufreq_hw 1>; enable-method = "psci"; @@ -167,7 +167,7 @@ CPU6: cpu@600 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-a78"; reg = <0x0 0x600>; clocks = <&cpufreq_hw 1>; enable-method = "psci"; @@ -186,7 +186,7 @@ CPU7: cpu@700 { device_type = "cpu"; - compatible = "qcom,kryo685"; + compatible = "arm,cortex-x1"; reg = <0x0 0x700>; clocks = <&cpufreq_hw 2>; enable-method = "psci"; @@ -246,8 +246,8 @@ compatible = "arm,idle-state"; idle-state-name = "silver-rail-power-collapse"; arm,psci-suspend-param = <0x40000004>; - entry-latency-us = <355>; - exit-latency-us = <909>; + entry-latency-us = <360>; + exit-latency-us = <531>; min-residency-us = <3934>; local-timer-stop; }; @@ -256,8 +256,8 @@ compatible = "arm,idle-state"; idle-state-name = "gold-rail-power-collapse"; arm,psci-suspend-param = <0x40000004>; - entry-latency-us = <241>; - exit-latency-us = <1461>; + entry-latency-us = <702>; + exit-latency-us = <1061>; min-residency-us = <4488>; local-timer-stop; }; @@ -3077,104 +3077,104 @@ reg = <0 0x15000000 0 0x100000>; #iommu-cells = <2>; #global-interrupts = <2>; - interrupts = , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - ; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; }; adsp: remoteproc@17300000 { @@ -3399,6 +3399,13 @@ <0 0x18593000 0 0x1000>; reg-names = "freq-domain0", "freq-domain1", "freq-domain2"; + interrupts = , + , + ; + interrupt-names = "dcvsh-irq-0", + "dcvsh-irq-1", + "dcvsh-irq-2"; + clocks = <&rpmhcc RPMH_CXO_CLK>, <&gcc GCC_GPLL0>; clock-names = "xo", "alternate"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8450-hdk.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8450-hdk.dts @@ -14,7 +14,6 @@ #include "pm8450.dtsi" #include "pmk8350.dtsi" #include "pmr735a.dtsi" -#include "pmr735b.dtsi" / { model = "Qualcomm Technologies, Inc. SM8450 HDK"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8450.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8450.dtsi @@ -3810,103 +3810,103 @@ reg = <0 0x15000000 0 0x100000>; #iommu-cells = <2>; #global-interrupts = <1>; - interrupts = , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - ; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; }; intc: interrupt-controller@17100000 { @@ -4212,7 +4212,7 @@ <&apps_smmu 0x59f 0x0>; }; - crypto: crypto@1de0000 { + crypto: crypto@1dfa000 { compatible = "qcom,sm8450-qce", "qcom,sm8150-qce", "qcom,qce"; reg = <0 0x01dfa000 0 0x6000>; dmas = <&cryptobam 4>, <&cryptobam 5>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8550-mtp.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8550-mtp.dts @@ -186,6 +186,7 @@ vdd-bob1-supply = <&vph_pwr>; vdd-bob2-supply = <&vph_pwr>; + vdd-l1-l4-l10-supply = <&vreg_s6g_1p8>; vdd-l2-l13-l14-supply = <&vreg_bob1>; vdd-l3-supply = <&vreg_s4g_1p3>; vdd-l5-l16-supply = <&vreg_bob1>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/qcom/sm8550.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/qcom/sm8550.dtsi @@ -1600,7 +1600,7 @@ pinctrl-0 = <&qup_uart7_default>; interrupts = ; interconnect-names = "qup-core", "qup-config"; - interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>, + interconnects = <&clk_virt MASTER_QUP_CORE_1 0 &clk_virt SLAVE_QUP_CORE_1 0>, <&gem_noc MASTER_APPSS_PROC 0 &config_noc SLAVE_QUP_1 0>; status = "disabled"; }; @@ -3517,103 +3517,103 @@ reg = <0 0x15000000 0 0x100000>; #iommu-cells = <2>; #global-interrupts = <1>; - interrupts = , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - , - ; + interrupts = , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + , + ; }; intc: interrupt-controller@17100000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/renesas/rzg2l-smarc-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/renesas/rzg2l-smarc-som.dtsi @@ -100,7 +100,7 @@ rxc-skew-psec = <2400>; txc-skew-psec = <2400>; rxdv-skew-psec = <0>; - txdv-skew-psec = <0>; + txen-skew-psec = <0>; rxd0-skew-psec = <0>; rxd1-skew-psec = <0>; rxd2-skew-psec = <0>; @@ -128,7 +128,7 @@ rxc-skew-psec = <2400>; txc-skew-psec = <2400>; rxdv-skew-psec = <0>; - txdv-skew-psec = <0>; + txen-skew-psec = <0>; rxd0-skew-psec = <0>; rxd1-skew-psec = <0>; rxd2-skew-psec = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/renesas/rzg2lc-smarc-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/renesas/rzg2lc-smarc-som.dtsi @@ -77,7 +77,7 @@ rxc-skew-psec = <2400>; txc-skew-psec = <2400>; rxdv-skew-psec = <0>; - txdv-skew-psec = <0>; + txen-skew-psec = <0>; rxd0-skew-psec = <0>; rxd1-skew-psec = <0>; rxd2-skew-psec = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/renesas/rzg2ul-smarc-som.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/renesas/rzg2ul-smarc-som.dtsi @@ -83,7 +83,7 @@ rxc-skew-psec = <2400>; txc-skew-psec = <2400>; rxdv-skew-psec = <0>; - txdv-skew-psec = <0>; + txen-skew-psec = <0>; rxd0-skew-psec = <0>; rxd1-skew-psec = <0>; rxd2-skew-psec = <0>; @@ -112,7 +112,7 @@ rxc-skew-psec = <2400>; txc-skew-psec = <2400>; rxdv-skew-psec = <0>; - txdv-skew-psec = <0>; + txen-skew-psec = <0>; rxd0-skew-psec = <0>; rxd1-skew-psec = <0>; rxd2-skew-psec = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/rockchip/rk3568-radxa-e25.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/rockchip/rk3568-radxa-e25.dts @@ -47,6 +47,9 @@ vin-supply = <&vcc5v0_sys>; }; + /* actually fed by vcc5v0_sys, dependent + * on pi6c clock generator + */ vcc3v3_minipcie: vcc3v3-minipcie-regulator { compatible = "regulator-fixed"; enable-active-high; @@ -54,9 +57,9 @@ pinctrl-names = "default"; pinctrl-0 = <&minipcie_enable_h>; regulator-name = "vcc3v3_minipcie"; - regulator-min-microvolt = <5000000>; - regulator-max-microvolt = <5000000>; - vin-supply = <&vcc5v0_sys>; + regulator-min-microvolt = <3300000>; + regulator-max-microvolt = <3300000>; + vin-supply = <&vcc3v3_pi6c_05>; }; vcc3v3_ngff: vcc3v3-ngff-regulator { @@ -71,9 +74,6 @@ vin-supply = <&vcc5v0_sys>; }; - /* actually fed by vcc5v0_sys, dependent - * on pi6c clock generator - */ vcc3v3_pcie30x1: vcc3v3-pcie30x1-regulator { compatible = "regulator-fixed"; enable-active-high; @@ -83,7 +83,7 @@ regulator-name = "vcc3v3_pcie30x1"; regulator-min-microvolt = <3300000>; regulator-max-microvolt = <3300000>; - vin-supply = <&vcc3v3_pi6c_05>; + vin-supply = <&vcc5v0_sys>; }; vcc3v3_pi6c_05: vcc3v3-pi6c-05-regulator { @@ -99,6 +99,10 @@ }; }; +&combphy1 { + phy-supply = <&vcc3v3_pcie30x1>; +}; + &pcie2x1 { pinctrl-names = "default"; pinctrl-0 = <&pcie20_reset_h>; @@ -117,7 +121,7 @@ pinctrl-names = "default"; pinctrl-0 = <&pcie30x1m0_pins>; reset-gpios = <&gpio0 RK_PC3 GPIO_ACTIVE_HIGH>; - vpcie3v3-supply = <&vcc3v3_pcie30x1>; + vpcie3v3-supply = <&vcc3v3_minipcie>; status = "okay"; }; @@ -178,6 +182,10 @@ status = "okay"; }; +&sata1 { + status = "okay"; +}; + &sdmmc0 { bus-width = <4>; cap-sd-highspeed; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-am62x-sk-common.dtsi @@ -300,7 +300,7 @@ status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&main_i2c1_pins_default>; - clock-frequency = <400000>; + clock-frequency = <100000>; tlv320aic3106: audio-codec@1b { #sound-dai-cells = <0>; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-j721s2-common-proc-board.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-j721s2-common-proc-board.dts @@ -249,18 +249,19 @@ J721S2_WKUP_IOPAD(0x108, PIN_INPUT, 0) /* (N27) MCU_ADC1_AIN7 */ >; }; +}; +&wkup_pmx1 { mcu_fss0_ospi1_pins_default: mcu-fss0-ospi1-default-pins { pinctrl-single,pins = < - J721S2_WKUP_IOPAD(0x040, PIN_OUTPUT, 0) /* (A19) MCU_OSPI1_CLK */ - J721S2_WKUP_IOPAD(0x05c, PIN_OUTPUT, 0) /* (D20) MCU_OSPI1_CSn0 */ - J721S2_WKUP_IOPAD(0x060, PIN_OUTPUT, 0) /* (C21) MCU_OSPI1_CSn1 */ - J721S2_WKUP_IOPAD(0x04c, PIN_INPUT, 0) /* (D21) MCU_OSPI1_D0 */ - J721S2_WKUP_IOPAD(0x050, PIN_INPUT, 0) /* (G20) MCU_OSPI1_D1 */ - J721S2_WKUP_IOPAD(0x054, PIN_INPUT, 0) /* (C20) MCU_OSPI1_D2 */ - J721S2_WKUP_IOPAD(0x058, PIN_INPUT, 0) /* (A20) MCU_OSPI1_D3 */ - J721S2_WKUP_IOPAD(0x048, PIN_INPUT, 0) /* (B19) MCU_OSPI1_DQS */ - J721S2_WKUP_IOPAD(0x044, PIN_INPUT, 0) /* (B20) MCU_OSPI1_LBCLKO */ + J721S2_WKUP_IOPAD(0x008, PIN_OUTPUT, 0) /* (A19) MCU_OSPI1_CLK */ + J721S2_WKUP_IOPAD(0x024, PIN_OUTPUT, 0) /* (D20) MCU_OSPI1_CSn0 */ + J721S2_WKUP_IOPAD(0x014, PIN_INPUT, 0) /* (D21) MCU_OSPI1_D0 */ + J721S2_WKUP_IOPAD(0x018, PIN_INPUT, 0) /* (G20) MCU_OSPI1_D1 */ + J721S2_WKUP_IOPAD(0x01c, PIN_INPUT, 0) /* (C20) MCU_OSPI1_D2 */ + J721S2_WKUP_IOPAD(0x020, PIN_INPUT, 0) /* (A20) MCU_OSPI1_D3 */ + J721S2_WKUP_IOPAD(0x010, PIN_INPUT, 0) /* (B19) MCU_OSPI1_DQS */ + J721S2_WKUP_IOPAD(0x00c, PIN_INPUT, 0) /* (B20) MCU_OSPI1_LBCLKO */ >; }; }; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-j721s2-som-p0.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-j721s2-som-p0.dtsi @@ -44,9 +44,6 @@ pinctrl-single,pins = < J721S2_WKUP_IOPAD(0x000, PIN_OUTPUT, 0) /* (D19) MCU_OSPI0_CLK */ J721S2_WKUP_IOPAD(0x02c, PIN_OUTPUT, 0) /* (F15) MCU_OSPI0_CSn0 */ - J721S2_WKUP_IOPAD(0x030, PIN_OUTPUT, 0) /* (G17) MCU_OSPI0_CSn1 */ - J721S2_WKUP_IOPAD(0x038, PIN_OUTPUT, 0) /* (F14) MCU_OSPI0_CSn2 */ - J721S2_WKUP_IOPAD(0x03c, PIN_OUTPUT, 0) /* (F17) MCU_OSPI0_CSn3 */ J721S2_WKUP_IOPAD(0x00c, PIN_INPUT, 0) /* (C19) MCU_OSPI0_D0 */ J721S2_WKUP_IOPAD(0x010, PIN_INPUT, 0) /* (F16) MCU_OSPI0_D1 */ J721S2_WKUP_IOPAD(0x014, PIN_INPUT, 0) /* (G15) MCU_OSPI0_D2 */ --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-j784s4-evm.dts @@ -340,27 +340,27 @@ mcu_adc0_pins_default: mcu-adc0-default-pins { pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x134, PIN_INPUT, 0) /* (P36) MCU_ADC0_AIN0 */ - J784S4_WKUP_IOPAD(0x138, PIN_INPUT, 0) /* (V36) MCU_ADC0_AIN1 */ - J784S4_WKUP_IOPAD(0x13c, PIN_INPUT, 0) /* (T34) MCU_ADC0_AIN2 */ - J784S4_WKUP_IOPAD(0x140, PIN_INPUT, 0) /* (T36) MCU_ADC0_AIN3 */ - J784S4_WKUP_IOPAD(0x144, PIN_INPUT, 0) /* (P34) MCU_ADC0_AIN4 */ - J784S4_WKUP_IOPAD(0x148, PIN_INPUT, 0) /* (R37) MCU_ADC0_AIN5 */ - J784S4_WKUP_IOPAD(0x14c, PIN_INPUT, 0) /* (R33) MCU_ADC0_AIN6 */ - J784S4_WKUP_IOPAD(0x150, PIN_INPUT, 0) /* (V38) MCU_ADC0_AIN7 */ + J784S4_WKUP_IOPAD(0x0cc, PIN_INPUT, 0) /* (P36) MCU_ADC0_AIN0 */ + J784S4_WKUP_IOPAD(0x0d0, PIN_INPUT, 0) /* (V36) MCU_ADC0_AIN1 */ + J784S4_WKUP_IOPAD(0x0d4, PIN_INPUT, 0) /* (T34) MCU_ADC0_AIN2 */ + J784S4_WKUP_IOPAD(0x0d8, PIN_INPUT, 0) /* (T36) MCU_ADC0_AIN3 */ + J784S4_WKUP_IOPAD(0x0dc, PIN_INPUT, 0) /* (P34) MCU_ADC0_AIN4 */ + J784S4_WKUP_IOPAD(0x0e0, PIN_INPUT, 0) /* (R37) MCU_ADC0_AIN5 */ + J784S4_WKUP_IOPAD(0x0e4, PIN_INPUT, 0) /* (R33) MCU_ADC0_AIN6 */ + J784S4_WKUP_IOPAD(0x0e8, PIN_INPUT, 0) /* (V38) MCU_ADC0_AIN7 */ >; }; mcu_adc1_pins_default: mcu-adc1-default-pins { pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x154, PIN_INPUT, 0) /* (Y38) MCU_ADC1_AIN0 */ - J784S4_WKUP_IOPAD(0x158, PIN_INPUT, 0) /* (Y34) MCU_ADC1_AIN1 */ - J784S4_WKUP_IOPAD(0x15c, PIN_INPUT, 0) /* (V34) MCU_ADC1_AIN2 */ - J784S4_WKUP_IOPAD(0x160, PIN_INPUT, 0) /* (W37) MCU_ADC1_AIN3 */ - J784S4_WKUP_IOPAD(0x164, PIN_INPUT, 0) /* (AA37) MCU_ADC1_AIN4 */ - J784S4_WKUP_IOPAD(0x168, PIN_INPUT, 0) /* (W33) MCU_ADC1_AIN5 */ - J784S4_WKUP_IOPAD(0x16c, PIN_INPUT, 0) /* (U33) MCU_ADC1_AIN6 */ - J784S4_WKUP_IOPAD(0x170, PIN_INPUT, 0) /* (Y36) MCU_ADC1_AIN7 */ + J784S4_WKUP_IOPAD(0x0ec, PIN_INPUT, 0) /* (Y38) MCU_ADC1_AIN0 */ + J784S4_WKUP_IOPAD(0x0f0, PIN_INPUT, 0) /* (Y34) MCU_ADC1_AIN1 */ + J784S4_WKUP_IOPAD(0x0f4, PIN_INPUT, 0) /* (V34) MCU_ADC1_AIN2 */ + J784S4_WKUP_IOPAD(0x0f8, PIN_INPUT, 0) /* (W37) MCU_ADC1_AIN3 */ + J784S4_WKUP_IOPAD(0x0fc, PIN_INPUT, 0) /* (AA37) MCU_ADC1_AIN4 */ + J784S4_WKUP_IOPAD(0x100, PIN_INPUT, 0) /* (W33) MCU_ADC1_AIN5 */ + J784S4_WKUP_IOPAD(0x104, PIN_INPUT, 0) /* (U33) MCU_ADC1_AIN6 */ + J784S4_WKUP_IOPAD(0x108, PIN_INPUT, 0) /* (Y36) MCU_ADC1_AIN7 */ >; }; }; @@ -379,21 +379,28 @@ J784S4_WKUP_IOPAD(0x024, PIN_INPUT, 0) /* (E34) MCU_OSPI0_D6 */ J784S4_WKUP_IOPAD(0x028, PIN_INPUT, 0) /* (E33) MCU_OSPI0_D7 */ J784S4_WKUP_IOPAD(0x008, PIN_INPUT, 0) /* (C34) MCU_OSPI0_DQS */ - J784S4_WKUP_IOPAD(0x03c, PIN_OUTPUT, 6) /* (C32) MCU_OSPI0_CSn3.MCU_OSPI0_ECC_FAIL */ - J784S4_WKUP_IOPAD(0x038, PIN_OUTPUT, 6) /* (B34) MCU_OSPI0_CSn2.MCU_OSPI0_RESET_OUT0 */ + >; + }; +}; + +&wkup_pmx1 { + mcu_fss0_ospi0_1_pins_default: mcu-fss0-ospi0-1-default-pins { + pinctrl-single,pins = < + J784S4_WKUP_IOPAD(0x004, PIN_OUTPUT, 6) /* (C32) MCU_OSPI0_ECC_FAIL */ + J784S4_WKUP_IOPAD(0x000, PIN_OUTPUT, 6) /* (B34) MCU_OSPI0_RESET_OUT0 */ >; }; mcu_fss0_ospi1_pins_default: mcu-fss0-ospi1-default-pins { pinctrl-single,pins = < - J784S4_WKUP_IOPAD(0x040, PIN_OUTPUT, 0) /* (F32) MCU_OSPI1_CLK */ - J784S4_WKUP_IOPAD(0x05c, PIN_OUTPUT, 0) /* (G32) MCU_OSPI1_CSn0 */ - J784S4_WKUP_IOPAD(0x04c, PIN_INPUT, 0) /* (E35) MCU_OSPI1_D0 */ - J784S4_WKUP_IOPAD(0x050, PIN_INPUT, 0) /* (D31) MCU_OSPI1_D1 */ - J784S4_WKUP_IOPAD(0x054, PIN_INPUT, 0) /* (G31) MCU_OSPI1_D2 */ - J784S4_WKUP_IOPAD(0x058, PIN_INPUT, 0) /* (F33) MCU_OSPI1_D3 */ - J784S4_WKUP_IOPAD(0x048, PIN_INPUT, 0) /* (F31) MCU_OSPI1_DQS */ - J784S4_WKUP_IOPAD(0x044, PIN_INPUT, 0) /* (C31) MCU_OSPI1_LBCLKO */ + J784S4_WKUP_IOPAD(0x008, PIN_OUTPUT, 0) /* (F32) MCU_OSPI1_CLK */ + J784S4_WKUP_IOPAD(0x024, PIN_OUTPUT, 0) /* (G32) MCU_OSPI1_CSn0 */ + J784S4_WKUP_IOPAD(0x014, PIN_INPUT, 0) /* (E35) MCU_OSPI1_D0 */ + J784S4_WKUP_IOPAD(0x018, PIN_INPUT, 0) /* (D31) MCU_OSPI1_D1 */ + J784S4_WKUP_IOPAD(0x01C, PIN_INPUT, 0) /* (G31) MCU_OSPI1_D2 */ + J784S4_WKUP_IOPAD(0x020, PIN_INPUT, 0) /* (F33) MCU_OSPI1_D3 */ + J784S4_WKUP_IOPAD(0x010, PIN_INPUT, 0) /* (F31) MCU_OSPI1_DQS */ + J784S4_WKUP_IOPAD(0x00C, PIN_INPUT, 0) /* (C31) MCU_OSPI1_LBCLKO */ >; }; }; @@ -437,7 +444,7 @@ &ospi0 { status = "okay"; pinctrl-names = "default"; - pinctrl-0 = <&mcu_fss0_ospi0_pins_default>; + pinctrl-0 = <&mcu_fss0_ospi0_pins_default>, <&mcu_fss0_ospi0_1_pins_default>; flash@0 { compatible = "jedec,spi-nor"; --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-j784s4-main.dtsi @@ -60,7 +60,7 @@ #interrupt-cells = <1>; ti,sci = <&sms>; ti,sci-dev-id = <10>; - ti,interrupt-ranges = <8 360 56>; + ti,interrupt-ranges = <8 392 56>; }; main_pmx0: pinctrl@11c000 { --- linux-intel-opt-6.5.0.orig/arch/arm64/boot/dts/ti/k3-j784s4-mcu-wakeup.dtsi +++ linux-intel-opt-6.5.0/arch/arm64/boot/dts/ti/k3-j784s4-mcu-wakeup.dtsi @@ -107,7 +107,7 @@ #interrupt-cells = <1>; ti,sci = <&sms>; ti,sci-dev-id = <177>; - ti,interrupt-ranges = <16 928 16>; + ti,interrupt-ranges = <16 960 16>; }; /* MCU_TIMERIO pad input CTRLMMR_MCU_TIMER*_CTRL registers */ --- linux-intel-opt-6.5.0.orig/arch/arm64/configs/defconfig +++ linux-intel-opt-6.5.0/arch/arm64/configs/defconfig @@ -1129,7 +1129,6 @@ CONFIG_XEN_GRANT_DEV_ALLOC=y CONFIG_STAGING=y CONFIG_STAGING_MEDIA=y -CONFIG_VIDEO_IMX_MEDIA=m CONFIG_VIDEO_MAX96712=m CONFIG_CHROME_PLATFORMS=y CONFIG_CROS_EC=y @@ -1146,7 +1145,6 @@ CONFIG_COMMON_CLK_PWM=y CONFIG_COMMON_CLK_RS9_PCIE=y CONFIG_COMMON_CLK_VC5=y -CONFIG_COMMON_CLK_NPCM8XX=y CONFIG_COMMON_CLK_BD718XX=m CONFIG_CLK_RASPBERRYPI=m CONFIG_CLK_IMX8MM=y @@ -1182,6 +1180,7 @@ CONFIG_IPQ_GCC_9574=y CONFIG_MSM_GCC_8916=y CONFIG_MSM_GCC_8994=y +CONFIG_MSM_GCC_8996=y CONFIG_MSM_MMCC_8994=m CONFIG_MSM_MMCC_8996=m CONFIG_MSM_MMCC_8998=m --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/acpi.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/acpi.h @@ -9,6 +9,7 @@ #ifndef _ASM_ACPI_H #define _ASM_ACPI_H +#include #include #include #include @@ -42,6 +43,25 @@ #define ACPI_MADT_GICC_SPE (offsetof(struct acpi_madt_generic_interrupt, \ spe_interrupt) + sizeof(u16)) +/* + * Arm® Functional Fixed Hardware Specification Version 1.2. + * Table 2: Arm Architecture context loss flags + */ +#define CPUIDLE_CORE_CTXT BIT(0) /* Core context Lost */ + +static inline unsigned int arch_get_idle_state_flags(u32 arch_flags) +{ + if (arch_flags & CPUIDLE_CORE_CTXT) + return CPUIDLE_FLAG_TIMER_STOP; + + return 0; +} +#define arch_get_idle_state_flags arch_get_idle_state_flags + +#define CPUIDLE_TRACE_CTXT BIT(1) /* Trace context loss */ +#define CPUIDLE_GICR_CTXT BIT(2) /* GICR */ +#define CPUIDLE_GICD_CTXT BIT(3) /* GICD */ + /* Basic configuration for ACPI */ #ifdef CONFIG_ACPI pgprot_t __acpi_get_mem_attribute(phys_addr_t addr); --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/cpufeature.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/cpufeature.h @@ -663,7 +663,7 @@ isar2 = read_sanitised_ftr_reg(SYS_ID_AA64ISAR2_EL1); return cpuid_feature_extract_unsigned_field(isar2, - ID_AA64ISAR2_EL1_BC_SHIFT); + ID_AA64ISAR2_EL1_CLRBHB_SHIFT); } const struct cpumask *system_32bit_el0_cpumask(void); --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/cputype.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/cputype.h @@ -79,6 +79,7 @@ #define ARM_CPU_PART_CORTEX_A78AE 0xD42 #define ARM_CPU_PART_CORTEX_X1 0xD44 #define ARM_CPU_PART_CORTEX_A510 0xD46 +#define ARM_CPU_PART_CORTEX_A520 0xD80 #define ARM_CPU_PART_CORTEX_A710 0xD47 #define ARM_CPU_PART_CORTEX_A715 0xD4D #define ARM_CPU_PART_CORTEX_X2 0xD48 @@ -148,6 +149,7 @@ #define MIDR_CORTEX_A78AE MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A78AE) #define MIDR_CORTEX_X1 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_X1) #define MIDR_CORTEX_A510 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A510) +#define MIDR_CORTEX_A520 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A520) #define MIDR_CORTEX_A710 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A710) #define MIDR_CORTEX_A715 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_A715) #define MIDR_CORTEX_X2 MIDR_CPU_MODEL(ARM_CPU_IMP_ARM, ARM_CPU_PART_CORTEX_X2) --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/hwcap.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/hwcap.h @@ -138,6 +138,7 @@ #define KERNEL_HWCAP_SME_B16B16 __khwcap2_feature(SME_B16B16) #define KERNEL_HWCAP_SME_F16F16 __khwcap2_feature(SME_F16F16) #define KERNEL_HWCAP_MOPS __khwcap2_feature(MOPS) +#define KERNEL_HWCAP_HBC __khwcap2_feature(HBC) /* * This yields a mask that user programs can use to figure out what --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/kvm_host.h @@ -914,8 +914,6 @@ int __kvm_arm_vcpu_set_events(struct kvm_vcpu *vcpu, struct kvm_vcpu_events *events); -#define KVM_ARCH_WANT_MMU_NOTIFIER - void kvm_arm_halt_guest(struct kvm *kvm); void kvm_arm_resume_guest(struct kvm *kvm); --- linux-intel-opt-6.5.0.orig/arch/arm64/include/asm/sdei.h +++ linux-intel-opt-6.5.0/arch/arm64/include/asm/sdei.h @@ -17,6 +17,9 @@ #include +DECLARE_PER_CPU(struct sdei_registered_event *, sdei_active_normal_event); +DECLARE_PER_CPU(struct sdei_registered_event *, sdei_active_critical_event); + extern unsigned long sdei_exit_mode; /* Software Delegated Exception entry point from firmware*/ @@ -29,6 +32,9 @@ unsigned long pc, unsigned long pstate); +/* Abort a running handler. Context is discarded. */ +void __sdei_handler_abort(void); + /* * The above entry point does the minimum to call C code. This function does * anything else, before calling the driver. --- linux-intel-opt-6.5.0.orig/arch/arm64/include/uapi/asm/hwcap.h +++ linux-intel-opt-6.5.0/arch/arm64/include/uapi/asm/hwcap.h @@ -103,5 +103,6 @@ #define HWCAP2_SME_B16B16 (1UL << 41) #define HWCAP2_SME_F16F16 (1UL << 42) #define HWCAP2_MOPS (1UL << 43) +#define HWCAP2_HBC (1UL << 44) #endif /* _UAPI__ASM_HWCAP_H */ --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/cpu_errata.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/cpu_errata.c @@ -730,6 +730,14 @@ .cpu_enable = cpu_clear_bf16_from_user_emulation, }, #endif +#ifdef CONFIG_ARM64_ERRATUM_2966298 + { + .desc = "ARM erratum 2966298", + .capability = ARM64_WORKAROUND_2966298, + /* Cortex-A520 r0p0 - r0p1 */ + ERRATA_MIDR_REV_RANGE(MIDR_CORTEX_A520, 0, 0, 1), + }, +#endif #ifdef CONFIG_AMPERE_ERRATUM_AC03_CPU_38 { .desc = "AmpereOne erratum AC03_CPU_38", --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/cpufeature.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/cpufeature.c @@ -222,7 +222,8 @@ static const struct arm64_ftr_bits ftr_id_aa64isar2[] = { ARM64_FTR_BITS(FTR_VISIBLE, FTR_NONSTRICT, FTR_LOWER_SAFE, ID_AA64ISAR2_EL1_CSSC_SHIFT, 4, 0), ARM64_FTR_BITS(FTR_VISIBLE, FTR_NONSTRICT, FTR_LOWER_SAFE, ID_AA64ISAR2_EL1_RPRFM_SHIFT, 4, 0), - ARM64_FTR_BITS(FTR_HIDDEN, FTR_STRICT, FTR_HIGHER_SAFE, ID_AA64ISAR2_EL1_BC_SHIFT, 4, 0), + ARM64_FTR_BITS(FTR_HIDDEN, FTR_STRICT, FTR_LOWER_SAFE, ID_AA64ISAR2_EL1_CLRBHB_SHIFT, 4, 0), + ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, ID_AA64ISAR2_EL1_BC_SHIFT, 4, 0), ARM64_FTR_BITS(FTR_VISIBLE, FTR_STRICT, FTR_LOWER_SAFE, ID_AA64ISAR2_EL1_MOPS_SHIFT, 4, 0), ARM64_FTR_BITS(FTR_VISIBLE_IF_IS_ENABLED(CONFIG_ARM64_PTR_AUTH), FTR_STRICT, FTR_EXACT, ID_AA64ISAR2_EL1_APA3_SHIFT, 4, 0), @@ -2844,6 +2845,7 @@ HWCAP_CAP(ID_AA64ISAR2_EL1, RPRES, IMP, CAP_HWCAP, KERNEL_HWCAP_RPRES), HWCAP_CAP(ID_AA64ISAR2_EL1, WFxT, IMP, CAP_HWCAP, KERNEL_HWCAP_WFXT), HWCAP_CAP(ID_AA64ISAR2_EL1, MOPS, IMP, CAP_HWCAP, KERNEL_HWCAP_MOPS), + HWCAP_CAP(ID_AA64ISAR2_EL1, BC, IMP, CAP_HWCAP, KERNEL_HWCAP_HBC), #ifdef CONFIG_ARM64_SME HWCAP_CAP(ID_AA64PFR1_EL1, SME, IMP, CAP_HWCAP, KERNEL_HWCAP_SME), HWCAP_CAP(ID_AA64SMFR0_EL1, FA64, IMP, CAP_HWCAP, KERNEL_HWCAP_SME_FA64), --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/cpuinfo.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/cpuinfo.c @@ -126,6 +126,7 @@ [KERNEL_HWCAP_SME_B16B16] = "smeb16b16", [KERNEL_HWCAP_SME_F16F16] = "smef16f16", [KERNEL_HWCAP_MOPS] = "mops", + [KERNEL_HWCAP_HBC] = "hbc", }; #ifdef CONFIG_COMPAT --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/entry.S +++ linux-intel-opt-6.5.0/arch/arm64/kernel/entry.S @@ -428,6 +428,10 @@ ldp x28, x29, [sp, #16 * 14] .if \el == 0 +alternative_if ARM64_WORKAROUND_2966298 + tlbi vale1, xzr + dsb nsh +alternative_else_nop_endif alternative_if_not ARM64_UNMAP_KERNEL_AT_EL0 ldr lr, [sp, #S_LR] add sp, sp, #PT_REGS_SIZE // restore sp @@ -986,9 +990,13 @@ mov x19, x1 -#if defined(CONFIG_VMAP_STACK) || defined(CONFIG_SHADOW_CALL_STACK) + /* Store the registered-event for crash_smp_send_stop() */ ldrb w4, [x19, #SDEI_EVENT_PRIORITY] -#endif + cbnz w4, 1f + adr_this_cpu dst=x5, sym=sdei_active_normal_event, tmp=x6 + b 2f +1: adr_this_cpu dst=x5, sym=sdei_active_critical_event, tmp=x6 +2: str x19, [x5] #ifdef CONFIG_VMAP_STACK /* @@ -1055,6 +1063,14 @@ ldr_l x2, sdei_exit_mode + /* Clear the registered-event seen by crash_smp_send_stop() */ + ldrb w3, [x4, #SDEI_EVENT_PRIORITY] + cbnz w3, 1f + adr_this_cpu dst=x5, sym=sdei_active_normal_event, tmp=x6 + b 2f +1: adr_this_cpu dst=x5, sym=sdei_active_critical_event, tmp=x6 +2: str xzr, [x5] + alternative_if_not ARM64_UNMAP_KERNEL_AT_EL0 sdei_handler_exit exit_mode=x2 alternative_else_nop_endif @@ -1065,4 +1081,15 @@ #endif SYM_CODE_END(__sdei_asm_handler) NOKPROBE(__sdei_asm_handler) + +SYM_CODE_START(__sdei_handler_abort) + mov_q x0, SDEI_1_0_FN_SDEI_EVENT_COMPLETE_AND_RESUME + adr x1, 1f + ldr_l x2, sdei_exit_mode + sdei_handler_exit exit_mode=x2 + // exit the handler and jump to the next instruction. + // Exit will stomp x0-x17, PSTATE, ELR_ELx, and SPSR_ELx. +1: ret +SYM_CODE_END(__sdei_handler_abort) +NOKPROBE(__sdei_handler_abort) #endif /* CONFIG_ARM_SDE_INTERFACE */ --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/fpsimd.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/fpsimd.c @@ -1179,9 +1179,6 @@ */ u64 read_zcr_features(void) { - u64 zcr; - unsigned int vq_max; - /* * Set the maximum possible VL, and write zeroes to all other * bits to see if they stick. @@ -1189,12 +1186,8 @@ sve_kernel_enable(NULL); write_sysreg_s(ZCR_ELx_LEN_MASK, SYS_ZCR_EL1); - zcr = read_sysreg_s(SYS_ZCR_EL1); - zcr &= ~(u64)ZCR_ELx_LEN_MASK; /* find sticky 1s outside LEN field */ - vq_max = sve_vq_from_vl(sve_get_vl()); - zcr |= vq_max - 1; /* set LEN field to maximum effective value */ - - return zcr; + /* Return LEN value that would be written to get the maximum VL */ + return sve_vq_from_vl(sve_get_vl()) - 1; } void __init sve_setup(void) @@ -1349,9 +1342,6 @@ */ u64 read_smcr_features(void) { - u64 smcr; - unsigned int vq_max; - sme_kernel_enable(NULL); /* @@ -1360,12 +1350,8 @@ write_sysreg_s(read_sysreg_s(SYS_SMCR_EL1) | SMCR_ELx_LEN_MASK, SYS_SMCR_EL1); - smcr = read_sysreg_s(SYS_SMCR_EL1); - smcr &= ~(u64)SMCR_ELx_LEN_MASK; /* Only the LEN field */ - vq_max = sve_vq_from_vl(sme_get_vl()); - smcr |= vq_max - 1; /* set LEN field to maximum effective value */ - - return smcr; + /* Return LEN value that would be written to get the maximum VL */ + return sve_vq_from_vl(sme_get_vl()) - 1; } void __init sme_setup(void) @@ -1931,7 +1917,7 @@ /* Invalidate any task state remaining in the fpsimd regs: */ fpsimd_flush_cpu_state(); } -EXPORT_SYMBOL_GPL(kernel_neon_begin); +EXPORT_SYMBOL(kernel_neon_begin); /* * kernel_neon_end(): give the CPU FPSIMD registers back to the current task @@ -1949,7 +1935,7 @@ put_cpu_fpsimd_context(); } -EXPORT_SYMBOL_GPL(kernel_neon_end); +EXPORT_SYMBOL(kernel_neon_end); #ifdef CONFIG_EFI --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/hw_breakpoint.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/hw_breakpoint.c @@ -654,7 +654,7 @@ perf_bp_event(bp, regs); /* Do we need to handle the stepping? */ - if (is_default_overflow_handler(bp)) + if (uses_default_overflow_handler(bp)) step = 1; unlock: rcu_read_unlock(); @@ -733,7 +733,7 @@ static int watchpoint_report(struct perf_event *wp, unsigned long addr, struct pt_regs *regs) { - int step = is_default_overflow_handler(wp); + int step = uses_default_overflow_handler(wp); struct arch_hw_breakpoint *info = counter_arch_bp(wp); info->trigger = addr; --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/module-plts.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/module-plts.c @@ -339,7 +339,7 @@ if (nents) sort(rels, nents, sizeof(Elf64_Rela), cmp_rela, NULL); - if (!str_has_prefix(secstrings + dstsec->sh_name, ".init")) + if (!module_init_layout_section(secstrings + dstsec->sh_name)) core_plts += count_plts(syms, rels, numrels, sechdrs[i].sh_info, dstsec); else --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/ptrace.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/ptrace.c @@ -891,7 +891,8 @@ break; default: WARN_ON_ONCE(1); - return -EINVAL; + ret = -EINVAL; + goto out; } /* --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/sdei.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/sdei.c @@ -47,6 +47,9 @@ DEFINE_PER_CPU(unsigned long *, sdei_shadow_call_stack_critical_ptr); #endif +DEFINE_PER_CPU(struct sdei_registered_event *, sdei_active_normal_event); +DEFINE_PER_CPU(struct sdei_registered_event *, sdei_active_critical_event); + static void _free_sdei_stack(unsigned long * __percpu *ptr, int cpu) { unsigned long *p; --- linux-intel-opt-6.5.0.orig/arch/arm64/kernel/smp.c +++ linux-intel-opt-6.5.0/arch/arm64/kernel/smp.c @@ -1044,10 +1044,8 @@ * If this cpu is the only one alive at this point in time, online or * not, there are no stop messages to be sent around, so just back out. */ - if (num_other_online_cpus() == 0) { - sdei_mask_local_cpu(); - return; - } + if (num_other_online_cpus() == 0) + goto skip_ipi; cpumask_copy(&mask, cpu_online_mask); cpumask_clear_cpu(smp_processor_id(), &mask); @@ -1066,7 +1064,9 @@ pr_warn("SMP: failed to stop secondary CPUs %*pbl\n", cpumask_pr_args(&mask)); +skip_ipi: sdei_mask_local_cpu(); + sdei_handler_abort(); } bool smp_crash_stop_failed(void) --- linux-intel-opt-6.5.0.orig/arch/arm64/kvm/Kconfig +++ linux-intel-opt-6.5.0/arch/arm64/kvm/Kconfig @@ -22,7 +22,7 @@ bool "Kernel-based Virtual Machine (KVM) support" depends on HAVE_KVM select KVM_GENERIC_HARDWARE_ENABLING - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER select PREEMPT_NOTIFIERS select HAVE_KVM_CPU_RELAX_INTERCEPT select HAVE_KVM_ARCH_TLB_FLUSH_ALL --- linux-intel-opt-6.5.0.orig/arch/arm64/kvm/mmu.c +++ linux-intel-opt-6.5.0/arch/arm64/kvm/mmu.c @@ -1721,7 +1721,7 @@ bool kvm_set_spte_gfn(struct kvm *kvm, struct kvm_gfn_range *range) { - kvm_pfn_t pfn = pte_pfn(range->pte); + kvm_pfn_t pfn = pte_pfn(range->arg.pte); if (!kvm->arch.mmu.pgt) return false; --- linux-intel-opt-6.5.0.orig/arch/arm64/lib/csum.c +++ linux-intel-opt-6.5.0/arch/arm64/lib/csum.c @@ -24,7 +24,7 @@ const u64 *ptr; u64 data, sum64 = 0; - if (unlikely(len == 0)) + if (unlikely(len <= 0)) return 0; offset = (unsigned long)buff & 7; --- linux-intel-opt-6.5.0.orig/arch/arm64/mm/hugetlbpage.c +++ linux-intel-opt-6.5.0/arch/arm64/mm/hugetlbpage.c @@ -236,7 +236,7 @@ unsigned long i, saddr = addr; for (i = 0; i < ncontig; i++, addr += pgsize, ptep++) - pte_clear(mm, addr, ptep); + ptep_clear(mm, addr, ptep); flush_tlb_range(&vma, saddr, addr); } --- linux-intel-opt-6.5.0.orig/arch/arm64/tools/cpucaps +++ linux-intel-opt-6.5.0/arch/arm64/tools/cpucaps @@ -83,6 +83,7 @@ WORKAROUND_2457168 WORKAROUND_2645198 WORKAROUND_2658417 +WORKAROUND_2966298 WORKAROUND_AMPERE_AC03_CPU_38 WORKAROUND_TRBE_OVERWRITE_FILL_MODE WORKAROUND_TSB_FLUSH_FAILURE --- linux-intel-opt-6.5.0.orig/arch/arm64/tools/sysreg +++ linux-intel-opt-6.5.0/arch/arm64/tools/sysreg @@ -1347,7 +1347,11 @@ 0b0000 NI 0b0001 IMP EndEnum -Res0 47:28 +Res0 47:32 +UnsignedEnum 31:28 CLRBHB + 0b0000 NI + 0b0001 IMP +EndEnum UnsignedEnum 27:24 PAC_frac 0b0000 NI 0b0001 IMP --- linux-intel-opt-6.5.0.orig/arch/loongarch/include/asm/addrspace.h +++ linux-intel-opt-6.5.0/arch/loongarch/include/asm/addrspace.h @@ -19,7 +19,7 @@ */ #ifndef __ASSEMBLY__ #ifndef PHYS_OFFSET -#define PHYS_OFFSET _AC(0, UL) +#define PHYS_OFFSET _UL(0) #endif extern unsigned long vm_map_base; #endif /* __ASSEMBLY__ */ @@ -43,7 +43,7 @@ * Memory above this physical address will be considered highmem. */ #ifndef HIGHMEM_START -#define HIGHMEM_START (_AC(1, UL) << _AC(DMW_PABITS, UL)) +#define HIGHMEM_START (_UL(1) << _UL(DMW_PABITS)) #endif #define TO_PHYS(x) ( ((x) & TO_PHYS_MASK)) @@ -65,16 +65,16 @@ #define _ATYPE_ #define _ATYPE32_ #define _ATYPE64_ -#define _CONST64_(x) x #else #define _ATYPE_ __PTRDIFF_TYPE__ #define _ATYPE32_ int #define _ATYPE64_ __s64 +#endif + #ifdef CONFIG_64BIT -#define _CONST64_(x) x ## UL +#define _CONST64_(x) _UL(x) #else -#define _CONST64_(x) x ## ULL -#endif +#define _CONST64_(x) _ULL(x) #endif /* --- linux-intel-opt-6.5.0.orig/arch/loongarch/include/asm/elf.h +++ linux-intel-opt-6.5.0/arch/loongarch/include/asm/elf.h @@ -111,6 +111,15 @@ #define R_LARCH_TLS_GD_HI20 98 #define R_LARCH_32_PCREL 99 #define R_LARCH_RELAX 100 +#define R_LARCH_DELETE 101 +#define R_LARCH_ALIGN 102 +#define R_LARCH_PCREL20_S2 103 +#define R_LARCH_CFA 104 +#define R_LARCH_ADD6 105 +#define R_LARCH_SUB6 106 +#define R_LARCH_ADD_ULEB128 107 +#define R_LARCH_SUB_ULEB128 108 +#define R_LARCH_64_PCREL 109 #ifndef ELF_ARCH --- linux-intel-opt-6.5.0.orig/arch/loongarch/include/asm/irq.h +++ linux-intel-opt-6.5.0/arch/loongarch/include/asm/irq.h @@ -40,7 +40,7 @@ #define NR_IRQS_LEGACY 16 #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace -void arch_trigger_cpumask_backtrace(const struct cpumask *mask, bool exclude_self); +void arch_trigger_cpumask_backtrace(const struct cpumask *mask, int exclude_cpu); #define MAX_IO_PICS 2 #define NR_IRQS (64 + (256 * MAX_IO_PICS)) --- linux-intel-opt-6.5.0.orig/arch/loongarch/include/asm/local.h +++ linux-intel-opt-6.5.0/arch/loongarch/include/asm/local.h @@ -63,8 +63,8 @@ static inline bool local_try_cmpxchg(local_t *l, long *old, long new) { - typeof(l->a.counter) *__old = (typeof(l->a.counter) *) old; - return try_cmpxchg_local(&l->a.counter, __old, new); + return try_cmpxchg_local(&l->a.counter, + (typeof(l->a.counter) *) old, new); } #define local_xchg(l, n) (atomic_long_xchg((&(l)->a), (n))) --- linux-intel-opt-6.5.0.orig/arch/loongarch/include/asm/pgtable.h +++ linux-intel-opt-6.5.0/arch/loongarch/include/asm/pgtable.h @@ -593,6 +593,9 @@ } #endif /* CONFIG_NUMA_BALANCING */ +#define pmd_leaf(pmd) ((pmd_val(pmd) & _PAGE_HUGE) != 0) +#define pud_leaf(pud) ((pud_val(pud) & _PAGE_HUGE) != 0) + /* * We provide our own get_unmapped area to cope with the virtual aliasing * constraints placed on us by the cache architecture. --- linux-intel-opt-6.5.0.orig/arch/loongarch/kernel/mem.c +++ linux-intel-opt-6.5.0/arch/loongarch/kernel/mem.c @@ -50,7 +50,6 @@ } memblock_set_current_limit(PFN_PHYS(max_low_pfn)); - memblock_set_node(0, PHYS_ADDR_MAX, &memblock.memory, 0); /* Reserve the first 2MB */ memblock_reserve(PHYS_OFFSET, 0x200000); @@ -58,4 +57,7 @@ /* Reserve the kernel text/data/bss */ memblock_reserve(__pa_symbol(&_text), __pa_symbol(&_end) - __pa_symbol(&_text)); + + memblock_set_node(0, PHYS_ADDR_MAX, &memblock.memory, 0); + memblock_set_node(0, PHYS_ADDR_MAX, &memblock.reserved, 0); } --- linux-intel-opt-6.5.0.orig/arch/loongarch/kernel/module.c +++ linux-intel-opt-6.5.0/arch/loongarch/kernel/module.c @@ -367,6 +367,24 @@ return apply_r_larch_pcala(mod, location, got, rela_stack, rela_stack_top, type); } +static int apply_r_larch_32_pcrel(struct module *mod, u32 *location, Elf_Addr v, + s64 *rela_stack, size_t *rela_stack_top, unsigned int type) +{ + ptrdiff_t offset = (void *)v - (void *)location; + + *(u32 *)location = offset; + return 0; +} + +static int apply_r_larch_64_pcrel(struct module *mod, u32 *location, Elf_Addr v, + s64 *rela_stack, size_t *rela_stack_top, unsigned int type) +{ + ptrdiff_t offset = (void *)v - (void *)location; + + *(u64 *)location = offset; + return 0; +} + /* * reloc_handlers_rela() - Apply a particular relocation to a module * @mod: the module to apply the reloc to @@ -382,7 +400,7 @@ /* The handlers for known reloc types */ static reloc_rela_handler reloc_rela_handlers[] = { - [R_LARCH_NONE ... R_LARCH_RELAX] = apply_r_larch_error, + [R_LARCH_NONE ... R_LARCH_64_PCREL] = apply_r_larch_error, [R_LARCH_NONE] = apply_r_larch_none, [R_LARCH_32] = apply_r_larch_32, @@ -396,6 +414,8 @@ [R_LARCH_SOP_POP_32_S_10_5 ... R_LARCH_SOP_POP_32_U] = apply_r_larch_sop_imm_field, [R_LARCH_ADD32 ... R_LARCH_SUB64] = apply_r_larch_add_sub, [R_LARCH_PCALA_HI20...R_LARCH_PCALA64_HI12] = apply_r_larch_pcala, + [R_LARCH_32_PCREL] = apply_r_larch_32_pcrel, + [R_LARCH_64_PCREL] = apply_r_larch_64_pcrel, }; int apply_relocate_add(Elf_Shdr *sechdrs, const char *strtab, --- linux-intel-opt-6.5.0.orig/arch/loongarch/kernel/numa.c +++ linux-intel-opt-6.5.0/arch/loongarch/kernel/numa.c @@ -468,7 +468,7 @@ void __init mem_init(void) { - high_memory = (void *) __va(get_num_physpages() << PAGE_SHIFT); + high_memory = (void *) __va(max_low_pfn << PAGE_SHIFT); memblock_free_all(); setup_zero_pages(); /* This comes from node 0 */ } --- linux-intel-opt-6.5.0.orig/arch/loongarch/kernel/process.c +++ linux-intel-opt-6.5.0/arch/loongarch/kernel/process.c @@ -338,9 +338,9 @@ } } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { - nmi_trigger_cpumask_backtrace(mask, exclude_self, raise_backtrace); + nmi_trigger_cpumask_backtrace(mask, exclude_cpu, raise_backtrace); } #ifdef CONFIG_64BIT --- linux-intel-opt-6.5.0.orig/arch/loongarch/kernel/vmlinux.lds.S +++ linux-intel-opt-6.5.0/arch/loongarch/kernel/vmlinux.lds.S @@ -53,33 +53,6 @@ . = ALIGN(PECOFF_SEGMENT_ALIGN); _etext = .; - /* - * struct alt_inst entries. From the header (alternative.h): - * "Alternative instructions for different CPU types or capabilities" - * Think locking instructions on spinlocks. - */ - . = ALIGN(4); - .altinstructions : AT(ADDR(.altinstructions) - LOAD_OFFSET) { - __alt_instructions = .; - *(.altinstructions) - __alt_instructions_end = .; - } - -#ifdef CONFIG_RELOCATABLE - . = ALIGN(8); - .la_abs : AT(ADDR(.la_abs) - LOAD_OFFSET) { - __la_abs_begin = .; - *(.la_abs) - __la_abs_end = .; - } -#endif - - .got : ALIGN(16) { *(.got) } - .plt : ALIGN(16) { *(.plt) } - .got.plt : ALIGN(16) { *(.got.plt) } - - .data.rel : { *(.data.rel*) } - . = ALIGN(PECOFF_SEGMENT_ALIGN); __init_begin = .; __inittext_begin = .; @@ -94,6 +67,18 @@ __initdata_begin = .; + /* + * struct alt_inst entries. From the header (alternative.h): + * "Alternative instructions for different CPU types or capabilities" + * Think locking instructions on spinlocks. + */ + . = ALIGN(4); + .altinstructions : AT(ADDR(.altinstructions) - LOAD_OFFSET) { + __alt_instructions = .; + *(.altinstructions) + __alt_instructions_end = .; + } + INIT_DATA_SECTION(16) .exit.data : { EXIT_DATA @@ -113,6 +98,11 @@ _sdata = .; RO_DATA(4096) + + .got : ALIGN(16) { *(.got) } + .plt : ALIGN(16) { *(.plt) } + .got.plt : ALIGN(16) { *(.got.plt) } + RW_DATA(1 << CONFIG_L1_CACHE_SHIFT, PAGE_SIZE, THREAD_SIZE) .rela.dyn : ALIGN(8) { @@ -121,6 +111,17 @@ __rela_dyn_end = .; } + .data.rel : { *(.data.rel*) } + +#ifdef CONFIG_RELOCATABLE + . = ALIGN(8); + .la_abs : AT(ADDR(.la_abs) - LOAD_OFFSET) { + __la_abs_begin = .; + *(.la_abs) + __la_abs_end = .; + } +#endif + .sdata : { *(.sdata) } --- linux-intel-opt-6.5.0.orig/arch/mips/Makefile +++ linux-intel-opt-6.5.0/arch/mips/Makefile @@ -299,8 +299,8 @@ endif endif - ifeq ($(KBUILD_SYM32)$(call cc-option-yn,-msym32), yy) - cflags-y += -msym32 -DKBUILD_64BIT_SYM32 + ifeq ($(KBUILD_SYM32), y) + cflags-$(KBUILD_SYM32) += -msym32 -DKBUILD_64BIT_SYM32 else ifeq ($(CONFIG_CPU_DADDI_WORKAROUNDS), y) $(error CONFIG_CPU_DADDI_WORKAROUNDS unsupported without -msym32) @@ -341,7 +341,7 @@ KBUILD_LDFLAGS += -m $(ld-emul) -ifdef CONFIG_MIPS +ifdef need-compiler CHECKFLAGS += $(shell $(CC) $(KBUILD_CPPFLAGS) $(KBUILD_CFLAGS) -dM -E -x c /dev/null | \ grep -E -vw '__GNUC_(MINOR_|PATCHLEVEL_)?_' | \ sed -e "s/^\#define /-D'/" -e "s/ /'='/" -e "s/$$/'/" -e 's/\$$/&&/g') --- linux-intel-opt-6.5.0.orig/arch/mips/alchemy/devboards/db1000.c +++ linux-intel-opt-6.5.0/arch/mips/alchemy/devboards/db1000.c @@ -14,7 +14,6 @@ #include #include #include -#include #include #include #include @@ -165,14 +164,10 @@ /******************************************************************************/ +#ifdef CONFIG_MMC_AU1X static irqreturn_t db1100_mmc_cd(int irq, void *ptr) { - void (*mmc_cd)(struct mmc_host *, unsigned long); - /* link against CONFIG_MMC=m */ - mmc_cd = symbol_get(mmc_detect_change); - mmc_cd(ptr, msecs_to_jiffies(500)); - symbol_put(mmc_detect_change); - + mmc_detect_change(ptr, msecs_to_jiffies(500)); return IRQ_HANDLED; } @@ -375,6 +370,7 @@ .num_resources = ARRAY_SIZE(au1100_mmc1_res), .resource = au1100_mmc1_res, }; +#endif /* CONFIG_MMC_AU1X */ /******************************************************************************/ @@ -446,8 +442,10 @@ static struct platform_device *db1100_devs[] = { &au1100_lcd_device, +#ifdef CONFIG_MMC_AU1X &db1100_mmc0_dev, &db1100_mmc1_dev, +#endif }; int __init db1000_dev_setup(void) --- linux-intel-opt-6.5.0.orig/arch/mips/alchemy/devboards/db1200.c +++ linux-intel-opt-6.5.0/arch/mips/alchemy/devboards/db1200.c @@ -10,7 +10,6 @@ #include #include #include -#include #include #include #include @@ -327,6 +326,7 @@ /**********************************************************************/ +#ifdef CONFIG_MMC_AU1X /* SD carddetects: they're supposed to be edge-triggered, but ack * doesn't seem to work (CPLD Rev 2). Instead, the screaming one * is disabled and its counterpart enabled. The 200ms timeout is @@ -340,14 +340,7 @@ static irqreturn_t db1200_mmc_cdfn(int irq, void *ptr) { - void (*mmc_cd)(struct mmc_host *, unsigned long); - - /* link against CONFIG_MMC=m */ - mmc_cd = symbol_get(mmc_detect_change); - if (mmc_cd) { - mmc_cd(ptr, msecs_to_jiffies(200)); - symbol_put(mmc_detect_change); - } + mmc_detect_change(ptr, msecs_to_jiffies(200)); msleep(100); /* debounce */ if (irq == DB1200_SD0_INSERT_INT) @@ -431,14 +424,7 @@ static irqreturn_t pb1200_mmc1_cdfn(int irq, void *ptr) { - void (*mmc_cd)(struct mmc_host *, unsigned long); - - /* link against CONFIG_MMC=m */ - mmc_cd = symbol_get(mmc_detect_change); - if (mmc_cd) { - mmc_cd(ptr, msecs_to_jiffies(200)); - symbol_put(mmc_detect_change); - } + mmc_detect_change(ptr, msecs_to_jiffies(200)); msleep(100); /* debounce */ if (irq == PB1200_SD1_INSERT_INT) @@ -599,6 +585,7 @@ .num_resources = ARRAY_SIZE(au1200_mmc1_res), .resource = au1200_mmc1_res, }; +#endif /* CONFIG_MMC_AU1X */ /**********************************************************************/ @@ -766,7 +753,9 @@ static struct platform_device *db1200_devs[] __initdata = { NULL, /* PSC0, selected by S6.8 */ &db1200_ide_dev, +#ifdef CONFIG_MMC_AU1X &db1200_mmc0_dev, +#endif &au1200_lcd_dev, &db1200_eth_dev, &db1200_nand_dev, @@ -777,7 +766,9 @@ }; static struct platform_device *pb1200_devs[] __initdata = { +#ifdef CONFIG_MMC_AU1X &pb1200_mmc1_dev, +#endif }; /* Some peripheral base addresses differ on the PB1200 */ --- linux-intel-opt-6.5.0.orig/arch/mips/alchemy/devboards/db1300.c +++ linux-intel-opt-6.5.0/arch/mips/alchemy/devboards/db1300.c @@ -17,7 +17,6 @@ #include #include #include -#include #include #include #include @@ -451,6 +450,7 @@ /**********************************************************************/ +#ifdef CONFIG_MMC_AU1X static irqreturn_t db1300_mmc_cd(int irq, void *ptr) { disable_irq_nosync(irq); @@ -459,14 +459,7 @@ static irqreturn_t db1300_mmc_cdfn(int irq, void *ptr) { - void (*mmc_cd)(struct mmc_host *, unsigned long); - - /* link against CONFIG_MMC=m. We can only be called once MMC core has - * initialized the controller, so symbol_get() should always succeed. - */ - mmc_cd = symbol_get(mmc_detect_change); - mmc_cd(ptr, msecs_to_jiffies(200)); - symbol_put(mmc_detect_change); + mmc_detect_change(ptr, msecs_to_jiffies(200)); msleep(100); /* debounce */ if (irq == DB1300_SD1_INSERT_INT) @@ -640,6 +633,7 @@ .resource = au1300_sd0_res, .num_resources = ARRAY_SIZE(au1300_sd0_res), }; +#endif /* CONFIG_MMC_AU1X */ /**********************************************************************/ @@ -775,8 +769,10 @@ &db1300_5waysw_dev, &db1300_nand_dev, &db1300_ide_dev, +#ifdef CONFIG_MMC_AU1X &db1300_sd0_dev, &db1300_sd1_dev, +#endif &db1300_lcd_dev, &db1300_ac97_dev, &db1300_i2s_dev, --- linux-intel-opt-6.5.0.orig/arch/mips/cavium-octeon/octeon-usb.c +++ linux-intel-opt-6.5.0/arch/mips/cavium-octeon/octeon-usb.c @@ -243,11 +243,11 @@ while (div < ARRAY_SIZE(clk_div)) { uint64_t rate = octeon_get_io_clock_rate() / clk_div[div]; if (rate <= 300000000 && rate >= 150000000) - break; + return div; div++; } - return div; + return -EINVAL; } static int dwc3_octeon_config_power(struct device *dev, void __iomem *base) @@ -374,6 +374,10 @@ /* Step 4b: Select controller clock frequency. */ div = dwc3_octeon_get_divider(); + if (div < 0) { + dev_err(dev, "clock divider invalid\n"); + return div; + } val = dwc3_octeon_readq(uctl_ctl_reg); val &= ~USBDRD_UCTL_CTL_H_CLKDIV_SEL; val |= FIELD_PREP(USBDRD_UCTL_CTL_H_CLKDIV_SEL, div); --- linux-intel-opt-6.5.0.orig/arch/mips/include/asm/irq.h +++ linux-intel-opt-6.5.0/arch/mips/include/asm/irq.h @@ -77,7 +77,7 @@ extern int get_c0_fdc_int(void); void arch_trigger_cpumask_backtrace(const struct cpumask *mask, - bool exclude_self); + int exclude_cpu); #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace #endif /* _ASM_IRQ_H */ --- linux-intel-opt-6.5.0.orig/arch/mips/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/mips/include/asm/kvm_host.h @@ -810,8 +810,6 @@ pgd_t *kvm_pgd_alloc(void); void kvm_mmu_free_memory_caches(struct kvm_vcpu *vcpu); -#define KVM_ARCH_WANT_MMU_NOTIFIER - /* Emulation */ enum emulation_result update_pc(struct kvm_vcpu *vcpu, u32 cause); int kvm_get_badinstr(u32 *opc, struct kvm_vcpu *vcpu, u32 *out); --- linux-intel-opt-6.5.0.orig/arch/mips/include/asm/local.h +++ linux-intel-opt-6.5.0/arch/mips/include/asm/local.h @@ -101,8 +101,8 @@ static __inline__ bool local_try_cmpxchg(local_t *l, long *old, long new) { - typeof(l->a.counter) *__old = (typeof(l->a.counter) *) old; - return try_cmpxchg_local(&l->a.counter, __old, new); + return try_cmpxchg_local(&l->a.counter, + (typeof(l->a.counter) *) old, new); } #define local_xchg(l, n) (atomic_long_xchg((&(l)->a), (n))) --- linux-intel-opt-6.5.0.orig/arch/mips/kernel/process.c +++ linux-intel-opt-6.5.0/arch/mips/kernel/process.c @@ -750,9 +750,9 @@ } } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { - nmi_trigger_cpumask_backtrace(mask, exclude_self, raise_backtrace); + nmi_trigger_cpumask_backtrace(mask, exclude_cpu, raise_backtrace); } int mips_get_process_fp_mode(struct task_struct *task) --- linux-intel-opt-6.5.0.orig/arch/mips/kvm/Kconfig +++ linux-intel-opt-6.5.0/arch/mips/kvm/Kconfig @@ -25,7 +25,7 @@ select HAVE_KVM_EVENTFD select HAVE_KVM_VCPU_ASYNC_IOCTL select KVM_MMIO - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER select INTERVAL_TREE select KVM_GENERIC_HARDWARE_ENABLING help --- linux-intel-opt-6.5.0.orig/arch/mips/kvm/mmu.c +++ linux-intel-opt-6.5.0/arch/mips/kvm/mmu.c @@ -447,7 +447,7 @@ bool kvm_set_spte_gfn(struct kvm *kvm, struct kvm_gfn_range *range) { gpa_t gpa = range->start << PAGE_SHIFT; - pte_t hva_pte = range->pte; + pte_t hva_pte = range->arg.pte; pte_t *gpa_pte = kvm_mips_pte_for_gpa(kvm, NULL, gpa); pte_t old_pte; --- linux-intel-opt-6.5.0.orig/arch/parisc/include/asm/ldcw.h +++ linux-intel-opt-6.5.0/arch/parisc/include/asm/ldcw.h @@ -2,39 +2,42 @@ #ifndef __PARISC_LDCW_H #define __PARISC_LDCW_H -#ifndef CONFIG_PA20 /* Because kmalloc only guarantees 8-byte alignment for kmalloc'd data, and GCC only guarantees 8-byte alignment for stack locals, we can't be assured of 16-byte alignment for atomic lock data even if we specify "__attribute ((aligned(16)))" in the type declaration. So, we use a struct containing an array of four ints for the atomic lock type and dynamically select the 16-byte aligned int from the array - for the semaphore. */ + for the semaphore. */ + +/* From: "Jim Hull" + I've attached a summary of the change, but basically, for PA 2.0, as + long as the ",CO" (coherent operation) completer is implemented, then the + 16-byte alignment requirement for ldcw and ldcd is relaxed, and instead + they only require "natural" alignment (4-byte for ldcw, 8-byte for + ldcd). + + Although the cache control hint is accepted by all PA 2.0 processors, + it is only implemented on PA8800/PA8900 CPUs. Prior PA8X00 CPUs still + require 16-byte alignment. If the address is unaligned, the operation + of the instruction is undefined. The ldcw instruction does not generate + unaligned data reference traps so misaligned accesses are not detected. + This hid the problem for years. So, restore the 16-byte alignment dropped + by Kyle McMartin in "Remove __ldcw_align for PA-RISC 2.0 processors". */ #define __PA_LDCW_ALIGNMENT 16 -#define __PA_LDCW_ALIGN_ORDER 4 #define __ldcw_align(a) ({ \ unsigned long __ret = (unsigned long) &(a)->lock[0]; \ __ret = (__ret + __PA_LDCW_ALIGNMENT - 1) \ & ~(__PA_LDCW_ALIGNMENT - 1); \ (volatile unsigned int *) __ret; \ }) -#define __LDCW "ldcw" -#else /*CONFIG_PA20*/ -/* From: "Jim Hull" - I've attached a summary of the change, but basically, for PA 2.0, as - long as the ",CO" (coherent operation) completer is specified, then the - 16-byte alignment requirement for ldcw and ldcd is relaxed, and instead - they only require "natural" alignment (4-byte for ldcw, 8-byte for - ldcd). */ - -#define __PA_LDCW_ALIGNMENT 4 -#define __PA_LDCW_ALIGN_ORDER 2 -#define __ldcw_align(a) (&(a)->slock) +#ifdef CONFIG_PA20 #define __LDCW "ldcw,co" - -#endif /*!CONFIG_PA20*/ +#else +#define __LDCW "ldcw" +#endif /* LDCW, the only atomic read-write operation PA-RISC has. *sigh*. We don't explicitly expose that "*a" may be written as reload --- linux-intel-opt-6.5.0.orig/arch/parisc/include/asm/led.h +++ linux-intel-opt-6.5.0/arch/parisc/include/asm/led.h @@ -11,8 +11,8 @@ #define LED1 0x02 #define LED0 0x01 /* bottom (or furthest left) LED */ -#define LED_LAN_TX LED0 /* for LAN transmit activity */ -#define LED_LAN_RCV LED1 /* for LAN receive activity */ +#define LED_LAN_RCV LED0 /* for LAN receive activity */ +#define LED_LAN_TX LED1 /* for LAN transmit activity */ #define LED_DISK_IO LED2 /* for disk activity */ #define LED_HEARTBEAT LED3 /* heartbeat */ --- linux-intel-opt-6.5.0.orig/arch/parisc/include/asm/ropes.h +++ linux-intel-opt-6.5.0/arch/parisc/include/asm/ropes.h @@ -29,7 +29,7 @@ struct ioc { void __iomem *ioc_hpa; /* I/O MMU base address */ char *res_map; /* resource map, bit == pdir entry */ - u64 *pdir_base; /* physical base address */ + __le64 *pdir_base; /* physical base address */ unsigned long ibase; /* pdir IOV Space base - shared w/lba_pci */ unsigned long imask; /* pdir IOV Space mask - shared w/lba_pci */ #ifdef ZX1_SUPPORT @@ -86,6 +86,9 @@ struct ioc ioc[MAX_IOC]; }; +/* list of SBA's in system, see drivers/parisc/sba_iommu.c */ +extern struct sba_device *sba_list; + #define ASTRO_RUNWAY_PORT 0x582 #define IKE_MERCED_PORT 0x803 #define REO_MERCED_PORT 0x804 @@ -110,7 +113,7 @@ #define SBA_PDIR_VALID_BIT 0x8000000000000000ULL -#define SBA_AGPGART_COOKIE 0x0000badbadc0ffeeULL +#define SBA_AGPGART_COOKIE (__force __le64) 0x0000badbadc0ffeeULL #define SBA_FUNC_ID 0x0000 /* function id */ #define SBA_FCLASS 0x0008 /* function class, bist, header, rev... */ --- linux-intel-opt-6.5.0.orig/arch/parisc/include/asm/runway.h +++ linux-intel-opt-6.5.0/arch/parisc/include/asm/runway.h @@ -2,9 +2,6 @@ #ifndef ASM_PARISC_RUNWAY_H #define ASM_PARISC_RUNWAY_H -/* declared in arch/parisc/kernel/setup.c */ -extern struct proc_dir_entry * proc_runway_root; - #define RUNWAY_STATUS 0x10 #define RUNWAY_DEBUG 0x40 --- linux-intel-opt-6.5.0.orig/arch/parisc/include/asm/spinlock_types.h +++ linux-intel-opt-6.5.0/arch/parisc/include/asm/spinlock_types.h @@ -9,15 +9,10 @@ #ifndef __ASSEMBLY__ typedef struct { -#ifdef CONFIG_PA20 - volatile unsigned int slock; -# define __ARCH_SPIN_LOCK_UNLOCKED { __ARCH_SPIN_LOCK_UNLOCKED_VAL } -#else volatile unsigned int lock[4]; # define __ARCH_SPIN_LOCK_UNLOCKED \ { { __ARCH_SPIN_LOCK_UNLOCKED_VAL, __ARCH_SPIN_LOCK_UNLOCKED_VAL, \ __ARCH_SPIN_LOCK_UNLOCKED_VAL, __ARCH_SPIN_LOCK_UNLOCKED_VAL } } -#endif } arch_spinlock_t; --- linux-intel-opt-6.5.0.orig/arch/parisc/kernel/drivers.c +++ linux-intel-opt-6.5.0/arch/parisc/kernel/drivers.c @@ -925,9 +925,9 @@ pr_info("#define PARISC_MODEL \"%s\"\n\n", boot_cpu_data.pdc.sys_model_name); + #define p ((unsigned long *)&boot_cpu_data.pdc.model) pr_info("#define PARISC_PDC_MODEL 0x%lx, 0x%lx, 0x%lx, " "0x%lx, 0x%lx, 0x%lx, 0x%lx, 0x%lx, 0x%lx\n\n", - #define p ((unsigned long *)&boot_cpu_data.pdc.model) p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7], p[8]); #undef p --- linux-intel-opt-6.5.0.orig/arch/parisc/kernel/irq.c +++ linux-intel-opt-6.5.0/arch/parisc/kernel/irq.c @@ -365,7 +365,7 @@ volatile unsigned int lock[1]; }; -DEFINE_PER_CPU(union irq_stack_union, irq_stack_union) = { +static DEFINE_PER_CPU(union irq_stack_union, irq_stack_union) = { .slock = { 1,1,1,1 }, }; #endif --- linux-intel-opt-6.5.0.orig/arch/parisc/kernel/processor.c +++ linux-intel-opt-6.5.0/arch/parisc/kernel/processor.c @@ -378,10 +378,18 @@ show_cpuinfo (struct seq_file *m, void *v) { unsigned long cpu; + char cpu_name[60], *p; + + /* strip PA path from CPU name to not confuse lscpu */ + strlcpy(cpu_name, per_cpu(cpu_data, 0).dev->name, sizeof(cpu_name)); + p = strrchr(cpu_name, '['); + if (p) + *(--p) = 0; for_each_online_cpu(cpu) { - const struct cpuinfo_parisc *cpuinfo = &per_cpu(cpu_data, cpu); #ifdef CONFIG_SMP + const struct cpuinfo_parisc *cpuinfo = &per_cpu(cpu_data, cpu); + if (0 == cpuinfo->hpa) continue; #endif @@ -426,8 +434,7 @@ seq_printf(m, "model\t\t: %s - %s\n", boot_cpu_data.pdc.sys_model_name, - cpuinfo->dev ? - cpuinfo->dev->name : "Unknown"); + cpu_name); seq_printf(m, "hversion\t: 0x%08x\n" "sversion\t: 0x%08x\n", --- linux-intel-opt-6.5.0.orig/arch/parisc/kernel/smp.c +++ linux-intel-opt-6.5.0/arch/parisc/kernel/smp.c @@ -440,7 +440,9 @@ if (cpu_online(cpu)) return 0; - if (num_online_cpus() < setup_max_cpus && smp_boot_one_cpu(cpu, tidle)) + if (num_online_cpus() < nr_cpu_ids && + num_online_cpus() < setup_max_cpus && + smp_boot_one_cpu(cpu, tidle)) return -EIO; return cpu_online(cpu) ? 0 : -EIO; --- linux-intel-opt-6.5.0.orig/arch/powerpc/Makefile +++ linux-intel-opt-6.5.0/arch/powerpc/Makefile @@ -224,7 +224,7 @@ all: zImage # With make 3.82 we cannot mix normal and wildcard targets -BOOT_TARGETS1 := zImage zImage.initrd uImage +BOOT_TARGETS1 := zImage zImage.initrd uImage vmlinux.strip BOOT_TARGETS2 := zImage% dtbImage% treeImage.% cuImage.% simpleImage.% uImage.% PHONY += $(BOOT_TARGETS1) $(BOOT_TARGETS2) --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/cputhreads.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/cputhreads.h @@ -3,6 +3,7 @@ #define _ASM_POWERPC_CPUTHREADS_H #ifndef __ASSEMBLY__ +#include #include #include --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/ftrace.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/ftrace.h @@ -12,7 +12,7 @@ /* Ignore unused weak functions which will have larger offsets */ #ifdef CONFIG_MPROFILE_KERNEL -#define FTRACE_MCOUNT_MAX_OFFSET 12 +#define FTRACE_MCOUNT_MAX_OFFSET 16 #elif defined(CONFIG_PPC32) #define FTRACE_MCOUNT_MAX_OFFSET 8 #endif --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/irq.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/irq.h @@ -55,7 +55,7 @@ #if defined(CONFIG_PPC_BOOK3S_64) && defined(CONFIG_NMI_IPI) extern void arch_trigger_cpumask_backtrace(const cpumask_t *mask, - bool exclude_self); + int exclude_cpu); #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace #endif --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/kvm_host.h @@ -62,8 +62,6 @@ #include -#define KVM_ARCH_WANT_MMU_NOTIFIER - #define HPTEG_CACHE_NUM (1 << 15) #define HPTEG_HASH_BITS_PTE 13 #define HPTEG_HASH_BITS_PTE_LONG 12 --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/lppaca.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/lppaca.h @@ -45,6 +45,7 @@ #include #include #include +#include /* * The lppaca is the "virtual processor area" registered with the hypervisor, @@ -127,13 +128,23 @@ */ #define LPPACA_OLD_SHARED_PROC 2 -static inline bool lppaca_shared_proc(struct lppaca *l) +#ifdef CONFIG_PPC_PSERIES +/* + * All CPUs should have the same shared proc value, so directly access the PACA + * to avoid false positives from DEBUG_PREEMPT. + */ +static inline bool lppaca_shared_proc(void) { + struct lppaca *l = local_paca->lppaca_ptr; + if (!firmware_has_feature(FW_FEATURE_SPLPAR)) return false; return !!(l->__old_status & LPPACA_OLD_SHARED_PROC); } +#define get_lppaca() (get_paca()->lppaca_ptr) +#endif + /* * SLB shadow buffer structure as defined in the PAPR. The save_area * contains adjacent ESID and VSID pairs for each shadowed SLB. The --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/nohash/32/pte-8xx.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/nohash/32/pte-8xx.h @@ -94,6 +94,13 @@ #define pte_wrprotect pte_wrprotect +static inline int pte_read(pte_t pte) +{ + return (pte_val(pte) & _PAGE_RO) != _PAGE_NA; +} + +#define pte_read pte_read + static inline int pte_write(pte_t pte) { return !(pte_val(pte) & _PAGE_RO); --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/nohash/64/pgtable.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/nohash/64/pgtable.h @@ -197,7 +197,7 @@ { unsigned long old; - if (pte_young(*ptep)) + if (!pte_young(*ptep)) return 0; old = pte_update(mm, addr, ptep, _PAGE_ACCESSED, 0, 0); return (old & _PAGE_ACCESSED) != 0; --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/nohash/pgtable.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/nohash/pgtable.h @@ -25,7 +25,9 @@ return pte_val(pte) & _PAGE_RW; } #endif +#ifndef pte_read static inline int pte_read(pte_t pte) { return 1; } +#endif static inline int pte_dirty(pte_t pte) { return pte_val(pte) & _PAGE_DIRTY; } static inline int pte_special(pte_t pte) { return pte_val(pte) & _PAGE_SPECIAL; } static inline int pte_none(pte_t pte) { return (pte_val(pte) & ~_PTE_NONE_MASK) == 0; } --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/paca.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/paca.h @@ -15,7 +15,6 @@ #include #include #include -#include #include #include #ifdef CONFIG_PPC_BOOK3E_64 @@ -47,14 +46,11 @@ #define get_paca() local_paca #endif -#ifdef CONFIG_PPC_PSERIES -#define get_lppaca() (get_paca()->lppaca_ptr) -#endif - #define get_slb_shadow() (get_paca()->slb_shadow_ptr) struct task_struct; struct rtas_args; +struct lppaca; /* * Defines the layout of the paca. --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/paravirt.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/paravirt.h @@ -6,6 +6,7 @@ #include #ifdef CONFIG_PPC64 #include +#include #include #endif --- linux-intel-opt-6.5.0.orig/arch/powerpc/include/asm/plpar_wrappers.h +++ linux-intel-opt-6.5.0/arch/powerpc/include/asm/plpar_wrappers.h @@ -9,6 +9,7 @@ #include #include +#include #include static inline long poll_pending(void) --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/entry_32.S +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/entry_32.S @@ -138,8 +138,9 @@ lis r4,icache_44x_need_flush@ha lwz r5,icache_44x_need_flush@l(r4) cmplwi cr0,r5,0 - bne- 2f + bne- .L44x_icache_flush #endif /* CONFIG_PPC_47x */ +.L44x_icache_flush_return: kuep_unlock lwz r4,_LINK(r1) lwz r5,_CCR(r1) @@ -173,10 +174,11 @@ b 1b #ifdef CONFIG_44x -2: li r7,0 +.L44x_icache_flush: + li r7,0 iccci r0,r0 stw r7,icache_44x_need_flush@l(r4) - b 1b + b .L44x_icache_flush_return #endif /* CONFIG_44x */ .globl ret_from_fork --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/fadump.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/fadump.c @@ -654,6 +654,7 @@ return ret; error_out: fw_dump.fadump_enabled = 0; + fw_dump.reserve_dump_area_size = 0; return 0; } --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/hw_breakpoint.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/hw_breakpoint.c @@ -505,11 +505,13 @@ struct arch_hw_breakpoint *info; int i; + preempt_disable(); + for (i = 0; i < nr_wp_slots(); i++) { if (unlikely(tsk->thread.last_hit_ubp[i])) goto reset; } - return; + goto out; reset: regs_set_return_msr(regs, regs->msr & ~MSR_SE); @@ -518,6 +520,9 @@ __set_breakpoint(i, info); tsk->thread.last_hit_ubp[i] = NULL; } + +out: + preempt_enable(); } static bool is_larx_stcx_instr(int type) @@ -632,6 +637,11 @@ } } +/* + * Handle a DABR or DAWR exception. + * + * Called in atomic context. + */ int hw_breakpoint_handler(struct die_args *args) { bool err = false; @@ -758,6 +768,8 @@ /* * Handle single-step exceptions following a DABR hit. + * + * Called in atomic context. */ static int single_step_dabr_instruction(struct die_args *args) { @@ -815,6 +827,8 @@ /* * Handle debug exception notifications. + * + * Called in atomic context. */ int hw_breakpoint_exceptions_notify( struct notifier_block *unused, unsigned long val, void *data) --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/hw_breakpoint_constraints.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/hw_breakpoint_constraints.c @@ -131,8 +131,13 @@ int *type, int *size, unsigned long *ea) { struct instruction_op op; + int err; - if (__get_user_instr(*instr, (void __user *)regs->nip)) + pagefault_disable(); + err = __get_user_instr(*instr, (void __user *)regs->nip); + pagefault_enable(); + + if (err) return; analyse_instr(&op, regs, *instr); --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/iommu.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/iommu.c @@ -172,17 +172,28 @@ return 0; } -static struct notifier_block fail_iommu_bus_notifier = { +/* + * PCI and VIO buses need separate notifier_block structs, since they're linked + * list nodes. Sharing a notifier_block would mean that any notifiers later + * registered for PCI buses would also get called by VIO buses and vice versa. + */ +static struct notifier_block fail_iommu_pci_bus_notifier = { .notifier_call = fail_iommu_bus_notify }; +#ifdef CONFIG_IBMVIO +static struct notifier_block fail_iommu_vio_bus_notifier = { + .notifier_call = fail_iommu_bus_notify +}; +#endif + static int __init fail_iommu_setup(void) { #ifdef CONFIG_PCI - bus_register_notifier(&pci_bus_type, &fail_iommu_bus_notifier); + bus_register_notifier(&pci_bus_type, &fail_iommu_pci_bus_notifier); #endif #ifdef CONFIG_IBMVIO - bus_register_notifier(&vio_bus_type, &fail_iommu_bus_notifier); + bus_register_notifier(&vio_bus_type, &fail_iommu_vio_bus_notifier); #endif return 0; --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/module_64.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/module_64.c @@ -347,12 +347,13 @@ static void dedotify_versions(struct modversion_info *vers, unsigned long size) { - struct modversion_info *end; + struct modversion_info *end = (void *)vers + size; - for (end = (void *)vers + size; vers < end; vers++) + for (; vers < end && vers->next; vers = (void *)vers + vers->next) { if (vers->name[0] == '.') { memmove(vers->name, vers->name+1, strlen(vers->name)); } + } } /* --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/pci-common.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/pci-common.c @@ -360,6 +360,7 @@ } return NULL; } +EXPORT_SYMBOL(pci_find_hose_for_OF_device); struct pci_controller *pci_find_controller_for_domain(int domain_nr) { @@ -1631,6 +1632,7 @@ { return pci_bus_find_capability(fake_pci_bus(hose, bus), devfn, cap); } +EXPORT_SYMBOL_GPL(early_find_capability); struct device_node *pcibios_get_phb_of_node(struct pci_bus *bus) { --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/setup-common.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/setup-common.c @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -68,6 +69,7 @@ #include #include #include +#include #include "setup.h" @@ -913,6 +915,16 @@ */ initialize_cache_info(); + /* + * Lock down the kernel if booted in secure mode. This is required to + * maintain kernel integrity. + */ + if (IS_ENABLED(CONFIG_LOCK_DOWN_IN_SECURE_BOOT)) { + if (is_ppc_secureboot_enabled()) + security_lock_kernel_down("PowerNV Secure Boot mode", + LOCKDOWN_INTEGRITY_MAX); + } + /* Initialize RTAS if available. */ rtas_initialize(); --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/stacktrace.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/stacktrace.c @@ -73,29 +73,12 @@ bool firstframe; stack_end = stack_page + THREAD_SIZE; - if (!is_idle_task(task)) { - /* - * For user tasks, this is the SP value loaded on - * kernel entry, see "PACAKSAVE(r13)" in _switch() and - * system_call_common(). - * - * Likewise for non-swapper kernel threads, - * this also happens to be the top of the stack - * as setup by copy_thread(). - * - * Note that stack backlinks are not properly setup by - * copy_thread() and thus, a forked task() will have - * an unreliable stack trace until it's been - * _switch()'ed to for the first time. - */ - stack_end -= STACK_USER_INT_FRAME_SIZE; - } else { - /* - * idle tasks have a custom stack layout, - * c.f. cpu_idle_thread_init(). - */ + + // See copy_thread() for details. + if (task->flags & PF_KTHREAD) stack_end -= STACK_FRAME_MIN_SIZE; - } + else + stack_end -= STACK_USER_INT_FRAME_SIZE; if (task == current) sp = current_stack_frame(); @@ -221,8 +204,8 @@ } } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { - nmi_trigger_cpumask_backtrace(mask, exclude_self, raise_backtrace_ipi); + nmi_trigger_cpumask_backtrace(mask, exclude_cpu, raise_backtrace_ipi); } #endif /* defined(CONFIG_PPC_BOOK3S_64) && defined(CONFIG_NMI_IPI) */ --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/traps.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/traps.c @@ -1512,23 +1512,11 @@ return; } - if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE) && user_mode(regs)) { - ppc_inst_t insn; - - if (get_user_instr(insn, (void __user *)regs->nip)) { - _exception(SIGSEGV, regs, SEGV_MAPERR, regs->nip); - return; - } - - if (ppc_inst_primary_opcode(insn) == 31 && - get_xop(ppc_inst_val(insn)) == OP_31_XOP_HASHCHK) { - _exception(SIGILL, regs, ILL_ILLOPN, regs->nip); - return; - } + /* User mode considers other cases after enabling IRQs */ + if (!user_mode(regs)) { + _exception(SIGTRAP, regs, TRAP_BRKPT, regs->nip); + return; } - - _exception(SIGTRAP, regs, TRAP_BRKPT, regs->nip); - return; } #ifdef CONFIG_PPC_TRANSACTIONAL_MEM if (reason & REASON_TM) { @@ -1561,16 +1549,44 @@ /* * If we took the program check in the kernel skip down to sending a - * SIGILL. The subsequent cases all relate to emulating instructions - * which we should only do for userspace. We also do not want to enable - * interrupts for kernel faults because that might lead to further - * faults, and loose the context of the original exception. + * SIGILL. The subsequent cases all relate to user space, such as + * emulating instructions which we should only do for user space. We + * also do not want to enable interrupts for kernel faults because that + * might lead to further faults, and loose the context of the original + * exception. */ if (!user_mode(regs)) goto sigill; interrupt_cond_local_irq_enable(regs); + /* + * (reason & REASON_TRAP) is mostly handled before enabling IRQs, + * except get_user_instr() can sleep so we cannot reliably inspect the + * current instruction in that context. Now that we know we are + * handling a user space trap and can sleep, we can check if the trap + * was a hashchk failure. + */ + if (reason & REASON_TRAP) { + if (cpu_has_feature(CPU_FTR_DEXCR_NPHIE)) { + ppc_inst_t insn; + + if (get_user_instr(insn, (void __user *)regs->nip)) { + _exception(SIGSEGV, regs, SEGV_MAPERR, regs->nip); + return; + } + + if (ppc_inst_primary_opcode(insn) == 31 && + get_xop(ppc_inst_val(insn)) == OP_31_XOP_HASHCHK) { + _exception(SIGILL, regs, ILL_ILLOPN, regs->nip); + return; + } + } + + _exception(SIGTRAP, regs, TRAP_BRKPT, regs->nip); + return; + } + /* (reason & REASON_ILLEGAL) would be the obvious thing here, * but there seems to be a hardware bug on the 405GP (RevD) * that means ESR is sometimes set incorrectly - either to --- linux-intel-opt-6.5.0.orig/arch/powerpc/kernel/watchdog.c +++ linux-intel-opt-6.5.0/arch/powerpc/kernel/watchdog.c @@ -245,7 +245,7 @@ __cpumask_clear_cpu(c, &wd_smp_cpus_ipi); } } else { - trigger_allbutself_cpu_backtrace(); + trigger_allbutcpu_cpu_backtrace(cpu); cpumask_clear(&wd_smp_cpus_ipi); } @@ -416,7 +416,7 @@ xchg(&__wd_nmi_output, 1); // see wd_lockup_ipi if (sysctl_hardlockup_all_cpu_backtrace) - trigger_allbutself_cpu_backtrace(); + trigger_allbutcpu_cpu_backtrace(cpu); if (hardlockup_panic) nmi_panic(regs, "Hard LOCKUP"); --- linux-intel-opt-6.5.0.orig/arch/powerpc/kvm/Kconfig +++ linux-intel-opt-6.5.0/arch/powerpc/kvm/Kconfig @@ -42,7 +42,7 @@ config KVM_BOOK3S_PR_POSSIBLE bool select KVM_MMIO - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER config KVM_BOOK3S_HV_POSSIBLE bool @@ -85,7 +85,7 @@ tristate "KVM for POWER7 and later using hypervisor mode in host" depends on KVM_BOOK3S_64 && PPC_POWERNV select KVM_BOOK3S_HV_POSSIBLE - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER select CMA help Support running unmodified book3s_64 guest kernels in @@ -194,7 +194,7 @@ depends on !CONTEXT_TRACKING_USER select KVM select KVM_MMIO - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER help Support running unmodified E500 guest kernels in virtual machines on E500v2 host processors. @@ -211,7 +211,7 @@ select KVM select KVM_MMIO select KVM_BOOKE_HV - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER help Support running unmodified E500MC/E5500/E6500 guest kernels in virtual machines on E500MC/E5500/E6500 host processors. --- linux-intel-opt-6.5.0.orig/arch/powerpc/kvm/book3s_hv.c +++ linux-intel-opt-6.5.0/arch/powerpc/kvm/book3s_hv.c @@ -6084,7 +6084,7 @@ } srcu_idx = srcu_read_lock(&kvm->srcu); - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { struct kvm_memory_slot *memslot; struct kvm_memslots *slots = __kvm_memslots(kvm, i); int bkt; --- linux-intel-opt-6.5.0.orig/arch/powerpc/kvm/book3s_hv_ras.c +++ linux-intel-opt-6.5.0/arch/powerpc/kvm/book3s_hv_ras.c @@ -9,6 +9,7 @@ #include #include #include +#include #include #include #include --- linux-intel-opt-6.5.0.orig/arch/powerpc/kvm/powerpc.c +++ linux-intel-opt-6.5.0/arch/powerpc/kvm/powerpc.c @@ -634,10 +634,9 @@ case KVM_CAP_SYNC_MMU: #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE r = hv_enabled; -#elif defined(KVM_ARCH_WANT_MMU_NOTIFIER) - r = 1; #else - r = 0; + BUILD_BUG_ON(!IS_ENABLED(CONFIG_KVM_GENERIC_MMU_NOTIFIER)); + r = 1; #endif break; #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE --- linux-intel-opt-6.5.0.orig/arch/powerpc/lib/sstep.c +++ linux-intel-opt-6.5.0/arch/powerpc/lib/sstep.c @@ -8,6 +8,7 @@ #include #include #include +#include #include #include #include --- linux-intel-opt-6.5.0.orig/arch/powerpc/mm/book3s64/radix_tlb.c +++ linux-intel-opt-6.5.0/arch/powerpc/mm/book3s64/radix_tlb.c @@ -127,21 +127,6 @@ trace_tlbie(0, 0, rb, rs, ric, prs, r); } -static __always_inline void __tlbie_pid_lpid(unsigned long pid, - unsigned long lpid, - unsigned long ric) -{ - unsigned long rb, rs, prs, r; - - rb = PPC_BIT(53); /* IS = 1 */ - rs = (pid << PPC_BITLSHIFT(31)) | (lpid & ~(PPC_BITMASK(0, 31))); - prs = 1; /* process scoped */ - r = 1; /* radix format */ - - asm volatile(PPC_TLBIE_5(%0, %4, %3, %2, %1) - : : "r"(rb), "i"(r), "i"(prs), "i"(ric), "r"(rs) : "memory"); - trace_tlbie(0, 0, rb, rs, ric, prs, r); -} static __always_inline void __tlbie_lpid(unsigned long lpid, unsigned long ric) { unsigned long rb,rs,prs,r; @@ -202,23 +187,6 @@ trace_tlbie(0, 0, rb, rs, ric, prs, r); } -static __always_inline void __tlbie_va_lpid(unsigned long va, unsigned long pid, - unsigned long lpid, - unsigned long ap, unsigned long ric) -{ - unsigned long rb, rs, prs, r; - - rb = va & ~(PPC_BITMASK(52, 63)); - rb |= ap << PPC_BITLSHIFT(58); - rs = (pid << PPC_BITLSHIFT(31)) | (lpid & ~(PPC_BITMASK(0, 31))); - prs = 1; /* process scoped */ - r = 1; /* radix format */ - - asm volatile(PPC_TLBIE_5(%0, %4, %3, %2, %1) - : : "r"(rb), "i"(r), "i"(prs), "i"(ric), "r"(rs) : "memory"); - trace_tlbie(0, 0, rb, rs, ric, prs, r); -} - static __always_inline void __tlbie_lpid_va(unsigned long va, unsigned long lpid, unsigned long ap, unsigned long ric) { @@ -264,22 +232,6 @@ } } -static inline void fixup_tlbie_va_range_lpid(unsigned long va, - unsigned long pid, - unsigned long lpid, - unsigned long ap) -{ - if (cpu_has_feature(CPU_FTR_P9_TLBIE_ERAT_BUG)) { - asm volatile("ptesync" : : : "memory"); - __tlbie_pid_lpid(0, lpid, RIC_FLUSH_TLB); - } - - if (cpu_has_feature(CPU_FTR_P9_TLBIE_STQ_BUG)) { - asm volatile("ptesync" : : : "memory"); - __tlbie_va_lpid(va, pid, lpid, ap, RIC_FLUSH_TLB); - } -} - static inline void fixup_tlbie_pid(unsigned long pid) { /* @@ -299,26 +251,6 @@ } } -static inline void fixup_tlbie_pid_lpid(unsigned long pid, unsigned long lpid) -{ - /* - * We can use any address for the invalidation, pick one which is - * probably unused as an optimisation. - */ - unsigned long va = ((1UL << 52) - 1); - - if (cpu_has_feature(CPU_FTR_P9_TLBIE_ERAT_BUG)) { - asm volatile("ptesync" : : : "memory"); - __tlbie_pid_lpid(0, lpid, RIC_FLUSH_TLB); - } - - if (cpu_has_feature(CPU_FTR_P9_TLBIE_STQ_BUG)) { - asm volatile("ptesync" : : : "memory"); - __tlbie_va_lpid(va, pid, lpid, mmu_get_ap(MMU_PAGE_64K), - RIC_FLUSH_TLB); - } -} - static inline void fixup_tlbie_lpid_va(unsigned long va, unsigned long lpid, unsigned long ap) { @@ -416,31 +348,6 @@ asm volatile("eieio; tlbsync; ptesync": : :"memory"); } -static inline void _tlbie_pid_lpid(unsigned long pid, unsigned long lpid, - unsigned long ric) -{ - asm volatile("ptesync" : : : "memory"); - - /* - * Workaround the fact that the "ric" argument to __tlbie_pid - * must be a compile-time contraint to match the "i" constraint - * in the asm statement. - */ - switch (ric) { - case RIC_FLUSH_TLB: - __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_TLB); - fixup_tlbie_pid_lpid(pid, lpid); - break; - case RIC_FLUSH_PWC: - __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_PWC); - break; - case RIC_FLUSH_ALL: - default: - __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_ALL); - fixup_tlbie_pid_lpid(pid, lpid); - } - asm volatile("eieio; tlbsync; ptesync" : : : "memory"); -} struct tlbiel_pid { unsigned long pid; unsigned long ric; @@ -566,20 +473,6 @@ fixup_tlbie_va_range(addr - page_size, pid, ap); } -static inline void __tlbie_va_range_lpid(unsigned long start, unsigned long end, - unsigned long pid, unsigned long lpid, - unsigned long page_size, - unsigned long psize) -{ - unsigned long addr; - unsigned long ap = mmu_get_ap(psize); - - for (addr = start; addr < end; addr += page_size) - __tlbie_va_lpid(addr, pid, lpid, ap, RIC_FLUSH_TLB); - - fixup_tlbie_va_range_lpid(addr - page_size, pid, lpid, ap); -} - static __always_inline void _tlbie_va(unsigned long va, unsigned long pid, unsigned long psize, unsigned long ric) { @@ -660,18 +553,6 @@ asm volatile("eieio; tlbsync; ptesync": : :"memory"); } -static inline void _tlbie_va_range_lpid(unsigned long start, unsigned long end, - unsigned long pid, unsigned long lpid, - unsigned long page_size, - unsigned long psize, bool also_pwc) -{ - asm volatile("ptesync" : : : "memory"); - if (also_pwc) - __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_PWC); - __tlbie_va_range_lpid(start, end, pid, lpid, page_size, psize); - asm volatile("eieio; tlbsync; ptesync" : : : "memory"); -} - static inline void _tlbiel_va_range_multicast(struct mm_struct *mm, unsigned long start, unsigned long end, unsigned long pid, unsigned long page_size, @@ -1486,6 +1367,127 @@ } #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE +static __always_inline void __tlbie_pid_lpid(unsigned long pid, + unsigned long lpid, + unsigned long ric) +{ + unsigned long rb, rs, prs, r; + + rb = PPC_BIT(53); /* IS = 1 */ + rs = (pid << PPC_BITLSHIFT(31)) | (lpid & ~(PPC_BITMASK(0, 31))); + prs = 1; /* process scoped */ + r = 1; /* radix format */ + + asm volatile(PPC_TLBIE_5(%0, %4, %3, %2, %1) + : : "r"(rb), "i"(r), "i"(prs), "i"(ric), "r"(rs) : "memory"); + trace_tlbie(0, 0, rb, rs, ric, prs, r); +} + +static __always_inline void __tlbie_va_lpid(unsigned long va, unsigned long pid, + unsigned long lpid, + unsigned long ap, unsigned long ric) +{ + unsigned long rb, rs, prs, r; + + rb = va & ~(PPC_BITMASK(52, 63)); + rb |= ap << PPC_BITLSHIFT(58); + rs = (pid << PPC_BITLSHIFT(31)) | (lpid & ~(PPC_BITMASK(0, 31))); + prs = 1; /* process scoped */ + r = 1; /* radix format */ + + asm volatile(PPC_TLBIE_5(%0, %4, %3, %2, %1) + : : "r"(rb), "i"(r), "i"(prs), "i"(ric), "r"(rs) : "memory"); + trace_tlbie(0, 0, rb, rs, ric, prs, r); +} + +static inline void fixup_tlbie_pid_lpid(unsigned long pid, unsigned long lpid) +{ + /* + * We can use any address for the invalidation, pick one which is + * probably unused as an optimisation. + */ + unsigned long va = ((1UL << 52) - 1); + + if (cpu_has_feature(CPU_FTR_P9_TLBIE_ERAT_BUG)) { + asm volatile("ptesync" : : : "memory"); + __tlbie_pid_lpid(0, lpid, RIC_FLUSH_TLB); + } + + if (cpu_has_feature(CPU_FTR_P9_TLBIE_STQ_BUG)) { + asm volatile("ptesync" : : : "memory"); + __tlbie_va_lpid(va, pid, lpid, mmu_get_ap(MMU_PAGE_64K), + RIC_FLUSH_TLB); + } +} + +static inline void _tlbie_pid_lpid(unsigned long pid, unsigned long lpid, + unsigned long ric) +{ + asm volatile("ptesync" : : : "memory"); + + /* + * Workaround the fact that the "ric" argument to __tlbie_pid + * must be a compile-time contraint to match the "i" constraint + * in the asm statement. + */ + switch (ric) { + case RIC_FLUSH_TLB: + __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_TLB); + fixup_tlbie_pid_lpid(pid, lpid); + break; + case RIC_FLUSH_PWC: + __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_PWC); + break; + case RIC_FLUSH_ALL: + default: + __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_ALL); + fixup_tlbie_pid_lpid(pid, lpid); + } + asm volatile("eieio; tlbsync; ptesync" : : : "memory"); +} + +static inline void fixup_tlbie_va_range_lpid(unsigned long va, + unsigned long pid, + unsigned long lpid, + unsigned long ap) +{ + if (cpu_has_feature(CPU_FTR_P9_TLBIE_ERAT_BUG)) { + asm volatile("ptesync" : : : "memory"); + __tlbie_pid_lpid(0, lpid, RIC_FLUSH_TLB); + } + + if (cpu_has_feature(CPU_FTR_P9_TLBIE_STQ_BUG)) { + asm volatile("ptesync" : : : "memory"); + __tlbie_va_lpid(va, pid, lpid, ap, RIC_FLUSH_TLB); + } +} + +static inline void __tlbie_va_range_lpid(unsigned long start, unsigned long end, + unsigned long pid, unsigned long lpid, + unsigned long page_size, + unsigned long psize) +{ + unsigned long addr; + unsigned long ap = mmu_get_ap(psize); + + for (addr = start; addr < end; addr += page_size) + __tlbie_va_lpid(addr, pid, lpid, ap, RIC_FLUSH_TLB); + + fixup_tlbie_va_range_lpid(addr - page_size, pid, lpid, ap); +} + +static inline void _tlbie_va_range_lpid(unsigned long start, unsigned long end, + unsigned long pid, unsigned long lpid, + unsigned long page_size, + unsigned long psize, bool also_pwc) +{ + asm volatile("ptesync" : : : "memory"); + if (also_pwc) + __tlbie_pid_lpid(pid, lpid, RIC_FLUSH_PWC); + __tlbie_va_range_lpid(start, end, pid, lpid, page_size, psize); + asm volatile("eieio; tlbsync; ptesync" : : : "memory"); +} + /* * Performs process-scoped invalidations for a given LPID * as part of H_RPT_INVALIDATE hcall. --- linux-intel-opt-6.5.0.orig/arch/powerpc/mm/book3s64/slb.c +++ linux-intel-opt-6.5.0/arch/powerpc/mm/book3s64/slb.c @@ -13,6 +13,7 @@ #include #include #include +#include #include #include #include --- linux-intel-opt-6.5.0.orig/arch/powerpc/perf/core-fsl-emb.c +++ linux-intel-opt-6.5.0/arch/powerpc/perf/core-fsl-emb.c @@ -645,7 +645,6 @@ struct cpu_hw_events *cpuhw = this_cpu_ptr(&cpu_hw_events); struct perf_event *event; unsigned long val; - int found = 0; for (i = 0; i < ppmu->n_counter; ++i) { event = cpuhw->event[i]; @@ -654,7 +653,6 @@ if ((int)val < 0) { if (event) { /* event has overflowed */ - found = 1; record_and_restart(event, val, regs); } else { /* @@ -672,11 +670,13 @@ isync(); } -void hw_perf_event_setup(int cpu) +static int fsl_emb_pmu_prepare_cpu(unsigned int cpu) { struct cpu_hw_events *cpuhw = &per_cpu(cpu_hw_events, cpu); memset(cpuhw, 0, sizeof(*cpuhw)); + + return 0; } int register_fsl_emb_pmu(struct fsl_emb_pmu *pmu) @@ -689,6 +689,8 @@ pmu->name); perf_pmu_register(&fsl_emb_pmu, "cpu", PERF_TYPE_RAW); + cpuhp_setup_state(CPUHP_PERF_POWER, "perf/powerpc:prepare", + fsl_emb_pmu_prepare_cpu, NULL); return 0; } --- linux-intel-opt-6.5.0.orig/arch/powerpc/perf/hv-24x7.c +++ linux-intel-opt-6.5.0/arch/powerpc/perf/hv-24x7.c @@ -1418,7 +1418,7 @@ } domain = event_get_domain(event); - if (domain >= HV_PERF_DOMAIN_MAX) { + if (domain == 0 || domain >= HV_PERF_DOMAIN_MAX) { pr_devel("invalid domain %d\n", domain); return -EINVAL; } --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/hvCall.S +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/hvCall.S @@ -91,6 +91,7 @@ b 1f; \ END_FTR_SECTION(0, 1); \ LOAD_REG_ADDR(r12, hcall_tracepoint_refcount) ; \ + ld r12,0(r12); \ std r12,32(r1); \ cmpdi r12,0; \ bne- LABEL; \ @@ -184,7 +185,6 @@ plpar_hcall_trace: HCALL_INST_PRECALL(R5) - std r4,STK_PARAM(R4)(r1) mr r0,r4 mr r4,r5 @@ -196,7 +196,7 @@ HVSC - ld r12,STK_PARAM(R4)(r1) + ld r12,STACK_FRAME_MIN_SIZE+STK_PARAM(R4)(r1) std r4,0(r12) std r5,8(r12) std r6,16(r12) @@ -296,7 +296,6 @@ plpar_hcall9_trace: HCALL_INST_PRECALL(R5) - std r4,STK_PARAM(R4)(r1) mr r0,r4 mr r4,r5 --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/ibmebus.c +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/ibmebus.c @@ -460,6 +460,7 @@ if (err) { printk(KERN_WARNING "%s: device_register returned %i\n", __func__, err); + put_device(&ibmebus_bus_device); bus_unregister(&ibmebus_bus_type); return err; --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/lpar.c +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/lpar.c @@ -639,16 +639,8 @@ static int __init vcpudispatch_stats_procfs_init(void) { - /* - * Avoid smp_processor_id while preemptible. All CPUs should have - * the same value for lppaca_shared_proc. - */ - preempt_disable(); - if (!lppaca_shared_proc(get_lppaca())) { - preempt_enable(); + if (!lppaca_shared_proc()) return 0; - } - preempt_enable(); if (!proc_create("powerpc/vcpudispatch_stats", 0600, NULL, &vcpudispatch_stats_proc_ops)) --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/lparcfg.c +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/lparcfg.c @@ -206,7 +206,7 @@ ppp_data.active_system_procs); /* pool related entries are appropriate for shared configs */ - if (lppaca_shared_proc(get_lppaca())) { + if (lppaca_shared_proc()) { unsigned long pool_idle_time, pool_procs; seq_printf(m, "pool=%d\n", ppp_data.pool_num); @@ -560,7 +560,7 @@ partition_potential_processors); seq_printf(m, "shared_processor_mode=%d\n", - lppaca_shared_proc(get_lppaca())); + lppaca_shared_proc()); #ifdef CONFIG_PPC_64S_HASH_MMU if (!radix_enabled()) --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/setup.c +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/setup.c @@ -847,7 +847,7 @@ if (firmware_has_feature(FW_FEATURE_LPAR)) { vpa_init(boot_cpuid); - if (lppaca_shared_proc(get_lppaca())) { + if (lppaca_shared_proc()) { static_branch_enable(&shared_processor); pv_spinlocks_init(); #ifdef CONFIG_PARAVIRT_TIME_ACCOUNTING --- linux-intel-opt-6.5.0.orig/arch/powerpc/platforms/pseries/vio.c +++ linux-intel-opt-6.5.0/arch/powerpc/platforms/pseries/vio.c @@ -39,7 +39,6 @@ .name = "vio", .type = "", .dev.init_name = "vio", - .dev.bus = &vio_bus_type, }; #ifdef CONFIG_PPC_SMLPAR --- linux-intel-opt-6.5.0.orig/arch/powerpc/sysdev/mpc5xxx_clocks.c +++ linux-intel-opt-6.5.0/arch/powerpc/sysdev/mpc5xxx_clocks.c @@ -25,8 +25,10 @@ fwnode_for_each_parent_node(fwnode, parent) { ret = fwnode_property_read_u32(parent, "bus-frequency", &bus_freq); - if (!ret) + if (!ret) { + fwnode_handle_put(parent); return bus_freq; + } } return 0; --- linux-intel-opt-6.5.0.orig/arch/powerpc/xmon/xmon.c +++ linux-intel-opt-6.5.0/arch/powerpc/xmon/xmon.c @@ -58,6 +58,7 @@ #ifdef CONFIG_PPC64 #include #include +#include #endif #include "nonstdio.h" --- linux-intel-opt-6.5.0.orig/arch/riscv/Kconfig +++ linux-intel-opt-6.5.0/arch/riscv/Kconfig @@ -62,6 +62,7 @@ select COMMON_CLK select CPU_PM if CPU_IDLE || HIBERNATION select EDAC_SUPPORT + select FRAME_POINTER if PERF_EVENTS || (FUNCTION_TRACER && !DYNAMIC_FTRACE) select GENERIC_ARCH_TOPOLOGY select GENERIC_ATOMIC64 if !64BIT select GENERIC_CLOCKEVENTS_BROADCAST if SMP --- linux-intel-opt-6.5.0.orig/arch/riscv/Makefile +++ linux-intel-opt-6.5.0/arch/riscv/Makefile @@ -6,7 +6,6 @@ # for more details. # -OBJCOPYFLAGS := -O binary LDFLAGS_vmlinux := -z norelro ifeq ($(CONFIG_RELOCATABLE),y) LDFLAGS_vmlinux += -shared -Bsymbolic -z notext --emit-relocs @@ -87,9 +86,6 @@ ifeq ($(CONFIG_CMODEL_MEDANY),y) KBUILD_CFLAGS += -mcmodel=medany endif -ifeq ($(CONFIG_PERF_EVENTS),y) - KBUILD_CFLAGS += -fno-omit-frame-pointer -endif # Avoid generating .eh_frame sections. KBUILD_CFLAGS += -fno-asynchronous-unwind-tables -fno-unwind-tables --- linux-intel-opt-6.5.0.orig/arch/riscv/boot/dts/microchip/mpfs-icicle-kit.dts +++ linux-intel-opt-6.5.0/arch/riscv/boot/dts/microchip/mpfs-icicle-kit.dts @@ -167,9 +167,11 @@ status = "okay"; }; +/* UBUNTU: PCIe support is not yet ready, so disable it for now &pcie { status = "okay"; }; +*/ &qspi { status = "okay"; --- linux-intel-opt-6.5.0.orig/arch/riscv/boot/dts/sifive/fu740-c000.dtsi +++ linux-intel-opt-6.5.0/arch/riscv/boot/dts/sifive/fu740-c000.dtsi @@ -39,7 +39,7 @@ }; }; cpu1: cpu@1 { - compatible = "sifive,bullet0", "riscv"; + compatible = "sifive,u74-mc", "sifive,bullet0", "riscv"; d-cache-block-size = <64>; d-cache-sets = <64>; d-cache-size = <32768>; @@ -63,7 +63,7 @@ }; }; cpu2: cpu@2 { - compatible = "sifive,bullet0", "riscv"; + compatible = "sifive,u74-mc", "sifive,bullet0", "riscv"; d-cache-block-size = <64>; d-cache-sets = <64>; d-cache-size = <32768>; @@ -87,7 +87,7 @@ }; }; cpu3: cpu@3 { - compatible = "sifive,bullet0", "riscv"; + compatible = "sifive,u74-mc", "sifive,bullet0", "riscv"; d-cache-block-size = <64>; d-cache-sets = <64>; d-cache-size = <32768>; @@ -111,7 +111,7 @@ }; }; cpu4: cpu@4 { - compatible = "sifive,bullet0", "riscv"; + compatible = "sifive,u74-mc", "sifive,bullet0", "riscv"; d-cache-block-size = <64>; d-cache-sets = <64>; d-cache-size = <32768>; --- linux-intel-opt-6.5.0.orig/arch/riscv/boot/dts/sifive/hifive-unleashed-a00-microsemi.dts +++ linux-intel-opt-6.5.0/arch/riscv/boot/dts/sifive/hifive-unleashed-a00-microsemi.dts @@ -0,0 +1,28 @@ +// SPDX-License-Identifier: (GPL-2.0 OR MIT) + +#include "hifive-unleashed-a00.dts" + +/ { + soc { + pcie: pcie@2030000000 { + #address-cells = <0x3>; + #interrupt-cells = <0x1>; + #size-cells = <0x2>; + compatible = "microsemi,ms-pf-axi-pcie-host"; + device_type = "pci"; + bus-range = <0x01 0x7f>; + interrupt-map = <0 0 0 1 &ms_pcie_intc 0 0 0 0 2 &ms_pcie_intc 1 0 0 0 3 &ms_pcie_intc 2 0 0 0 4 &ms_pcie_intc 3>; + interrupt-map-mask = <0 0 0 7>; + interrupt-parent = <&plic0>; + interrupts = <32>; + ranges = <0x3000000 0x0 0x40000000 0x0 0x40000000 0x0 0x20000000>; + reg = <0x20 0x30000000 0x0 0x4000000 0x20 0x0 0x0 0x100000>; + reg-names = "control", "apb"; + ms_pcie_intc: interrupt-controller { + #address-cells = <0>; + #interrupt-cells = <1>; + interrupt-controller; + }; + }; + }; +}; --- linux-intel-opt-6.5.0.orig/arch/riscv/include/asm/errata_list.h +++ linux-intel-opt-6.5.0/arch/riscv/include/asm/errata_list.h @@ -100,7 +100,7 @@ * | 31 - 25 | 24 - 20 | 19 - 15 | 14 - 12 | 11 - 7 | 6 - 0 | * 0000001 01001 rs1 000 00000 0001011 * dcache.cva rs1 (clean, virtual address) - * 0000001 00100 rs1 000 00000 0001011 + * 0000001 00101 rs1 000 00000 0001011 * * dcache.cipa rs1 (clean then invalidate, physical address) * | 31 - 25 | 24 - 20 | 19 - 15 | 14 - 12 | 11 - 7 | 6 - 0 | @@ -113,7 +113,7 @@ * 0000000 11001 00000 000 00000 0001011 */ #define THEAD_inval_A0 ".long 0x0265000b" -#define THEAD_clean_A0 ".long 0x0245000b" +#define THEAD_clean_A0 ".long 0x0255000b" #define THEAD_flush_A0 ".long 0x0275000b" #define THEAD_SYNC_S ".long 0x0190000b" --- linux-intel-opt-6.5.0.orig/arch/riscv/include/asm/kprobes.h +++ linux-intel-opt-6.5.0/arch/riscv/include/asm/kprobes.h @@ -40,6 +40,15 @@ int kprobe_fault_handler(struct pt_regs *regs, unsigned int trapnr); bool kprobe_breakpoint_handler(struct pt_regs *regs); bool kprobe_single_step_handler(struct pt_regs *regs); +#else +static inline bool kprobe_breakpoint_handler(struct pt_regs *regs) +{ + return false; +} +static inline bool kprobe_single_step_handler(struct pt_regs *regs) +{ + return false; +} #endif /* CONFIG_KPROBES */ #endif /* _ASM_RISCV_KPROBES_H */ --- linux-intel-opt-6.5.0.orig/arch/riscv/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/riscv/include/asm/kvm_host.h @@ -249,8 +249,6 @@ static inline void kvm_arch_sync_events(struct kvm *kvm) {} static inline void kvm_arch_sched_in(struct kvm_vcpu *vcpu, int cpu) {} -#define KVM_ARCH_WANT_MMU_NOTIFIER - #define KVM_RISCV_GSTAGE_TLB_MIN_ORDER 12 void kvm_riscv_local_hfence_gvma_vmid_gpa(unsigned long vmid, --- linux-intel-opt-6.5.0.orig/arch/riscv/include/asm/uprobes.h +++ linux-intel-opt-6.5.0/arch/riscv/include/asm/uprobes.h @@ -34,7 +34,18 @@ bool simulate; }; +#ifdef CONFIG_UPROBES bool uprobe_breakpoint_handler(struct pt_regs *regs); bool uprobe_single_step_handler(struct pt_regs *regs); +#else +static inline bool uprobe_breakpoint_handler(struct pt_regs *regs) +{ + return false; +} +static inline bool uprobe_single_step_handler(struct pt_regs *regs) +{ + return false; +} +#endif /* CONFIG_UPROBES */ #endif /* _ASM_RISCV_UPROBES_H */ --- linux-intel-opt-6.5.0.orig/arch/riscv/include/uapi/asm/ptrace.h +++ linux-intel-opt-6.5.0/arch/riscv/include/uapi/asm/ptrace.h @@ -103,13 +103,18 @@ * In signal handler, datap will be set a correct user stack offset * and vector registers will be copied to the address of datap * pointer. - * - * In ptrace syscall, datap will be set to zero and the vector - * registers will be copied to the address right after this - * structure. */ }; +struct __riscv_v_regset_state { + unsigned long vstart; + unsigned long vl; + unsigned long vtype; + unsigned long vcsr; + unsigned long vlenb; + char vreg[]; +}; + /* * According to spec: The number of bits in a single vector register, * VLEN >= ELEN, which must be a power of 2, and must be no greater than --- linux-intel-opt-6.5.0.orig/arch/riscv/kernel/elf_kexec.c +++ linux-intel-opt-6.5.0/arch/riscv/kernel/elf_kexec.c @@ -98,7 +98,13 @@ kbuf.image = image; kbuf.buf_min = lowest_paddr; kbuf.buf_max = ULONG_MAX; - kbuf.buf_align = PAGE_SIZE; + + /* + * Current riscv boot protocol requires 2MB alignment for + * RV64 and 4MB alignment for RV32 + * + */ + kbuf.buf_align = PMD_SIZE; kbuf.mem = KEXEC_BUF_MEM_UNKNOWN; kbuf.memsz = ALIGN(kernel_len, PAGE_SIZE); kbuf.top_down = false; --- linux-intel-opt-6.5.0.orig/arch/riscv/kernel/irq.c +++ linux-intel-opt-6.5.0/arch/riscv/kernel/irq.c @@ -60,7 +60,7 @@ } #endif /* CONFIG_VMAP_STACK */ -#ifdef CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK +#ifdef CONFIG_SOFTIRQ_ON_OWN_STACK void do_softirq_own_stack(void) { #ifdef CONFIG_IRQ_STACKS @@ -92,7 +92,7 @@ #endif __do_softirq(); } -#endif /* CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK */ +#endif /* CONFIG_SOFTIRQ_ON_OWN_STACK */ #else static void init_irq_stacks(void) {} --- linux-intel-opt-6.5.0.orig/arch/riscv/kernel/ptrace.c +++ linux-intel-opt-6.5.0/arch/riscv/kernel/ptrace.c @@ -25,6 +25,9 @@ #ifdef CONFIG_FPU REGSET_F, #endif +#ifdef CONFIG_RISCV_ISA_V + REGSET_V, +#endif }; static int riscv_gpr_get(struct task_struct *target, @@ -81,6 +84,71 @@ } #endif +#ifdef CONFIG_RISCV_ISA_V +static int riscv_vr_get(struct task_struct *target, + const struct user_regset *regset, + struct membuf to) +{ + struct __riscv_v_ext_state *vstate = &target->thread.vstate; + struct __riscv_v_regset_state ptrace_vstate; + + if (!riscv_v_vstate_query(task_pt_regs(target))) + return -EINVAL; + + /* + * Ensure the vector registers have been saved to the memory before + * copying them to membuf. + */ + if (target == current) + riscv_v_vstate_save(current, task_pt_regs(current)); + + ptrace_vstate.vstart = vstate->vstart; + ptrace_vstate.vl = vstate->vl; + ptrace_vstate.vtype = vstate->vtype; + ptrace_vstate.vcsr = vstate->vcsr; + ptrace_vstate.vlenb = vstate->vlenb; + + /* Copy vector header from vstate. */ + membuf_write(&to, &ptrace_vstate, sizeof(struct __riscv_v_regset_state)); + + /* Copy all the vector registers from vstate. */ + return membuf_write(&to, vstate->datap, riscv_v_vsize); +} + +static int riscv_vr_set(struct task_struct *target, + const struct user_regset *regset, + unsigned int pos, unsigned int count, + const void *kbuf, const void __user *ubuf) +{ + int ret; + struct __riscv_v_ext_state *vstate = &target->thread.vstate; + struct __riscv_v_regset_state ptrace_vstate; + + if (!riscv_v_vstate_query(task_pt_regs(target))) + return -EINVAL; + + /* Copy rest of the vstate except datap */ + ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, &ptrace_vstate, 0, + sizeof(struct __riscv_v_regset_state)); + if (unlikely(ret)) + return ret; + + if (vstate->vlenb != ptrace_vstate.vlenb) + return -EINVAL; + + vstate->vstart = ptrace_vstate.vstart; + vstate->vl = ptrace_vstate.vl; + vstate->vtype = ptrace_vstate.vtype; + vstate->vcsr = ptrace_vstate.vcsr; + + /* Copy all the vector registers. */ + pos = 0; + ret = user_regset_copyin(&pos, &count, &kbuf, &ubuf, vstate->datap, + 0, riscv_v_vsize); + return ret; +} +#endif + static const struct user_regset riscv_user_regset[] = { [REGSET_X] = { .core_note_type = NT_PRSTATUS, @@ -100,6 +168,17 @@ .set = riscv_fpr_set, }, #endif +#ifdef CONFIG_RISCV_ISA_V + [REGSET_V] = { + .core_note_type = NT_RISCV_VECTOR, + .align = 16, + .n = ((32 * RISCV_MAX_VLENB) + + sizeof(struct __riscv_v_regset_state)) / sizeof(__u32), + .size = sizeof(__u32), + .regset_get = riscv_vr_get, + .set = riscv_vr_set, + }, +#endif }; static const struct user_regset_view riscv_user_native_view = { --- linux-intel-opt-6.5.0.orig/arch/riscv/kernel/signal.c +++ linux-intel-opt-6.5.0/arch/riscv/kernel/signal.c @@ -311,13 +311,6 @@ /* Align the stack frame. */ sp &= ~0xfUL; - /* - * Fail if the size of the altstack is not large enough for the - * sigframe construction. - */ - if (current->sas_ss_size && sp < current->sas_ss_sp) - return (void __user __force *)-1UL; - return (void __user *)sp; } --- linux-intel-opt-6.5.0.orig/arch/riscv/kernel/traps.c +++ linux-intel-opt-6.5.0/arch/riscv/kernel/traps.c @@ -13,6 +13,8 @@ #include #include #include +#include +#include #include #include #include @@ -246,22 +248,28 @@ return GET_INSN_LENGTH(insn); } +static bool probe_single_step_handler(struct pt_regs *regs) +{ + bool user = user_mode(regs); + + return user ? uprobe_single_step_handler(regs) : kprobe_single_step_handler(regs); +} + +static bool probe_breakpoint_handler(struct pt_regs *regs) +{ + bool user = user_mode(regs); + + return user ? uprobe_breakpoint_handler(regs) : kprobe_breakpoint_handler(regs); +} + void handle_break(struct pt_regs *regs) { -#ifdef CONFIG_KPROBES - if (kprobe_single_step_handler(regs)) + if (probe_single_step_handler(regs)) return; - if (kprobe_breakpoint_handler(regs)) - return; -#endif -#ifdef CONFIG_UPROBES - if (uprobe_single_step_handler(regs)) + if (probe_breakpoint_handler(regs)) return; - if (uprobe_breakpoint_handler(regs)) - return; -#endif current->thread.bad_cause = regs->cause; if (user_mode(regs)) --- linux-intel-opt-6.5.0.orig/arch/riscv/kvm/Kconfig +++ linux-intel-opt-6.5.0/arch/riscv/kvm/Kconfig @@ -30,7 +30,7 @@ select KVM_GENERIC_HARDWARE_ENABLING select KVM_MMIO select KVM_XFER_TO_GUEST_WORK - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER select PREEMPT_NOTIFIERS help Support hosting virtualized guest machines. --- linux-intel-opt-6.5.0.orig/arch/riscv/kvm/mmu.c +++ linux-intel-opt-6.5.0/arch/riscv/kvm/mmu.c @@ -559,7 +559,7 @@ bool kvm_set_spte_gfn(struct kvm *kvm, struct kvm_gfn_range *range) { int ret; - kvm_pfn_t pfn = pte_pfn(range->pte); + kvm_pfn_t pfn = pte_pfn(range->arg.pte); if (!kvm->arch.pgd) return false; --- linux-intel-opt-6.5.0.orig/arch/riscv/mm/init.c +++ linux-intel-opt-6.5.0/arch/riscv/mm/init.c @@ -823,6 +823,10 @@ disable_pgtable_l4(); } + /* UBUNTU: Force disable sv57 and fallback to sv48 */ + if (pgtable_l5_enabled) + disable_pgtable_l5(); + memset(early_pg_dir, 0, PAGE_SIZE); memset(early_p4d, 0, PAGE_SIZE); memset(early_pud, 0, PAGE_SIZE); --- linux-intel-opt-6.5.0.orig/arch/riscv/mm/kasan_init.c +++ linux-intel-opt-6.5.0/arch/riscv/mm/kasan_init.c @@ -22,9 +22,9 @@ * region is not and then we have to go down to the PUD level. */ -pgd_t tmp_pg_dir[PTRS_PER_PGD] __page_aligned_bss; -p4d_t tmp_p4d[PTRS_PER_P4D] __page_aligned_bss; -pud_t tmp_pud[PTRS_PER_PUD] __page_aligned_bss; +static pgd_t tmp_pg_dir[PTRS_PER_PGD] __page_aligned_bss; +static p4d_t tmp_p4d[PTRS_PER_P4D] __page_aligned_bss; +static pud_t tmp_pud[PTRS_PER_PUD] __page_aligned_bss; static void __init kasan_populate_pte(pmd_t *pmd, unsigned long vaddr, unsigned long end) { @@ -438,7 +438,7 @@ kasan_shallow_populate_pgd(vaddr, vend); } -static void create_tmp_mapping(void) +static void __init create_tmp_mapping(void) { void *ptr; p4d_t *base_p4d; --- linux-intel-opt-6.5.0.orig/arch/riscv/net/bpf_jit_comp64.c +++ linux-intel-opt-6.5.0/arch/riscv/net/bpf_jit_comp64.c @@ -239,7 +239,7 @@ emit_addi(RV_REG_SP, RV_REG_SP, stack_adjust, ctx); /* Set return value. */ if (!is_tail_call) - emit_mv(RV_REG_A0, RV_REG_A5, ctx); + emit_addiw(RV_REG_A0, RV_REG_A5, 0, ctx); emit_jalr(RV_REG_ZERO, is_tail_call ? RV_REG_T3 : RV_REG_RA, is_tail_call ? 20 : 0, /* skip reserved nops and TCC init */ ctx); @@ -757,8 +757,10 @@ if (ret) return ret; - if (save_ret) - emit_sd(RV_REG_FP, -retval_off, regmap[BPF_REG_0], ctx); + if (save_ret) { + emit_sd(RV_REG_FP, -retval_off, RV_REG_A0, ctx); + emit_sd(RV_REG_FP, -(retval_off - 8), regmap[BPF_REG_0], ctx); + } /* update branch with beqz */ if (ctx->insns) { @@ -844,7 +846,7 @@ save_ret = flags & (BPF_TRAMP_F_CALL_ORIG | BPF_TRAMP_F_RET_FENTRY_RET); if (save_ret) { - stack_size += 8; + stack_size += 16; /* Save both A5 (BPF R0) and A0 */ retval_off = stack_size; } @@ -931,6 +933,7 @@ if (ret) goto out; emit_sd(RV_REG_FP, -retval_off, RV_REG_A0, ctx); + emit_sd(RV_REG_FP, -(retval_off - 8), regmap[BPF_REG_0], ctx); im->ip_after_call = ctx->insns + ctx->ninsns; /* 2 nops reserved for auipc+jalr pair */ emit(rv_nop(), ctx); @@ -962,8 +965,10 @@ if (flags & BPF_TRAMP_F_RESTORE_REGS) restore_args(nregs, args_off, ctx); - if (save_ret) + if (save_ret) { emit_ld(RV_REG_A0, -retval_off, RV_REG_FP, ctx); + emit_ld(regmap[BPF_REG_0], -(retval_off - 8), RV_REG_FP, ctx); + } emit_ld(RV_REG_S1, -sreg_off, RV_REG_FP, ctx); @@ -1436,7 +1441,8 @@ if (ret) return ret; - emit_mv(bpf_to_rv_reg(BPF_REG_0, ctx), RV_REG_A0, ctx); + if (insn->src_reg != BPF_PSEUDO_CALL) + emit_mv(bpf_to_rv_reg(BPF_REG_0, ctx), RV_REG_A0, ctx); break; } /* tail call */ --- linux-intel-opt-6.5.0.orig/arch/s390/boot/startup.c +++ linux-intel-opt-6.5.0/arch/s390/boot/startup.c @@ -176,6 +176,7 @@ unsigned long asce_limit; unsigned long rte_size; unsigned long pages; + unsigned long vsize; unsigned long vmax; pages = ident_map_size / PAGE_SIZE; @@ -183,11 +184,9 @@ vmemmap_size = SECTION_ALIGN_UP(pages) * sizeof(struct page); /* choose kernel address space layout: 4 or 3 levels. */ - vmemmap_start = round_up(ident_map_size, _REGION3_SIZE); - if (IS_ENABLED(CONFIG_KASAN) || - vmalloc_size > _REGION2_SIZE || - vmemmap_start + vmemmap_size + vmalloc_size + MODULES_LEN > - _REGION2_SIZE) { + vsize = round_up(ident_map_size, _REGION3_SIZE) + vmemmap_size + MODULES_LEN; + vsize = size_add(vsize, vmalloc_size); + if (IS_ENABLED(CONFIG_KASAN) || (vsize > _REGION2_SIZE)) { asce_limit = _REGION1_SIZE; rte_size = _REGION2_SIZE; } else { --- linux-intel-opt-6.5.0.orig/arch/s390/crypto/paes_s390.c +++ linux-intel-opt-6.5.0/arch/s390/crypto/paes_s390.c @@ -35,7 +35,7 @@ * and padding is also possible, the limits need to be generous. */ #define PAES_MIN_KEYSIZE 16 -#define PAES_MAX_KEYSIZE 320 +#define PAES_MAX_KEYSIZE MAXEP11AESKEYBLOBSIZE static u8 *ctrblk; static DEFINE_MUTEX(ctrblk_lock); --- linux-intel-opt-6.5.0.orig/arch/s390/include/asm/ipl.h +++ linux-intel-opt-6.5.0/arch/s390/include/asm/ipl.h @@ -139,6 +139,7 @@ unsigned char flags, unsigned short cert); int ipl_report_add_certificate(struct ipl_report *report, void *key, unsigned long addr, unsigned long len); +bool ipl_get_secureboot(void); /* * DIAG 308 support --- linux-intel-opt-6.5.0.orig/arch/s390/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/s390/include/asm/kvm_host.h @@ -817,6 +817,8 @@ __u64 *fac_list; u64 cpuid; unsigned short ibc; + /* subset of available UV-features for pv-guests enabled by user space */ + struct kvm_s390_vm_cpu_uv_feat uv_feat_guest; }; typedef int (*crypto_hook)(struct kvm_vcpu *vcpu); @@ -1028,6 +1030,9 @@ extern char sie_exit; +bool kvm_s390_pv_is_protected(struct kvm *kvm); +bool kvm_s390_pv_cpu_is_protected(struct kvm_vcpu *vcpu); + extern int kvm_s390_gisc_register(struct kvm *kvm, u32 gisc); extern int kvm_s390_gisc_unregister(struct kvm *kvm, u32 gisc); --- linux-intel-opt-6.5.0.orig/arch/s390/include/asm/uv.h +++ linux-intel-opt-6.5.0/arch/s390/include/asm/uv.h @@ -99,6 +99,8 @@ enum uv_feat_ind { BIT_UV_FEAT_MISC = 0, BIT_UV_FEAT_AIV = 1, + BIT_UV_FEAT_AP = 4, + BIT_UV_FEAT_AP_INTR = 5, }; struct uv_cb_header { @@ -159,7 +161,15 @@ u64 guest_handle; u64 conf_base_stor_origin; u64 conf_virt_stor_origin; - u64 reserved30; + u8 reserved30[6]; + union { + struct { + u16 : 14; + u16 ap_instr_intr : 1; + u16 ap_allow_instr : 1; + }; + u16 raw; + } flags; u64 guest_stor_origin; u64 guest_stor_len; u64 guest_sca; @@ -397,6 +407,13 @@ extern struct uv_info uv_info; +static inline bool uv_has_feature(u8 feature_bit) +{ + if (feature_bit >= sizeof(uv_info.uv_feature_indications) * 8) + return false; + return test_bit_inv(feature_bit, &uv_info.uv_feature_indications); +} + #ifdef CONFIG_PROTECTED_VIRTUALIZATION_GUEST extern int prot_virt_guest; @@ -463,6 +480,7 @@ return prot_virt_host; } +int uv_pin_shared(unsigned long paddr); int gmap_make_secure(struct gmap *gmap, unsigned long gaddr, void *uvcb); int gmap_destroy_page(struct gmap *gmap, unsigned long gaddr); int uv_destroy_owned_page(unsigned long paddr); @@ -475,6 +493,11 @@ #define is_prot_virt_host() 0 static inline void setup_uv(void) {} +static inline int uv_pin_shared(unsigned long paddr) +{ + return 0; +} + static inline int uv_destroy_owned_page(unsigned long paddr) { return 0; --- linux-intel-opt-6.5.0.orig/arch/s390/include/uapi/asm/kvm.h +++ linux-intel-opt-6.5.0/arch/s390/include/uapi/asm/kvm.h @@ -159,6 +159,22 @@ __u8 reserved[1728]; }; +#define KVM_S390_VM_CPU_PROCESSOR_UV_FEAT_GUEST 6 +#define KVM_S390_VM_CPU_MACHINE_UV_FEAT_GUEST 7 + +#define KVM_S390_VM_CPU_UV_FEAT_NR_BITS 64 +struct kvm_s390_vm_cpu_uv_feat { + union { + struct { + __u64 : 4; + __u64 ap : 1; /* bit 4 */ + __u64 ap_intr : 1; /* bit 5 */ + __u64 : 58; + }; + __u64 feat; + }; +}; + /* kvm attributes for crypto */ #define KVM_S390_VM_CRYPTO_ENABLE_AES_KW 0 #define KVM_S390_VM_CRYPTO_ENABLE_DEA_KW 1 --- linux-intel-opt-6.5.0.orig/arch/s390/include/uapi/asm/pkey.h +++ linux-intel-opt-6.5.0/arch/s390/include/uapi/asm/pkey.h @@ -26,7 +26,7 @@ #define MAXCLRKEYSIZE 32 /* a clear key value may be up to 32 bytes */ #define MAXAESCIPHERKEYSIZE 136 /* our aes cipher keys have always 136 bytes */ #define MINEP11AESKEYBLOBSIZE 256 /* min EP11 AES key blob size */ -#define MAXEP11AESKEYBLOBSIZE 320 /* max EP11 AES key blob size */ +#define MAXEP11AESKEYBLOBSIZE 336 /* max EP11 AES key blob size */ /* Minimum size of a key blob */ #define MINKEYBLOBSIZE SECKEYBLOBSIZE --- linux-intel-opt-6.5.0.orig/arch/s390/kernel/ipl.c +++ linux-intel-opt-6.5.0/arch/s390/kernel/ipl.c @@ -640,6 +640,8 @@ static struct attribute *ipl_unknown_attrs[] = { &sys_ipl_type_attr.attr, + &sys_ipl_secure_attr.attr, + &sys_ipl_has_secure_attr.attr, NULL, }; @@ -2533,3 +2535,8 @@ } #endif + +bool ipl_get_secureboot(void) +{ + return !!ipl_secure_flag; +} --- linux-intel-opt-6.5.0.orig/arch/s390/kernel/setup.c +++ linux-intel-opt-6.5.0/arch/s390/kernel/setup.c @@ -51,6 +51,7 @@ #include #include #include +#include #include #include @@ -914,6 +915,9 @@ log_component_list(); + if (ipl_get_secureboot()) + security_lock_kernel_down("Secure IPL mode", LOCKDOWN_INTEGRITY_MAX); + /* Have one command line that is parsed and saved in /proc/cmdline */ /* boot_command_line has been already set up in early.c */ *cmdline_p = boot_command_line; --- linux-intel-opt-6.5.0.orig/arch/s390/kernel/uv.c +++ linux-intel-opt-6.5.0/arch/s390/kernel/uv.c @@ -88,7 +88,7 @@ * Requests the Ultravisor to pin the page in the shared state. This will * cause an intercept when the guest attempts to unshare the pinned page. */ -static int uv_pin_shared(unsigned long paddr) +int uv_pin_shared(unsigned long paddr) { struct uv_cb_cfs uvcb = { .header.cmd = UVC_CMD_PIN_PAGE_SHARED, @@ -100,6 +100,7 @@ return -EINVAL; return 0; } +EXPORT_SYMBOL_GPL(uv_pin_shared); /* * Requests the Ultravisor to destroy a guest page and make it @@ -257,7 +258,7 @@ * shared page from a different protected VM will automatically also * transfer its ownership. */ - if (test_bit_inv(BIT_UV_FEAT_MISC, &uv_info.uv_feature_indications)) + if (uv_has_feature(BIT_UV_FEAT_MISC)) return false; if (uvcb->cmd == UVC_CMD_UNPIN_PAGE_SHARED) return false; --- linux-intel-opt-6.5.0.orig/arch/s390/kvm/intercept.c +++ linux-intel-opt-6.5.0/arch/s390/kvm/intercept.c @@ -228,6 +228,21 @@ #define per_event(vcpu) (vcpu->arch.sie_block->iprcc & PGM_PER) +static bool should_handle_per_event(const struct kvm_vcpu *vcpu) +{ + if (!guestdbg_enabled(vcpu) || !per_event(vcpu)) + return false; + if (guestdbg_sstep_enabled(vcpu) && + vcpu->arch.sie_block->iprcc != PGM_PER) { + /* + * __vcpu_run() will exit after delivering the concurrently + * indicated condition. + */ + return false; + } + return true; +} + static int handle_prog(struct kvm_vcpu *vcpu) { psw_t psw; @@ -242,7 +257,7 @@ if (kvm_s390_pv_cpu_is_protected(vcpu)) return -EOPNOTSUPP; - if (guestdbg_enabled(vcpu) && per_event(vcpu)) { + if (should_handle_per_event(vcpu)) { rc = kvm_s390_handle_per_event(vcpu); if (rc) return rc; @@ -571,6 +586,19 @@ return handle_instruction(vcpu); } +static bool should_handle_per_ifetch(const struct kvm_vcpu *vcpu, int rc) +{ + /* Process PER, also if the instruction is processed in user space. */ + if (!(vcpu->arch.sie_block->icptstatus & 0x02)) + return false; + if (rc != 0 && rc != -EOPNOTSUPP) + return false; + if (guestdbg_sstep_enabled(vcpu) && vcpu->arch.local_int.pending_irqs) + /* __vcpu_run() will exit after delivering the interrupt. */ + return false; + return true; +} + int kvm_handle_sie_intercept(struct kvm_vcpu *vcpu) { int rc, per_rc = 0; @@ -605,8 +633,8 @@ rc = handle_partial_execution(vcpu); break; case ICPT_KSS: - rc = kvm_s390_skey_check_enable(vcpu); - break; + /* Instruction will be redriven, skip the PER check. */ + return kvm_s390_skey_check_enable(vcpu); case ICPT_MCHKREQ: case ICPT_INT_ENABLE: /* @@ -633,9 +661,7 @@ return -EOPNOTSUPP; } - /* process PER, also if the instruction is processed in user space */ - if (vcpu->arch.sie_block->icptstatus & 0x02 && - (!rc || rc == -EOPNOTSUPP)) + if (should_handle_per_ifetch(vcpu, rc)) per_rc = kvm_s390_handle_per_ifetch_icpt(vcpu); return per_rc ? per_rc : rc; } --- linux-intel-opt-6.5.0.orig/arch/s390/kvm/interrupt.c +++ linux-intel-opt-6.5.0/arch/s390/kvm/interrupt.c @@ -1392,6 +1392,7 @@ { struct kvm_s390_local_interrupt *li = &vcpu->arch.local_int; int rc = 0; + bool delivered = false; unsigned long irq_type; unsigned long irqs; @@ -1465,6 +1466,19 @@ WARN_ONCE(1, "Unknown pending irq type %ld", irq_type); clear_bit(irq_type, &li->pending_irqs); } + delivered |= !rc; + } + + /* + * We delivered at least one interrupt and modified the PC. Force a + * singlestep event now. + */ + if (delivered && guestdbg_sstep_enabled(vcpu)) { + struct kvm_debug_exit_arch *debug_exit = &vcpu->run->debug.arch; + + debug_exit->addr = vcpu->arch.sie_block->gpsw.addr; + debug_exit->type = KVM_SINGLESTEP; + vcpu->guest_debug |= KVM_GUESTDBG_EXIT_PENDING; } set_intercept_indicators(vcpu); --- linux-intel-opt-6.5.0.orig/arch/s390/kvm/kvm-s390.c +++ linux-intel-opt-6.5.0/arch/s390/kvm/kvm-s390.c @@ -1531,6 +1531,39 @@ return 0; } +#define KVM_S390_VM_CPU_UV_FEAT_GUEST_MASK \ +( \ + ((struct kvm_s390_vm_cpu_uv_feat){ \ + .ap = 1, \ + .ap_intr = 1, \ + }) \ + .feat \ +) + +static int kvm_s390_set_uv_feat(struct kvm *kvm, struct kvm_device_attr *attr) +{ + struct kvm_s390_vm_cpu_uv_feat __user *ptr = (void __user *)attr->addr; + unsigned long data, filter; + + filter = uv_info.uv_feature_indications & KVM_S390_VM_CPU_UV_FEAT_GUEST_MASK; + if (get_user(data, &ptr->feat)) + return -EFAULT; + if (!bitmap_subset(&data, &filter, KVM_S390_VM_CPU_UV_FEAT_NR_BITS)) + return -EINVAL; + + mutex_lock(&kvm->lock); + if (kvm->created_vcpus) { + mutex_unlock(&kvm->lock); + return -EBUSY; + } + kvm->arch.model.uv_feat_guest.feat = data; + mutex_unlock(&kvm->lock); + + VM_EVENT(kvm, 3, "SET: guest UV-feat: 0x%16.16lx", data); + + return 0; +} + static int kvm_s390_set_cpu_model(struct kvm *kvm, struct kvm_device_attr *attr) { int ret = -ENXIO; @@ -1545,6 +1578,9 @@ case KVM_S390_VM_CPU_PROCESSOR_SUBFUNC: ret = kvm_s390_set_processor_subfunc(kvm, attr); break; + case KVM_S390_VM_CPU_PROCESSOR_UV_FEAT_GUEST: + ret = kvm_s390_set_uv_feat(kvm, attr); + break; } return ret; } @@ -1777,6 +1813,33 @@ return 0; } +static int kvm_s390_get_processor_uv_feat(struct kvm *kvm, struct kvm_device_attr *attr) +{ + struct kvm_s390_vm_cpu_uv_feat __user *dst = (void __user *)attr->addr; + unsigned long feat = kvm->arch.model.uv_feat_guest.feat; + + if (put_user(feat, &dst->feat)) + return -EFAULT; + VM_EVENT(kvm, 3, "GET: guest UV-feat: 0x%16.16lx", feat); + + return 0; +} + +static int kvm_s390_get_machine_uv_feat(struct kvm *kvm, struct kvm_device_attr *attr) +{ + struct kvm_s390_vm_cpu_uv_feat __user *dst = (void __user *)attr->addr; + unsigned long feat; + + BUILD_BUG_ON(sizeof(*dst) != sizeof(uv_info.uv_feature_indications)); + + feat = uv_info.uv_feature_indications & KVM_S390_VM_CPU_UV_FEAT_GUEST_MASK; + if (put_user(feat, &dst->feat)) + return -EFAULT; + VM_EVENT(kvm, 3, "GET: guest UV-feat: 0x%16.16lx", feat); + + return 0; +} + static int kvm_s390_get_cpu_model(struct kvm *kvm, struct kvm_device_attr *attr) { int ret = -ENXIO; @@ -1800,6 +1863,12 @@ case KVM_S390_VM_CPU_MACHINE_SUBFUNC: ret = kvm_s390_get_machine_subfunc(kvm, attr); break; + case KVM_S390_VM_CPU_PROCESSOR_UV_FEAT_GUEST: + ret = kvm_s390_get_processor_uv_feat(kvm, attr); + break; + case KVM_S390_VM_CPU_MACHINE_UV_FEAT_GUEST: + ret = kvm_s390_get_machine_uv_feat(kvm, attr); + break; } return ret; } @@ -1952,6 +2021,8 @@ case KVM_S390_VM_CPU_MACHINE_FEAT: case KVM_S390_VM_CPU_MACHINE_SUBFUNC: case KVM_S390_VM_CPU_PROCESSOR_SUBFUNC: + case KVM_S390_VM_CPU_MACHINE_UV_FEAT_GUEST: + case KVM_S390_VM_CPU_PROCESSOR_UV_FEAT_GUEST: ret = 0; break; default: @@ -2406,7 +2477,7 @@ struct kvm_vcpu *vcpu; /* Disable the GISA if the ultravisor does not support AIV. */ - if (!test_bit_inv(BIT_UV_FEAT_AIV, &uv_info.uv_feature_indications)) + if (!uv_has_feature(BIT_UV_FEAT_AIV)) kvm_s390_gisa_disable(kvm); kvm_for_each_vcpu(i, vcpu, kvm) { @@ -3296,6 +3367,8 @@ kvm->arch.model.cpuid = kvm_s390_get_initial_cpuid(); kvm->arch.model.ibc = sclp.ibc & 0x0fff; + kvm->arch.model.uv_feat_guest.feat = 0; + kvm_s390_crypto_init(kvm); if (IS_ENABLED(CONFIG_VFIO_PCI_ZDEV_KVM)) { @@ -4611,7 +4684,7 @@ if (!kvm_is_ucontrol(vcpu->kvm)) { rc = kvm_s390_deliver_pending_interrupts(vcpu); - if (rc) + if (rc || guestdbg_exit_pending(vcpu)) return rc; } @@ -4738,7 +4811,7 @@ do { rc = vcpu_pre_run(vcpu); - if (rc) + if (rc || guestdbg_exit_pending(vcpu)) break; kvm_vcpu_srcu_read_unlock(vcpu); @@ -5383,6 +5456,7 @@ { struct kvm_vcpu *vcpu = filp->private_data; void __user *argp = (void __user *)arg; + int rc; switch (ioctl) { case KVM_S390_IRQ: { @@ -5390,7 +5464,8 @@ if (copy_from_user(&s390irq, argp, sizeof(s390irq))) return -EFAULT; - return kvm_s390_inject_vcpu(vcpu, &s390irq); + rc = kvm_s390_inject_vcpu(vcpu, &s390irq); + break; } case KVM_S390_INTERRUPT: { struct kvm_s390_interrupt s390int; @@ -5400,10 +5475,25 @@ return -EFAULT; if (s390int_to_s390irq(&s390int, &s390irq)) return -EINVAL; - return kvm_s390_inject_vcpu(vcpu, &s390irq); + rc = kvm_s390_inject_vcpu(vcpu, &s390irq); + break; } + default: + rc = -ENOIOCTLCMD; + break; } - return -ENOIOCTLCMD; + + /* + * To simplify single stepping of userspace-emulated instructions, + * KVM_EXIT_S390_SIEIC exit sets KVM_GUESTDBG_EXIT_PENDING (see + * should_handle_per_ifetch()). However, if userspace emulation injects + * an interrupt, it needs to be cleared, so that KVM_EXIT_DEBUG happens + * after (and not before) the interrupt delivery. + */ + if (!rc) + vcpu->guest_debug &= ~KVM_GUESTDBG_EXIT_PENDING; + + return rc; } static int kvm_s390_handle_pv_vcpu_dump(struct kvm_vcpu *vcpu, --- linux-intel-opt-6.5.0.orig/arch/s390/kvm/kvm-s390.h +++ linux-intel-opt-6.5.0/arch/s390/kvm/kvm-s390.h @@ -270,18 +270,6 @@ return vcpu->arch.pv.handle; } -static inline bool kvm_s390_pv_is_protected(struct kvm *kvm) -{ - lockdep_assert_held(&kvm->lock); - return !!kvm_s390_pv_get_handle(kvm); -} - -static inline bool kvm_s390_pv_cpu_is_protected(struct kvm_vcpu *vcpu) -{ - lockdep_assert_held(&vcpu->mutex); - return !!kvm_s390_pv_cpu_get_handle(vcpu); -} - /* implemented in interrupt.c */ int kvm_s390_handle_wait(struct kvm_vcpu *vcpu); void kvm_s390_vcpu_wakeup(struct kvm_vcpu *vcpu); --- linux-intel-opt-6.5.0.orig/arch/s390/kvm/pv.c +++ linux-intel-opt-6.5.0/arch/s390/kvm/pv.c @@ -18,6 +18,20 @@ #include #include "kvm-s390.h" +bool kvm_s390_pv_is_protected(struct kvm *kvm) +{ + lockdep_assert_held(&kvm->lock); + return !!kvm_s390_pv_get_handle(kvm); +} +EXPORT_SYMBOL_GPL(kvm_s390_pv_is_protected); + +bool kvm_s390_pv_cpu_is_protected(struct kvm_vcpu *vcpu) +{ + lockdep_assert_held(&vcpu->mutex); + return !!kvm_s390_pv_cpu_get_handle(vcpu); +} +EXPORT_SYMBOL_GPL(kvm_s390_pv_cpu_is_protected); + /** * struct pv_vm_to_be_destroyed - Represents a protected VM that needs to * be destroyed @@ -271,7 +285,8 @@ WRITE_ONCE(kvm->arch.gmap->guest_handle, 0); KVM_UV_EVENT(kvm, 3, "PROTVIRT DESTROY VM FAST: rc %x rrc %x", uvcb.header.rc, uvcb.header.rrc); - WARN_ONCE(cc, "protvirt destroy vm fast failed handle %llx rc %x rrc %x", + WARN_ONCE(cc && uvcb.header.rc != 0x104, + "protvirt destroy vm fast failed handle %llx rc %x rrc %x", kvm_s390_pv_get_handle(kvm), uvcb.header.rc, uvcb.header.rrc); /* Intended memory leak on "impossible" error */ if (!cc) @@ -561,12 +576,14 @@ uvcb.conf_base_stor_origin = virt_to_phys((void *)kvm->arch.pv.stor_base); uvcb.conf_virt_stor_origin = (u64)kvm->arch.pv.stor_var; + uvcb.flags.ap_allow_instr = kvm->arch.model.uv_feat_guest.ap; + uvcb.flags.ap_instr_intr = kvm->arch.model.uv_feat_guest.ap_intr; cc = uv_call_sched(0, (u64)&uvcb); *rc = uvcb.header.rc; *rrc = uvcb.header.rrc; - KVM_UV_EVENT(kvm, 3, "PROTVIRT CREATE VM: handle %llx len %llx rc %x rrc %x", - uvcb.guest_handle, uvcb.guest_stor_len, *rc, *rrc); + KVM_UV_EVENT(kvm, 3, "PROTVIRT CREATE VM: handle %llx len %llx rc %x rrc %x flags %04x", + uvcb.guest_handle, uvcb.guest_stor_len, *rc, *rrc, uvcb.flags.raw); /* Outputs */ kvm->arch.pv.handle = uvcb.guest_handle; --- linux-intel-opt-6.5.0.orig/arch/s390/mm/fault.c +++ linux-intel-opt-6.5.0/arch/s390/mm/fault.c @@ -827,7 +827,7 @@ * reliable without the misc UV feature so we need to check * for that as well. */ - if (test_bit_inv(BIT_UV_FEAT_MISC, &uv_info.uv_feature_indications) && + if (uv_has_feature(BIT_UV_FEAT_MISC) && !test_bit_inv(61, ®s->int_parm_long)) { /* * When this happens, userspace did something that it --- linux-intel-opt-6.5.0.orig/arch/s390/net/bpf_jit_comp.c +++ linux-intel-opt-6.5.0/arch/s390/net/bpf_jit_comp.c @@ -2066,6 +2066,7 @@ * func_addr's original caller */ int stack_size; /* Trampoline stack size */ + int backchain_off; /* Offset of backchain */ int stack_args_off; /* Offset of stack arguments for calling * func_addr, has to be at the top */ @@ -2086,8 +2087,10 @@ * for __bpf_prog_enter() return value and * func_addr respectively */ - int r14_off; /* Offset of saved %r14 */ int run_ctx_off; /* Offset of struct bpf_tramp_run_ctx */ + int tccnt_off; /* Offset of saved tailcall counter */ + int r14_off; /* Offset of saved %r14, has to be at the + * bottom */ int do_fexit; /* do_fexit: label */ }; @@ -2246,8 +2249,12 @@ * Calculate the stack layout. */ - /* Reserve STACK_FRAME_OVERHEAD bytes for the callees. */ + /* + * Allocate STACK_FRAME_OVERHEAD bytes for the callees. As the s390x + * ABI requires, put our backchain at the end of the allocated memory. + */ tjit->stack_size = STACK_FRAME_OVERHEAD; + tjit->backchain_off = tjit->stack_size - sizeof(u64); tjit->stack_args_off = alloc_stack(tjit, nr_stack_args * sizeof(u64)); tjit->reg_args_off = alloc_stack(tjit, nr_reg_args * sizeof(u64)); tjit->ip_off = alloc_stack(tjit, sizeof(u64)); @@ -2255,15 +2262,28 @@ tjit->bpf_args_off = alloc_stack(tjit, nr_bpf_args * sizeof(u64)); tjit->retval_off = alloc_stack(tjit, sizeof(u64)); tjit->r7_r8_off = alloc_stack(tjit, 2 * sizeof(u64)); - tjit->r14_off = alloc_stack(tjit, sizeof(u64)); tjit->run_ctx_off = alloc_stack(tjit, sizeof(struct bpf_tramp_run_ctx)); - /* The caller has already reserved STACK_FRAME_OVERHEAD bytes. */ - tjit->stack_size -= STACK_FRAME_OVERHEAD; + tjit->tccnt_off = alloc_stack(tjit, sizeof(u64)); + tjit->r14_off = alloc_stack(tjit, sizeof(u64) * 2); + /* + * In accordance with the s390x ABI, the caller has allocated + * STACK_FRAME_OVERHEAD bytes for us. 8 of them contain the caller's + * backchain, and the rest we can use. + */ + tjit->stack_size -= STACK_FRAME_OVERHEAD - sizeof(u64); tjit->orig_stack_args_off = tjit->stack_size + STACK_FRAME_OVERHEAD; + /* lgr %r1,%r15 */ + EMIT4(0xb9040000, REG_1, REG_15); /* aghi %r15,-stack_size */ EMIT4_IMM(0xa70b0000, REG_15, -tjit->stack_size); + /* stg %r1,backchain_off(%r15) */ + EMIT6_DISP_LH(0xe3000000, 0x0024, REG_1, REG_0, REG_15, + tjit->backchain_off); + /* mvc tccnt_off(4,%r15),stack_size+STK_OFF_TCCNT(%r15) */ + _EMIT6(0xd203f000 | tjit->tccnt_off, + 0xf000 | (tjit->stack_size + STK_OFF_TCCNT)); /* stmg %r2,%rN,fwd_reg_args_off(%r15) */ if (nr_reg_args) EMIT6_DISP_LH(0xeb000000, 0x0024, REG_2, @@ -2400,6 +2420,8 @@ (nr_stack_args * sizeof(u64) - 1) << 16 | tjit->stack_args_off, 0xf000 | tjit->orig_stack_args_off); + /* mvc STK_OFF_TCCNT(4,%r15),tccnt_off(%r15) */ + _EMIT6(0xd203f000 | STK_OFF_TCCNT, 0xf000 | tjit->tccnt_off); /* lgr %r1,%r8 */ EMIT4(0xb9040000, REG_1, REG_8); /* %r1() */ @@ -2456,6 +2478,9 @@ if (flags & (BPF_TRAMP_F_CALL_ORIG | BPF_TRAMP_F_RET_FENTRY_RET)) EMIT6_DISP_LH(0xe3000000, 0x0004, REG_2, REG_0, REG_15, tjit->retval_off); + /* mvc stack_size+STK_OFF_TCCNT(4,%r15),tccnt_off(%r15) */ + _EMIT6(0xd203f000 | (tjit->stack_size + STK_OFF_TCCNT), + 0xf000 | tjit->tccnt_off); /* aghi %r15,stack_size */ EMIT4_IMM(0xa70b0000, REG_15, tjit->stack_size); /* Emit an expoline for the following indirect jump. */ @@ -2503,7 +2528,7 @@ return -E2BIG; } - return ret; + return tjit.common.prg; } bool bpf_jit_supports_subprog_tailcalls(void) --- linux-intel-opt-6.5.0.orig/arch/sh/boards/mach-ap325rxa/setup.c +++ linux-intel-opt-6.5.0/arch/sh/boards/mach-ap325rxa/setup.c @@ -531,7 +531,7 @@ device_initialize(&ap325rxa_ceu_device.dev); dma_declare_coherent_memory(&ap325rxa_ceu_device.dev, ceu_dma_membase, ceu_dma_membase, - ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(&ap325rxa_ceu_device); --- linux-intel-opt-6.5.0.orig/arch/sh/boards/mach-ecovec24/setup.c +++ linux-intel-opt-6.5.0/arch/sh/boards/mach-ecovec24/setup.c @@ -1454,15 +1454,13 @@ device_initialize(&ecovec_ceu_devices[0]->dev); dma_declare_coherent_memory(&ecovec_ceu_devices[0]->dev, ceu0_dma_membase, ceu0_dma_membase, - ceu0_dma_membase + - CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(ecovec_ceu_devices[0]); device_initialize(&ecovec_ceu_devices[1]->dev); dma_declare_coherent_memory(&ecovec_ceu_devices[1]->dev, ceu1_dma_membase, ceu1_dma_membase, - ceu1_dma_membase + - CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(ecovec_ceu_devices[1]); gpiod_add_lookup_table(&cn12_power_gpiod_table); --- linux-intel-opt-6.5.0.orig/arch/sh/boards/mach-kfr2r09/setup.c +++ linux-intel-opt-6.5.0/arch/sh/boards/mach-kfr2r09/setup.c @@ -603,7 +603,7 @@ device_initialize(&kfr2r09_ceu_device.dev); dma_declare_coherent_memory(&kfr2r09_ceu_device.dev, ceu_dma_membase, ceu_dma_membase, - ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(&kfr2r09_ceu_device); --- linux-intel-opt-6.5.0.orig/arch/sh/boards/mach-migor/setup.c +++ linux-intel-opt-6.5.0/arch/sh/boards/mach-migor/setup.c @@ -604,7 +604,7 @@ device_initialize(&migor_ceu_device.dev); dma_declare_coherent_memory(&migor_ceu_device.dev, ceu_dma_membase, ceu_dma_membase, - ceu_dma_membase + CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(&migor_ceu_device); --- linux-intel-opt-6.5.0.orig/arch/sh/boards/mach-se/7724/setup.c +++ linux-intel-opt-6.5.0/arch/sh/boards/mach-se/7724/setup.c @@ -940,15 +940,13 @@ device_initialize(&ms7724se_ceu_devices[0]->dev); dma_declare_coherent_memory(&ms7724se_ceu_devices[0]->dev, ceu0_dma_membase, ceu0_dma_membase, - ceu0_dma_membase + - CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(ms7724se_ceu_devices[0]); device_initialize(&ms7724se_ceu_devices[1]->dev); dma_declare_coherent_memory(&ms7724se_ceu_devices[1]->dev, ceu1_dma_membase, ceu1_dma_membase, - ceu1_dma_membase + - CEU_BUFFER_MEMORY_SIZE - 1); + CEU_BUFFER_MEMORY_SIZE); platform_device_add(ms7724se_ceu_devices[1]); return platform_add_devices(ms7724se_devices, --- linux-intel-opt-6.5.0.orig/arch/sh/drivers/push-switch.c +++ linux-intel-opt-6.5.0/arch/sh/drivers/push-switch.c @@ -101,8 +101,8 @@ device_remove_file(&pdev->dev, &dev_attr_switch); platform_set_drvdata(pdev, NULL); - flush_work(&psw->work); timer_shutdown_sync(&psw->debounce); + flush_work(&psw->work); free_irq(irq, pdev); kfree(psw); --- linux-intel-opt-6.5.0.orig/arch/sparc/include/asm/irq_64.h +++ linux-intel-opt-6.5.0/arch/sparc/include/asm/irq_64.h @@ -87,7 +87,7 @@ } void arch_trigger_cpumask_backtrace(const struct cpumask *mask, - bool exclude_self); + int exclude_cpu); #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace extern void *hardirq_stack[NR_CPUS]; --- linux-intel-opt-6.5.0.orig/arch/sparc/kernel/process_64.c +++ linux-intel-opt-6.5.0/arch/sparc/kernel/process_64.c @@ -236,7 +236,7 @@ } } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { struct thread_info *tp = current_thread_info(); struct pt_regs *regs = get_irq_regs(); @@ -252,7 +252,7 @@ memset(global_cpu_snapshot, 0, sizeof(global_cpu_snapshot)); - if (cpumask_test_cpu(this_cpu, mask) && !exclude_self) + if (cpumask_test_cpu(this_cpu, mask) && this_cpu != exclude_cpu) __global_reg_self(tp, regs, this_cpu); smp_fetch_global_regs(); @@ -260,7 +260,7 @@ for_each_cpu(cpu, mask) { struct global_reg_snapshot *gp; - if (exclude_self && cpu == this_cpu) + if (cpu == exclude_cpu) continue; gp = &global_cpu_snapshot[cpu].reg; --- linux-intel-opt-6.5.0.orig/arch/um/configs/i386_defconfig +++ linux-intel-opt-6.5.0/arch/um/configs/i386_defconfig @@ -34,6 +34,7 @@ CONFIG_XTERM_CHAN=y CONFIG_CON_CHAN="pts" CONFIG_SSL_CHAN="pts" +CONFIG_SOUND=m CONFIG_UML_SOUND=m CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y --- linux-intel-opt-6.5.0.orig/arch/um/configs/x86_64_defconfig +++ linux-intel-opt-6.5.0/arch/um/configs/x86_64_defconfig @@ -32,6 +32,7 @@ CONFIG_XTERM_CHAN=y CONFIG_CON_CHAN="pts" CONFIG_SSL_CHAN="pts" +CONFIG_SOUND=m CONFIG_UML_SOUND=m CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y --- linux-intel-opt-6.5.0.orig/arch/um/drivers/Kconfig +++ linux-intel-opt-6.5.0/arch/um/drivers/Kconfig @@ -111,24 +111,14 @@ config UML_SOUND tristate "Sound support" + depends on SOUND + select SOUND_OSS_CORE help This option enables UML sound support. If enabled, it will pull in - soundcore and the UML hostaudio relay, which acts as a intermediary + the UML hostaudio relay, which acts as a intermediary between the host's dsp and mixer devices and the UML sound system. It is safe to say 'Y' here. -config SOUND - tristate - default UML_SOUND - -config SOUND_OSS_CORE - bool - default UML_SOUND - -config HOSTAUDIO - tristate - default UML_SOUND - endmenu menu "UML Network Devices" --- linux-intel-opt-6.5.0.orig/arch/um/drivers/Makefile +++ linux-intel-opt-6.5.0/arch/um/drivers/Makefile @@ -54,7 +54,7 @@ obj-$(CONFIG_MCONSOLE) += mconsole.o obj-$(CONFIG_MMAPPER) += mmapper_kern.o obj-$(CONFIG_BLK_DEV_UBD) += ubd.o -obj-$(CONFIG_HOSTAUDIO) += hostaudio.o +obj-$(CONFIG_UML_SOUND) += hostaudio.o obj-$(CONFIG_NULL_CHAN) += null.o obj-$(CONFIG_PORT_CHAN) += port.o obj-$(CONFIG_PTY_CHAN) += pty.o --- linux-intel-opt-6.5.0.orig/arch/um/drivers/virt-pci.c +++ linux-intel-opt-6.5.0/arch/um/drivers/virt-pci.c @@ -544,6 +544,7 @@ } } +#ifdef CONFIG_OF /* Copied from arch/x86/kernel/devicetree.c */ struct device_node *pcibios_get_phb_of_node(struct pci_bus *bus) { @@ -562,6 +563,7 @@ } return NULL; } +#endif static int um_pci_init_vqs(struct um_pci_device *dev) { --- linux-intel-opt-6.5.0.orig/arch/x86/Kconfig +++ linux-intel-opt-6.5.0/arch/x86/Kconfig @@ -766,6 +766,7 @@ menuconfig HYPERVISOR_GUEST bool "Linux guest support" + select ARCH_HAS_CC_PLATFORM help Say Y here to enable options for running Linux under various hyper- visors. This option enables basic hypervisor detection and platform @@ -1949,12 +1950,51 @@ If unsure, say N. +config INTEL_TDX_HOST + bool "Intel Trust Domain Extensions (TDX) host support" + depends on CPU_SUP_INTEL + depends on X86_64 + depends on KVM_INTEL + depends on X86_X2APIC + select ARCH_KEEP_MEMBLOCK + depends on CONTIG_ALLOC + help + Intel Trust Domain Extensions (TDX) protects guest VMs from malicious + host and certain physical attacks. This option enables necessary TDX + support in the host kernel to run confidential VMs. + + If unsure, say N. + +config INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + bool "Intel Trust Domain Extensions (TDX) host debug memory corruption" + default n + depends on INTEL_TDX_HOST + help + Intel Trust Domain Extentions (TDX) encrypts memory and protect it + against host. By making non-present encrypted memory, detect + unintended memory access to encrypted memory. + + If unuser, say N. + +config INTEL_TDX_HOST_DEBUG + tristate "TDX host debugfs" + default n + depends on INTEL_TDX_HOST + depends on DEBUG_FS + depends on KVM + help + TDX module debug support via debug fs. The debug version of TDX + module is required. + + If unsure, say N. + config EFI bool "EFI runtime service support" depends on ACPI select UCS2_STRING select EFI_RUNTIME_WRAPPERS select ARCH_USE_MEMREMAP_PROT + select EFI_RUNTIME_MAP if KEXEC_CORE help This enables the kernel to use EFI runtime services that are available (such as the EFI variable services). @@ -2030,7 +2070,6 @@ config EFI_RUNTIME_MAP bool "Export EFI runtime maps to sysfs" if EXPERT depends on EFI - default KEXEC_CORE help Export EFI runtime memory regions to /sys/firmware/efi/runtime-map. That memory map is required by the 2nd kernel to set up EFI virtual --- linux-intel-opt-6.5.0.orig/arch/x86/Makefile +++ linux-intel-opt-6.5.0/arch/x86/Makefile @@ -252,6 +252,8 @@ libs-y += arch/x86/lib/ +core-y += arch/x86/virt/ + # drivers-y are linked after core-y drivers-$(CONFIG_MATH_EMULATION) += arch/x86/math-emu/ drivers-$(CONFIG_PCI) += arch/x86/pci/ --- linux-intel-opt-6.5.0.orig/arch/x86/boot/compressed/head_64.S +++ linux-intel-opt-6.5.0/arch/x86/boot/compressed/head_64.S @@ -459,11 +459,25 @@ /* Save the trampoline address in RCX */ movq %rax, %rcx + /* Set up 32-bit addressable stack */ + leaq TRAMPOLINE_32BIT_STACK_END(%rcx), %rsp + + /* + * Preserve live 64-bit registers on the stack: this is necessary + * because the architecture does not guarantee that GPRs will retain + * their full 64-bit values across a 32-bit mode switch. + */ + pushq %rbp + pushq %rbx + pushq %rsi + /* - * Load the address of trampoline_return() into RDI. - * It will be used by the trampoline to return to the main code. + * Push the 64-bit address of trampoline_return() onto the new stack. + * It will be used by the trampoline to return to the main code. Due to + * the 32-bit mode switch, it cannot be kept it in a register either. */ leaq trampoline_return(%rip), %rdi + pushq %rdi /* Switch to compatibility mode (CS.L = 0 CS.D = 1) via far return */ pushq $__KERNEL32_CS @@ -471,6 +485,11 @@ pushq %rax lretq trampoline_return: + /* Restore live 64-bit registers */ + popq %rsi + popq %rbx + popq %rbp + /* Restore the stack, the 32-bit trampoline uses its own stack */ leaq rva(boot_stack_end)(%rbx), %rsp @@ -582,7 +601,7 @@ /* * This is the 32-bit trampoline that will be copied over to low memory. * - * RDI contains the return address (might be above 4G). + * Return address is at the top of the stack (might be above 4G). * ECX contains the base address of the trampoline memory. * Non zero RDX means trampoline needs to enable 5-level paging. */ @@ -592,9 +611,6 @@ movl %eax, %ds movl %eax, %ss - /* Set up new stack */ - leal TRAMPOLINE_32BIT_STACK_END(%ecx), %esp - /* Disable paging */ movl %cr0, %eax btrl $X86_CR0_PG_BIT, %eax @@ -671,7 +687,7 @@ .code64 SYM_FUNC_START_LOCAL_NOALIGN(.Lpaging_enabled) /* Return from the trampoline */ - jmp *%rdi + retq SYM_FUNC_END(.Lpaging_enabled) /* --- linux-intel-opt-6.5.0.orig/arch/x86/boot/compressed/ident_map_64.c +++ linux-intel-opt-6.5.0/arch/x86/boot/compressed/ident_map_64.c @@ -59,6 +59,14 @@ return NULL; } + /* Consumed more tables than expected? */ + if (pages->pgt_buf_offset == BOOT_PGT_SIZE_WARN) { + debug_putstr("pgt_buf running low in " __FILE__ "\n"); + debug_putstr("Need to raise BOOT_PGT_SIZE?\n"); + debug_putaddr(pages->pgt_buf_offset); + debug_putaddr(pages->pgt_buf_size); + } + entry = pages->pgt_buf + pages->pgt_buf_offset; pages->pgt_buf_offset += PAGE_SIZE; --- linux-intel-opt-6.5.0.orig/arch/x86/boot/compressed/sev.c +++ linux-intel-opt-6.5.0/arch/x86/boot/compressed/sev.c @@ -103,6 +103,16 @@ return ES_OK; } +static enum es_result vc_ioio_check(struct es_em_ctxt *ctxt, u16 port, size_t size) +{ + return ES_OK; +} + +static bool fault_in_kernel_space(unsigned long address) +{ + return false; +} + #undef __init #define __init --- linux-intel-opt-6.5.0.orig/arch/x86/boot/compressed/tdx.c +++ linux-intel-opt-6.5.0/arch/x86/boot/compressed/tdx.c @@ -18,7 +18,7 @@ static inline unsigned int tdx_io_in(int size, u16 port) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_IO_INSTRUCTION), .r12 = size, @@ -26,7 +26,7 @@ .r14 = port, }; - if (__tdx_hypercall_ret(&args)) + if (__tdx_hypercall(&args)) return UINT_MAX; return args.r11; @@ -34,7 +34,7 @@ static inline void tdx_io_out(int size, u16 port, u32 value) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_IO_INSTRUCTION), .r12 = size, --- linux-intel-opt-6.5.0.orig/arch/x86/boot/video-vga.c +++ linux-intel-opt-6.5.0/arch/x86/boot/video-vga.c @@ -188,7 +188,7 @@ vga_set_vertical_end(60*8); } -static int vga_set_mode(struct mode_info *mode) +static int __attribute__((optimize("no-jump-tables"))) vga_set_mode(struct mode_info *mode) { /* Set the basic mode */ vga_set_basic_mode(); --- linux-intel-opt-6.5.0.orig/arch/x86/coco/tdx/tdcall.S +++ linux-intel-opt-6.5.0/arch/x86/coco/tdx/tdcall.S @@ -10,230 +10,57 @@ #include "../../virt/vmx/tdx/tdxcall.S" -/* - * Bitmasks of exposed registers (with VMM). - */ -#define TDX_RDX BIT(2) -#define TDX_RBX BIT(3) -#define TDX_RSI BIT(6) -#define TDX_RDI BIT(7) -#define TDX_R8 BIT(8) -#define TDX_R9 BIT(9) -#define TDX_R10 BIT(10) -#define TDX_R11 BIT(11) -#define TDX_R12 BIT(12) -#define TDX_R13 BIT(13) -#define TDX_R14 BIT(14) -#define TDX_R15 BIT(15) - -/* - * These registers are clobbered to hold arguments for each - * TDVMCALL. They are safe to expose to the VMM. - * Each bit in this mask represents a register ID. Bit field - * details can be found in TDX GHCI specification, section - * titled "TDCALL [TDG.VP.VMCALL] leaf". - */ -#define TDVMCALL_EXPOSE_REGS_MASK \ - ( TDX_RDX | TDX_RBX | TDX_RSI | TDX_RDI | TDX_R8 | TDX_R9 | \ - TDX_R10 | TDX_R11 | TDX_R12 | TDX_R13 | TDX_R14 | TDX_R15 ) - .section .noinstr.text, "ax" /* - * __tdx_module_call() - Used by TDX guests to request services from - * the TDX module (does not include VMM services) using TDCALL instruction. - * - * Transforms function call register arguments into the TDCALL register ABI. - * After TDCALL operation, TDX module output is saved in @out (if it is - * provided by the user). - * - *------------------------------------------------------------------------- - * TDCALL ABI: - *------------------------------------------------------------------------- - * Input Registers: - * - * RAX - TDCALL Leaf number. - * RCX,RDX,R8-R9 - TDCALL Leaf specific input registers. + * __tdcall() - Used by TDX guests to request services from the TDX + * module (does not include VMM services) using TDCALL instruction. * - * Output Registers: + * __tdcall() function ABI: * - * RAX - TDCALL instruction error code. - * RCX,RDX,R8-R11 - TDCALL Leaf specific output registers. + * @fn (RDI) - TDCALL Leaf ID, moved to RAX + * @args (RSI) - struct tdx_module_args for input * - *------------------------------------------------------------------------- - * - * __tdx_module_call() function ABI: - * - * @fn (RDI) - TDCALL Leaf ID, moved to RAX - * @rcx (RSI) - Input parameter 1, moved to RCX - * @rdx (RDX) - Input parameter 2, moved to RDX - * @r8 (RCX) - Input parameter 3, moved to R8 - * @r9 (R8) - Input parameter 4, moved to R9 - * - * @out (R9) - struct tdx_module_output pointer - * stored temporarily in R12 (not - * shared with the TDX module). It - * can be NULL. + * Only RCX/RDX/R8-R11 are used as input registers. * * Return status of TDCALL via RAX. */ -SYM_FUNC_START(__tdx_module_call) - FRAME_BEGIN +SYM_FUNC_START(__tdcall) TDX_MODULE_CALL host=0 - FRAME_END - RET -SYM_FUNC_END(__tdx_module_call) +SYM_FUNC_END(__tdcall) /* - * TDX_HYPERCALL - Make hypercalls to a TDX VMM using TDVMCALL leaf of TDCALL - * instruction - * - * Transforms values in function call argument struct tdx_hypercall_args @args - * into the TDCALL register ABI. After TDCALL operation, VMM output is saved - * back in @args, if \ret is 1. - * - *------------------------------------------------------------------------- - * TD VMCALL ABI: - *------------------------------------------------------------------------- - * - * Input Registers: - * - * RAX - TDCALL instruction leaf number (0 - TDG.VP.VMCALL) - * RCX - BITMAP which controls which part of TD Guest GPR - * is passed as-is to the VMM and back. - * R10 - Set 0 to indicate TDCALL follows standard TDX ABI - * specification. Non zero value indicates vendor - * specific ABI. - * R11 - VMCALL sub function number - * RBX, RDX, RDI, RSI - Used to pass VMCALL sub function specific arguments. - * R8-R9, R12-R15 - Same as above. - * - * Output Registers: - * - * RAX - TDCALL instruction status (Not related to hypercall - * output). - * RBX, RDX, RDI, RSI - Hypercall sub function specific output values. - * R8-R15 - Same as above. + * __tdcall_ret() - Used by TDX guests to request services from the TDX + * module (does not include VMM services) using TDCALL instruction, with + * saving output registers to the 'struct tdx_module_args' used as input. * - */ -.macro TDX_HYPERCALL ret:req - FRAME_BEGIN - - /* Save callee-saved GPRs as mandated by the x86_64 ABI */ - push %r15 - push %r14 - push %r13 - push %r12 - push %rbx - - /* Free RDI to be used as TDVMCALL arguments */ - movq %rdi, %rax - - /* Copy hypercall registers from arg struct: */ - movq TDX_HYPERCALL_r8(%rax), %r8 - movq TDX_HYPERCALL_r9(%rax), %r9 - movq TDX_HYPERCALL_r10(%rax), %r10 - movq TDX_HYPERCALL_r11(%rax), %r11 - movq TDX_HYPERCALL_r12(%rax), %r12 - movq TDX_HYPERCALL_r13(%rax), %r13 - movq TDX_HYPERCALL_r14(%rax), %r14 - movq TDX_HYPERCALL_r15(%rax), %r15 - movq TDX_HYPERCALL_rdi(%rax), %rdi - movq TDX_HYPERCALL_rsi(%rax), %rsi - movq TDX_HYPERCALL_rbx(%rax), %rbx - movq TDX_HYPERCALL_rdx(%rax), %rdx - - push %rax - - /* Mangle function call ABI into TDCALL ABI: */ - /* Set TDCALL leaf ID (TDVMCALL (0)) in RAX */ - xor %eax, %eax - - movl $TDVMCALL_EXPOSE_REGS_MASK, %ecx - - tdcall - - /* - * RAX!=0 indicates a failure of the TDVMCALL mechanism itself and that - * something has gone horribly wrong with the TDX module. - * - * The return status of the hypercall operation is in a separate - * register (in R10). Hypercall errors are a part of normal operation - * and are handled by callers. - */ - testq %rax, %rax - jne .Lpanic\@ - - pop %rax - - .if \ret - movq %r8, TDX_HYPERCALL_r8(%rax) - movq %r9, TDX_HYPERCALL_r9(%rax) - movq %r10, TDX_HYPERCALL_r10(%rax) - movq %r11, TDX_HYPERCALL_r11(%rax) - movq %r12, TDX_HYPERCALL_r12(%rax) - movq %r13, TDX_HYPERCALL_r13(%rax) - movq %r14, TDX_HYPERCALL_r14(%rax) - movq %r15, TDX_HYPERCALL_r15(%rax) - movq %rdi, TDX_HYPERCALL_rdi(%rax) - movq %rsi, TDX_HYPERCALL_rsi(%rax) - movq %rbx, TDX_HYPERCALL_rbx(%rax) - movq %rdx, TDX_HYPERCALL_rdx(%rax) - .endif - - /* TDVMCALL leaf return code is in R10 */ - movq %r10, %rax - - /* - * Zero out registers exposed to the VMM to avoid speculative execution - * with VMM-controlled values. This needs to include all registers - * present in TDVMCALL_EXPOSE_REGS_MASK, except RBX, and R12-R15 which - * will be restored. - */ - xor %r8d, %r8d - xor %r9d, %r9d - xor %r10d, %r10d - xor %r11d, %r11d - xor %rdi, %rdi - xor %rdx, %rdx - - /* Restore callee-saved GPRs as mandated by the x86_64 ABI */ - pop %rbx - pop %r12 - pop %r13 - pop %r14 - pop %r15 - - FRAME_END - - RET -.Lpanic\@: - call __tdx_hypercall_failed - /* __tdx_hypercall_failed never returns */ - REACHABLE - jmp .Lpanic\@ -.endm - -/* + * __tdcall_ret() function ABI: * - * __tdx_hypercall() function ABI: + * @fn (RDI) - TDCALL Leaf ID, moved to RAX + * @args (RSI) - struct tdx_module_args for input and output * - * @args (RDI) - struct tdx_hypercall_args for input + * Only RCX/RDX/R8-R11 are used as input/output registers. * - * On successful completion, return the hypercall error code. + * Return status of TDCALL via RAX. */ -SYM_FUNC_START(__tdx_hypercall) - TDX_HYPERCALL ret=0 -SYM_FUNC_END(__tdx_hypercall) +SYM_FUNC_START(__tdcall_ret) + TDX_MODULE_CALL host=0 ret=1 +SYM_FUNC_END(__tdcall_ret) /* + * __tdcall_saved_ret() - Used by TDX guests to request services from the + * TDX module (including VMM services) using TDCALL instruction, with + * saving output registers to the 'struct tdx_module_args' used as input. + * + * __tdcall_saved_ret() function ABI: * - * __tdx_hypercall_ret() function ABI: + * @fn (RDI) - TDCALL leaf ID, moved to RAX + * @args (RSI) - struct tdx_module_args for input/output * - * @args (RDI) - struct tdx_hypercall_args for input and output + * All registers in @args are used as input/output registers. * * On successful completion, return the hypercall error code. */ -SYM_FUNC_START(__tdx_hypercall_ret) - TDX_HYPERCALL ret=1 -SYM_FUNC_END(__tdx_hypercall_ret) +SYM_FUNC_START(__tdcall_saved_ret) + TDX_MODULE_CALL host=0 ret=1 saved=1 +SYM_FUNC_END(__tdcall_saved_ret) --- linux-intel-opt-6.5.0.orig/arch/x86/coco/tdx/tdx-shared.c +++ linux-intel-opt-6.5.0/arch/x86/coco/tdx/tdx-shared.c @@ -5,7 +5,7 @@ enum pg_level pg_level) { unsigned long accept_size = page_level_size(pg_level); - u64 tdcall_rcx; + struct tdx_module_args args = {}; u8 page_size; if (!IS_ALIGNED(start, accept_size)) @@ -22,20 +22,20 @@ */ switch (pg_level) { case PG_LEVEL_4K: - page_size = 0; + page_size = TDX_PS_4K; break; case PG_LEVEL_2M: - page_size = 1; + page_size = TDX_PS_2M; break; case PG_LEVEL_1G: - page_size = 2; + page_size = TDX_PS_1G; break; default: return 0; } - tdcall_rcx = start | page_size; - if (__tdx_module_call(TDX_ACCEPT_PAGE, tdcall_rcx, 0, 0, 0, NULL)) + args.rcx = start | page_size; + if (__tdcall(TDG_MEM_PAGE_ACCEPT, &args)) return 0; return accept_size; @@ -45,7 +45,7 @@ { /* * For shared->private conversion, accept the page using - * TDX_ACCEPT_PAGE TDX module call. + * TDG_MEM_PAGE_ACCEPT TDX module call. */ while (start < end) { unsigned long len = end - start; @@ -69,3 +69,23 @@ return true; } + +noinstr u64 __tdx_hypercall(struct tdx_module_args *args) +{ + /* + * For TDVMCALL explicitly set RCX to the bitmap of shared registers. + * The caller isn't expected to set @args->rcx anyway. + */ + args->rcx = TDVMCALL_EXPOSE_REGS_MASK; + + /* + * Failure of __tdcall_saved_ret() indicates a failure of the TDVMCALL + * mechanism itself and that something has gone horribly wrong with + * the TDX module. __tdx_hypercall_failed() never returns. + */ + if (__tdcall_saved_ret(TDG_VP_VMCALL, args)) + __tdx_hypercall_failed(); + + /* TDVMCALL leaf return code is in R10 */ + return args->r10; +} --- linux-intel-opt-6.5.0.orig/arch/x86/coco/tdx/tdx.c +++ linux-intel-opt-6.5.0/arch/x86/coco/tdx/tdx.c @@ -34,6 +34,7 @@ /* TDX Module call error codes */ #define TDCALL_RETURN_CODE(a) ((a) >> 32) #define TDCALL_INVALID_OPERAND 0xc0000100 +#define TDCALL_OPERAND_BUSY 0x80000200 #define TDREPORT_SUBTYPE_0 0 @@ -48,7 +49,7 @@ long tdx_kvm_hypercall(unsigned int nr, unsigned long p1, unsigned long p2, unsigned long p3, unsigned long p4) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = nr, .r11 = p1, .r12 = p2, @@ -66,10 +67,9 @@ * should only be used for calls that have no legitimate reason to fail * or where the kernel can not survive the call failing. */ -static inline void tdx_module_call(u64 fn, u64 rcx, u64 rdx, u64 r8, u64 r9, - struct tdx_module_output *out) +static inline void tdcall(u64 fn, struct tdx_module_args *args) { - if (__tdx_module_call(fn, rcx, rdx, r8, r9, out)) + if (__tdcall_ret(fn, args)) panic("TDCALL %lld failed (Buggy TDX module!)\n", fn); } @@ -89,11 +89,14 @@ */ int tdx_mcall_get_report0(u8 *reportdata, u8 *tdreport) { + struct tdx_module_args args = { + .rcx = virt_to_phys(tdreport), + .rdx = virt_to_phys(reportdata), + .r8 = TDREPORT_SUBTYPE_0, + }; u64 ret; - ret = __tdx_module_call(TDX_GET_REPORT, virt_to_phys(tdreport), - virt_to_phys(reportdata), TDREPORT_SUBTYPE_0, - 0, NULL); + ret = __tdcall(TDG_MR_REPORT, &args); if (ret) { if (TDCALL_RETURN_CODE(ret) == TDCALL_INVALID_OPERAND) return -EINVAL; @@ -106,7 +109,7 @@ static void __noreturn tdx_panic(const char *msg) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = TDVMCALL_REPORT_FATAL_ERROR, .r12 = 0, /* Error code: 0 is Panic */ @@ -139,9 +142,44 @@ __tdx_hypercall(&args); } +/** + * tdx_mcall_extend_rtmr() - Wrapper to extend RTMR registers using + * TDG.MR.RTMR.EXTEND TDCALL. + * @data: Address of the input buffer with RTMR register extend data. + * @index: Index of RTMR register to be extended. + * + * Refer to section titled "TDG.MR.RTMR.EXTEND leaf" in the TDX Module + * v1.0 specification for more information on TDG.MR.RTMR.EXTEND TDCALL. + * It is used in the TDX guest driver module to allow user extend the + * RTMR registers (index > 1). + * + * Return 0 on success, -EINVAL for invalid operands, -EBUSY for busy + * operation or -EIO on other TDCALL failures. + */ +int tdx_mcall_extend_rtmr(u8 *data, u8 index) +{ + struct tdx_module_args args = { + .rcx = virt_to_phys(data), + .rdx = index, + }; + u64 ret; + + ret = __tdcall(TDG_MR_RTMR_EXTEND, &args); + if (ret) { + if (TDCALL_RETURN_CODE(ret) == TDCALL_INVALID_OPERAND) + return -EINVAL; + if (TDCALL_RETURN_CODE(ret) == TDCALL_OPERAND_BUSY) + return -EBUSY; + return -EIO; + } + + return 0; +} +EXPORT_SYMBOL_GPL(tdx_mcall_extend_rtmr); + static void tdx_parse_tdinfo(u64 *cc_mask) { - struct tdx_module_output out; + struct tdx_module_args args = {}; unsigned int gpa_width; u64 td_attr; @@ -152,7 +190,7 @@ * Guest-Host-Communication Interface (GHCI), section 2.4.2 TDCALL * [TDG.VP.INFO]. */ - tdx_module_call(TDX_GET_INFO, 0, 0, 0, 0, &out); + tdcall(TDG_VP_INFO, &args); /* * The highest bit of a guest physical address is the "sharing" bit. @@ -161,7 +199,7 @@ * The GPA width that comes out of this call is critical. TDX guests * can not meaningfully run without it. */ - gpa_width = out.rcx & GENMASK(5, 0); + gpa_width = args.rcx & GENMASK(5, 0); *cc_mask = BIT_ULL(gpa_width - 1); /* @@ -169,7 +207,7 @@ * memory. Ensure that no #VE will be delivered for accesses to * TD-private memory. Only VMM-shared memory (MMIO) will #VE. */ - td_attr = out.rdx; + td_attr = args.rdx; if (!(td_attr & ATTR_SEPT_VE_DISABLE)) { const char *msg = "TD misconfiguration: SEPT_VE_DISABLE attribute must be set."; @@ -228,7 +266,7 @@ static u64 __cpuidle __halt(const bool irq_disabled) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_HLT), .r12 = irq_disabled, @@ -272,7 +310,7 @@ static int read_msr(struct pt_regs *regs, struct ve_info *ve) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_MSR_READ), .r12 = regs->cx, @@ -283,7 +321,7 @@ * can be found in TDX Guest-Host-Communication Interface * (GHCI), section titled "TDG.VP.VMCALL". */ - if (__tdx_hypercall_ret(&args)) + if (__tdx_hypercall(&args)) return -EIO; regs->ax = lower_32_bits(args.r11); @@ -293,7 +331,7 @@ static int write_msr(struct pt_regs *regs, struct ve_info *ve) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_MSR_WRITE), .r12 = regs->cx, @@ -313,7 +351,7 @@ static int handle_cpuid(struct pt_regs *regs, struct ve_info *ve) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_CPUID), .r12 = regs->ax, @@ -337,7 +375,7 @@ * ABI can be found in TDX Guest-Host-Communication Interface * (GHCI), section titled "VP.VMCALL". */ - if (__tdx_hypercall_ret(&args)) + if (__tdx_hypercall(&args)) return -EIO; /* @@ -355,7 +393,7 @@ static bool mmio_read(int size, unsigned long addr, unsigned long *val) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_EPT_VIOLATION), .r12 = size, @@ -364,8 +402,9 @@ .r15 = *val, }; - if (__tdx_hypercall_ret(&args)) + if (__tdx_hypercall(&args)) return false; + *val = args.r11; return true; } @@ -483,7 +522,7 @@ static bool handle_in(struct pt_regs *regs, int size, int port) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = hcall_func(EXIT_REASON_IO_INSTRUCTION), .r12 = size, @@ -498,7 +537,7 @@ * in TDX Guest-Host-Communication Interface (GHCI) section titled * "TDG.VP.VMCALL". */ - success = !__tdx_hypercall_ret(&args); + success = !__tdx_hypercall(&args); /* Update part of the register affected by the emulated instruction */ regs->ax &= ~mask; @@ -577,7 +616,7 @@ void tdx_get_ve_info(struct ve_info *ve) { - struct tdx_module_output out; + struct tdx_module_args args = {}; /* * Called during #VE handling to retrieve the #VE info from the @@ -594,15 +633,15 @@ * Note, the TDX module treats virtual NMIs as inhibited if the #VE * valid flag is set. It means that NMI=>#VE will not result in a #DF. */ - tdx_module_call(TDX_GET_VEINFO, 0, 0, 0, 0, &out); + tdcall(TDG_VP_VEINFO_GET, &args); /* Transfer the output parameters */ - ve->exit_reason = out.rcx; - ve->exit_qual = out.rdx; - ve->gla = out.r8; - ve->gpa = out.r9; - ve->instr_len = lower_32_bits(out.r10); - ve->instr_info = upper_32_bits(out.r10); + ve->exit_reason = args.rcx; + ve->exit_qual = args.rdx; + ve->gla = args.r8; + ve->gpa = args.r9; + ve->instr_len = lower_32_bits(args.r10); + ve->instr_info = upper_32_bits(args.r10); } /* @@ -759,6 +798,10 @@ void __init tdx_early_init(void) { + struct tdx_module_args args = { + .rdx = TDCS_NOTIFY_ENABLES, + .r9 = -1ULL, + }; u64 cc_mask; u32 eax, sig[3]; @@ -769,12 +812,15 @@ setup_force_cpu_cap(X86_FEATURE_TDX_GUEST); + /* TSC is the only reliable clock in TDX guest */ + setup_force_cpu_cap(X86_FEATURE_TSC_RELIABLE); + cc_vendor = CC_VENDOR_INTEL; tdx_parse_tdinfo(&cc_mask); cc_set_mask(cc_mask); /* Kernel does not use NOTIFY_ENABLES and does not need random #VEs */ - tdx_module_call(TDX_WR, 0, TDCS_NOTIFY_ENABLES, 0, -1ULL, NULL); + tdcall(TDG_VM_WR, &args); /* * All bits above GPA width are reserved and kernel treats shared bit --- linux-intel-opt-6.5.0.orig/arch/x86/events/amd/core.c +++ linux-intel-opt-6.5.0/arch/x86/events/amd/core.c @@ -534,8 +534,12 @@ /* Clear enable bits i.e. PerfCntrGlobalCtl.PerfCntrEn */ wrmsrl(MSR_AMD64_PERF_CNTR_GLOBAL_CTL, 0); - /* Clear overflow bits i.e. PerfCntrGLobalStatus.PerfCntrOvfl */ - wrmsrl(MSR_AMD64_PERF_CNTR_GLOBAL_STATUS_CLR, amd_pmu_global_cntr_mask); + /* + * Clear freeze and overflow bits i.e. PerfCntrGLobalStatus.LbrFreeze + * and PerfCntrGLobalStatus.PerfCntrOvfl + */ + wrmsrl(MSR_AMD64_PERF_CNTR_GLOBAL_STATUS_CLR, + GLOBAL_STATUS_LBRS_FROZEN | amd_pmu_global_cntr_mask); } static int amd_pmu_cpu_prepare(int cpu) @@ -570,6 +574,7 @@ int i, nb_id; cpuc->perf_ctr_virt_mask = AMD64_EVENTSEL_HOSTONLY; + amd_pmu_cpu_reset(cpu); if (!x86_pmu.amd_nb_constraints) return; @@ -591,8 +596,6 @@ cpuc->amd_nb->nb_id = nb_id; cpuc->amd_nb->refcnt++; - - amd_pmu_cpu_reset(cpu); } static void amd_pmu_cpu_dead(int cpu) @@ -601,6 +604,7 @@ kfree(cpuhw->lbr_sel); cpuhw->lbr_sel = NULL; + amd_pmu_cpu_reset(cpu); if (!x86_pmu.amd_nb_constraints) return; @@ -613,8 +617,6 @@ cpuhw->amd_nb = NULL; } - - amd_pmu_cpu_reset(cpu); } static inline void amd_pmu_set_global_ctl(u64 ctl) @@ -884,7 +886,7 @@ struct hw_perf_event *hwc; struct perf_event *event; int handled = 0, idx; - u64 status, mask; + u64 reserved, status, mask; bool pmu_enabled; /* @@ -909,6 +911,14 @@ status &= ~GLOBAL_STATUS_LBRS_FROZEN; } + reserved = status & ~amd_pmu_global_cntr_mask; + if (reserved) + pr_warn_once("Reserved PerfCntrGlobalStatus bits are set (0x%llx), please consider updating microcode\n", + reserved); + + /* Clear any reserved bits set by buggy microcode */ + status &= amd_pmu_global_cntr_mask; + for (idx = 0; idx < x86_pmu.num_counters; idx++) { if (!test_bit(idx, cpuc->active_mask)) continue; --- linux-intel-opt-6.5.0.orig/arch/x86/events/intel/ds.c +++ linux-intel-opt-6.5.0/arch/x86/events/intel/ds.c @@ -2423,3 +2423,4 @@ wrmsrl(MSR_IA32_DS_AREA, (unsigned long)ds); } +EXPORT_SYMBOL_GPL(perf_restore_debug_store); --- linux-intel-opt-6.5.0.orig/arch/x86/events/intel/uncore_snbep.c +++ linux-intel-opt-6.5.0/arch/x86/events/intel/uncore_snbep.c @@ -6474,8 +6474,18 @@ type = uncore_find_type_by_id(uncore_msr_uncores, UNCORE_SPR_CHA); if (type) { + /* + * The value from the discovery table (stored in the type->num_boxes + * of UNCORE_SPR_CHA) is incorrect on some SPR variants because of a + * firmware bug. Using the value from SPR_MSR_UNC_CBO_CONFIG to replace it. + */ rdmsrl(SPR_MSR_UNC_CBO_CONFIG, num_cbo); - type->num_boxes = num_cbo; + /* + * The MSR doesn't work on the EMR XCC, but the firmware bug doesn't impact + * the EMR XCC. Don't let the value from the MSR replace the existing value. + */ + if (num_cbo) + type->num_boxes = num_cbo; } spr_uncore_iio_free_running.num_boxes = uncore_type_max_boxes(uncore_msr_uncores, UNCORE_SPR_IIO); } --- linux-intel-opt-6.5.0.orig/arch/x86/events/utils.c +++ linux-intel-opt-6.5.0/arch/x86/events/utils.c @@ -1,5 +1,6 @@ // SPDX-License-Identifier: GPL-2.0 #include +#include #include "perf_event.h" @@ -132,9 +133,9 @@ * The LBR logs any address in the IP, even if the IP just * faulted. This means userspace can control the from address. * Ensure we don't blindly read any address by validating it is - * a known text address. + * a known text address and not a vsyscall address. */ - if (kernel_text_address(from)) { + if (kernel_text_address(from) && !in_gate_area_no_mm(from)) { addr = (void *)from; /* * Assume we can get the maximum possible size --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/apm.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/apm.h @@ -35,6 +35,7 @@ __asm__ __volatile__(APM_DO_ZERO_SEGS "pushl %%edi\n\t" "pushl %%ebp\n\t" + ANNOTATE_RETPOLINE_SAFE /* FRBS */ "lcall *%%cs:apm_bios_entry\n\t" "setc %%al\n\t" "popl %%ebp\n\t" @@ -59,6 +60,7 @@ __asm__ __volatile__(APM_DO_ZERO_SEGS "pushl %%edi\n\t" "pushl %%ebp\n\t" + ANNOTATE_RETPOLINE_SAFE /* FRBS */ "lcall *%%cs:apm_bios_entry\n\t" "setc %%bl\n\t" "popl %%ebp\n\t" --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/boot.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/boot.h @@ -40,23 +40,40 @@ #ifdef CONFIG_X86_64 # define BOOT_STACK_SIZE 0x4000 +/* + * Used by decompressor's startup_32() to allocate page tables for identity + * mapping of the 4G of RAM in 4-level paging mode: + * - 1 level4 table; + * - 1 level3 table; + * - 4 level2 table that maps everything with 2M pages; + * + * The additional level5 table needed for 5-level paging is allocated from + * trampoline_32bit memory. + */ # define BOOT_INIT_PGT_SIZE (6*4096) -# ifdef CONFIG_RANDOMIZE_BASE + /* - * Assuming all cross the 512GB boundary: - * 1 page for level4 - * (2+2)*4 pages for kernel, param, cmd_line, and randomized kernel - * 2 pages for first 2M (video RAM: CONFIG_X86_VERBOSE_BOOTUP). - * Total is 19 pages. + * Total number of page tables kernel_add_identity_map() can allocate, + * including page tables consumed by startup_32(). + * + * Worst-case scenario: + * - 5-level paging needs 1 level5 table; + * - KASLR needs to map kernel, boot_params, cmdline and randomized kernel, + * assuming all of them cross 256T boundary: + * + 4*2 level4 table; + * + 4*2 level3 table; + * + 4*2 level2 table; + * - X86_VERBOSE_BOOTUP needs to map the first 2M (video RAM): + * + 1 level4 table; + * + 1 level3 table; + * + 1 level2 table; + * Total: 28 tables + * + * Add 4 spare table in case decompressor touches anything beyond what is + * accounted above. Warn if it happens. */ -# ifdef CONFIG_X86_VERBOSE_BOOTUP -# define BOOT_PGT_SIZE (19*4096) -# else /* !CONFIG_X86_VERBOSE_BOOTUP */ -# define BOOT_PGT_SIZE (17*4096) -# endif -# else /* !CONFIG_RANDOMIZE_BASE */ -# define BOOT_PGT_SIZE BOOT_INIT_PGT_SIZE -# endif +# define BOOT_PGT_SIZE_WARN (28*4096) +# define BOOT_PGT_SIZE (32*4096) #else /* !CONFIG_X86_64 */ # define BOOT_STACK_SIZE 0x1000 --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/cpufeatures.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/cpufeatures.h @@ -492,6 +492,7 @@ #define X86_BUG_EIBRS_PBRSB X86_BUG(28) /* EIBRS is vulnerable to Post Barrier RSB Predictions */ #define X86_BUG_SMT_RSB X86_BUG(29) /* CPU is vulnerable to Cross-Thread Return Address Predictions */ #define X86_BUG_GDS X86_BUG(30) /* CPU is affected by Gather Data Sampling */ +#define X86_BUG_TDX_PW_MCE X86_BUG(31) /* CPU may incur #MC if non-TD software does partial write to TDX private memory */ /* BUG word 2 */ #define X86_BUG_SRSO X86_BUG(1*32 + 0) /* AMD SRSO bug */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/irq.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/irq.h @@ -42,7 +42,7 @@ #ifdef CONFIG_X86_LOCAL_APIC void arch_trigger_cpumask_backtrace(const struct cpumask *mask, - bool exclude_self); + int exclude_cpu); #define arch_trigger_cpumask_backtrace arch_trigger_cpumask_backtrace #endif --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/kexec.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/kexec.h @@ -205,8 +205,6 @@ #endif #endif -typedef void crash_vmclear_fn(void); -extern crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss; extern void kdump_nmi_shootdown_cpus(void); #endif /* __ASSEMBLY__ */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/kvm-x86-ops.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/kvm-x86-ops.h @@ -18,10 +18,18 @@ KVM_X86_OP(hardware_enable) KVM_X86_OP(hardware_disable) KVM_X86_OP(hardware_unsetup) +KVM_X86_OP_OPTIONAL_RET0(offline_cpu) KVM_X86_OP(has_emulated_msr) +/* TODO: Once all backend implemented this op, remove _OPTIONAL_RET0. */ +KVM_X86_OP_OPTIONAL_RET0(vcpu_check_cpuid) KVM_X86_OP(vcpu_after_set_cpuid) +KVM_X86_OP(is_vm_type_supported) +KVM_X86_OP_OPTIONAL(max_vcpus); +KVM_X86_OP_OPTIONAL(vm_enable_cap) KVM_X86_OP(vm_init) +KVM_X86_OP_OPTIONAL(flush_shadow_all_private) KVM_X86_OP_OPTIONAL(vm_destroy) +KVM_X86_OP_OPTIONAL(vm_free) KVM_X86_OP_OPTIONAL_RET0(vcpu_precreate) KVM_X86_OP(vcpu_create) KVM_X86_OP(vcpu_free) @@ -93,6 +101,14 @@ KVM_X86_OP_OPTIONAL_RET0(set_identity_map_addr) KVM_X86_OP_OPTIONAL_RET0(get_mt_mask) KVM_X86_OP(load_mmu_pgd) +KVM_X86_OP_OPTIONAL(link_private_spt) +KVM_X86_OP_OPTIONAL(free_private_spt) +KVM_X86_OP_OPTIONAL(split_private_spt) +KVM_X86_OP_OPTIONAL(merge_private_spt) +KVM_X86_OP_OPTIONAL(set_private_spte) +KVM_X86_OP_OPTIONAL(remove_private_spte) +KVM_X86_OP_OPTIONAL(zap_private_spte) +KVM_X86_OP_OPTIONAL(unzap_private_spte) KVM_X86_OP(has_wbinvd_exit) KVM_X86_OP(get_l2_tsc_offset) KVM_X86_OP(get_l2_tsc_multiplier) @@ -110,6 +126,7 @@ KVM_X86_OP_OPTIONAL(pi_start_assignment) KVM_X86_OP_OPTIONAL(apicv_post_state_restore) KVM_X86_OP_OPTIONAL_RET0(dy_apicv_has_pending_interrupt) +KVM_X86_OP_OPTIONAL(protected_apic_has_interrupt) KVM_X86_OP_OPTIONAL(set_hv_timer) KVM_X86_OP_OPTIONAL(cancel_hv_timer) KVM_X86_OP(setup_mce) @@ -119,7 +136,8 @@ KVM_X86_OP(leave_smm) KVM_X86_OP(enable_smi_window) #endif -KVM_X86_OP_OPTIONAL(mem_enc_ioctl) +KVM_X86_OP(mem_enc_ioctl) +KVM_X86_OP_OPTIONAL(vcpu_mem_enc_ioctl) KVM_X86_OP_OPTIONAL(mem_enc_register_region) KVM_X86_OP_OPTIONAL(mem_enc_unregister_region) KVM_X86_OP_OPTIONAL(vm_copy_enc_context_from) @@ -133,7 +151,10 @@ KVM_X86_OP(msr_filter_changed) KVM_X86_OP(complete_emulated_msr) KVM_X86_OP(vcpu_deliver_sipi_vector) +KVM_X86_OP(vcpu_deliver_init) KVM_X86_OP_OPTIONAL_RET0(vcpu_get_apicv_inhibit_reasons); +KVM_X86_OP_OPTIONAL_RET0(gmem_prepare) +KVM_X86_OP_OPTIONAL(gmem_invalidate) #undef KVM_X86_OP #undef KVM_X86_OP_OPTIONAL --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/kvm_host.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/kvm_host.h @@ -138,6 +138,7 @@ #define KVM_MAX_HUGEPAGE_LEVEL PG_LEVEL_1G #define KVM_NR_PAGE_SIZES (KVM_MAX_HUGEPAGE_LEVEL - PG_LEVEL_4K + 1) #define KVM_HPAGE_GFN_SHIFT(x) (((x) - 1) * 9) +#define KVM_HPAGE_GFN_MASK(x) (~((1UL << KVM_HPAGE_GFN_SHIFT(x)) - 1)) #define KVM_HPAGE_SHIFT(x) (PAGE_SHIFT + KVM_HPAGE_GFN_SHIFT(x)) #define KVM_HPAGE_SIZE(x) (1UL << KVM_HPAGE_SHIFT(x)) #define KVM_HPAGE_MASK(x) (~(KVM_HPAGE_SIZE(x) - 1)) @@ -253,8 +254,11 @@ #define PFERR_FETCH_BIT 4 #define PFERR_PK_BIT 5 #define PFERR_SGX_BIT 15 +#define PFERR_LEVEL_START_BIT 29 +#define PFERR_LEVEL_END_BIT 31 #define PFERR_GUEST_FINAL_BIT 32 #define PFERR_GUEST_PAGE_BIT 33 +#define PFERR_GUEST_ENC_BIT 34 #define PFERR_IMPLICIT_ACCESS_BIT 48 #define PFERR_PRESENT_MASK BIT(PFERR_PRESENT_BIT) @@ -264,14 +268,18 @@ #define PFERR_FETCH_MASK BIT(PFERR_FETCH_BIT) #define PFERR_PK_MASK BIT(PFERR_PK_BIT) #define PFERR_SGX_MASK BIT(PFERR_SGX_BIT) +#define PFERR_LEVEL_MASK GENMASK_ULL(PFERR_LEVEL_END_BIT, PFERR_LEVEL_START_BIT) #define PFERR_GUEST_FINAL_MASK BIT_ULL(PFERR_GUEST_FINAL_BIT) #define PFERR_GUEST_PAGE_MASK BIT_ULL(PFERR_GUEST_PAGE_BIT) +#define PFERR_GUEST_ENC_MASK BIT_ULL(PFERR_GUEST_ENC_BIT) #define PFERR_IMPLICIT_ACCESS BIT_ULL(PFERR_IMPLICIT_ACCESS_BIT) #define PFERR_NESTED_GUEST_PAGE (PFERR_GUEST_PAGE_MASK | \ PFERR_WRITE_MASK | \ PFERR_PRESENT_MASK) +#define PFERR_LEVEL(err_code) (((err_code) & PFERR_LEVEL_MASK) >> PFERR_LEVEL_START_BIT) + /* apic attention bits */ #define KVM_APIC_CHECK_VAPIC 0 /* @@ -338,7 +346,12 @@ unsigned ad_disabled:1; unsigned guest_mode:1; unsigned passthrough:1; +#ifdef CONFIG_KVM_MMU_PRIVATE + unsigned is_private:1; + unsigned :4; +#else unsigned :5; +#endif /* * This is left at the top of the word so that @@ -350,6 +363,28 @@ }; }; +#ifdef CONFIG_KVM_MMU_PRIVATE +static inline bool kvm_mmu_page_role_is_private(union kvm_mmu_page_role role) +{ + return !!role.is_private; +} + +static inline void kvm_mmu_page_role_set_private(union kvm_mmu_page_role *role) +{ + role->is_private = 1; +} +#else +static inline bool kvm_mmu_page_role_is_private(union kvm_mmu_page_role role) +{ + return false; +} + +static inline void kvm_mmu_page_role_set_private(union kvm_mmu_page_role *role) +{ + WARN_ON_ONCE(1); +} +#endif + /* * kvm_mmu_extended_role complements kvm_mmu_page_role, tracking properties * relevant to the current MMU configuration. When loading CR0, CR4, or EFER, @@ -446,6 +481,7 @@ int (*sync_spte)(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp, int i); struct kvm_mmu_root_info root; + hpa_t private_root_hpa; union kvm_cpu_role cpu_role; union kvm_mmu_page_role root_role; @@ -573,8 +609,14 @@ struct kvm_pmu_ops; enum { - KVM_DEBUGREG_BP_ENABLED = 1, - KVM_DEBUGREG_WONT_EXIT = 2, + KVM_DEBUGREG_BP_ENABLED = BIT(0), + KVM_DEBUGREG_WONT_EXIT = BIT(1), + /* + * Guest debug registers (DR0-3 and DR6) are saved/restored by hardware + * on exit from or enter to guest. KVM needn't switch them. Because DR7 + * is cleared on exit from guest, DR7 need to be saved/restored. + */ + KVM_DEBUGREG_AUTO_SWITCH = BIT(2), }; struct kvm_mtrr_range { @@ -788,6 +830,11 @@ struct kvm_mmu_memory_cache mmu_shadow_page_cache; struct kvm_mmu_memory_cache mmu_shadowed_info_cache; struct kvm_mmu_memory_cache mmu_page_header_cache; + /* + * This cache is to allocate private page table. E.g. Secure-EPT used + * by the TDX module. + */ + struct kvm_mmu_memory_cache mmu_private_spt_cache; /* * QEMU userspace and the guest each have their own FPU state. @@ -1224,13 +1271,24 @@ * mapping between logical ID and vCPU. */ APICV_INHIBIT_REASON_LOGICAL_ID_ALIASED, + + /*********************************************************/ + /* INHIBITs that are relevant only to the Intel's APICv. */ + /*********************************************************/ + + /* + * APICv is disabled because TDX doesn't support it. + */ + APICV_INHIBIT_REASON_TDX, }; struct kvm_arch { + unsigned long vm_type; unsigned long n_used_mmu_pages; unsigned long n_requested_mmu_pages; unsigned long n_max_mmu_pages; unsigned int indirect_shadow_pages; + int tdp_max_page_level; u8 mmu_valid_gen; struct hlist_head mmu_page_hash[KVM_NUM_MMU_PAGES]; struct list_head active_mmu_pages; @@ -1257,6 +1315,8 @@ */ spinlock_t mmu_unsync_pages_lock; + u64 shadow_mmio_value; + struct list_head assigned_dev_head; struct iommu_domain *iommu_domain; bool iommu_noncoherent; @@ -1365,9 +1425,12 @@ struct task_struct *nx_huge_page_recovery_thread; #ifdef CONFIG_X86_64 - /* The number of TDP MMU pages across all roots. */ + /* The number of non-private TDP MMU pages across all roots. */ atomic64_t tdp_mmu_pages; + /* Same as tdp_mmu_pages but only for private pages. */ + atomic64_t tdp_private_mmu_pages; + /* * List of struct kvm_mmu_pages being used as roots. * All struct kvm_mmu_pages in the list should have @@ -1400,7 +1463,6 @@ * the thread holds the MMU lock in write mode. */ spinlock_t tdp_mmu_pages_lock; - struct workqueue_struct *tdp_mmu_zap_wq; #endif /* CONFIG_X86_64 */ /* @@ -1433,6 +1495,10 @@ struct kvm_mmu_memory_cache split_shadow_page_cache; struct kvm_mmu_memory_cache split_page_header_cache; +#ifdef CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + struct mutex private_spt_for_split_lock; + struct kvm_mmu_memory_cache private_spt_for_split_cache; +#endif /* * Memory cache used to allocate pte_list_desc structs while splitting * huge pages. In the worst case, to split one huge page, 512 @@ -1444,6 +1510,10 @@ */ #define SPLIT_DESC_CACHE_MIN_NR_OBJECTS (SPTE_ENT_PER_PAGE + 1) struct kvm_mmu_memory_cache split_desc_cache; + +#ifdef CONFIG_KVM_MMU_PRIVATE + gfn_t gfn_shared_mask; +#endif }; struct kvm_vm_stat { @@ -1539,12 +1609,19 @@ int (*hardware_enable)(void); void (*hardware_disable)(void); void (*hardware_unsetup)(void); + int (*offline_cpu)(void); bool (*has_emulated_msr)(struct kvm *kvm, u32 index); + int (*vcpu_check_cpuid)(struct kvm_vcpu *vcpu, struct kvm_cpuid_entry2 *e2, int nent); void (*vcpu_after_set_cpuid)(struct kvm_vcpu *vcpu); + bool (*is_vm_type_supported)(unsigned long vm_type); + int (*max_vcpus)(struct kvm *kvm); unsigned int vm_size; + int (*vm_enable_cap)(struct kvm *kvm, struct kvm_enable_cap *cap); int (*vm_init)(struct kvm *kvm); + void (*flush_shadow_all_private)(struct kvm *kvm); void (*vm_destroy)(struct kvm *kvm); + void (*vm_free)(struct kvm *kvm); /* Create, but do not attach this VCPU */ int (*vcpu_precreate)(struct kvm *kvm); @@ -1651,6 +1728,21 @@ void (*load_mmu_pgd)(struct kvm_vcpu *vcpu, hpa_t root_hpa, int root_level); + int (*link_private_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + void *private_spt); + int (*free_private_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + void *private_spt); + int (*split_private_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + void *private_spt); + int (*merge_private_spt)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + void *private_spt); + int (*set_private_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + kvm_pfn_t pfn); + int (*remove_private_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level, + kvm_pfn_t pfn); + int (*zap_private_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level); + int (*unzap_private_spte)(struct kvm *kvm, gfn_t gfn, enum pg_level level); + bool (*has_wbinvd_exit)(void); u64 (*get_l2_tsc_offset)(struct kvm_vcpu *vcpu); @@ -1693,6 +1785,7 @@ void (*pi_start_assignment)(struct kvm *kvm); void (*apicv_post_state_restore)(struct kvm_vcpu *vcpu); bool (*dy_apicv_has_pending_interrupt)(struct kvm_vcpu *vcpu); + bool (*protected_apic_has_interrupt)(struct kvm_vcpu *vcpu); int (*set_hv_timer)(struct kvm_vcpu *vcpu, u64 guest_deadline_tsc, bool *expired); @@ -1708,6 +1801,7 @@ #endif int (*mem_enc_ioctl)(struct kvm *kvm, void __user *argp); + int (*vcpu_mem_enc_ioctl)(struct kvm_vcpu *vcpu, void __user *argp); int (*mem_enc_register_region)(struct kvm *kvm, struct kvm_enc_region *argp); int (*mem_enc_unregister_region)(struct kvm *kvm, struct kvm_enc_region *argp); int (*vm_copy_enc_context_from)(struct kvm *kvm, unsigned int source_fd); @@ -1727,11 +1821,16 @@ int (*complete_emulated_msr)(struct kvm_vcpu *vcpu, int err); void (*vcpu_deliver_sipi_vector)(struct kvm_vcpu *vcpu, u8 vector); + void (*vcpu_deliver_init)(struct kvm_vcpu *vcpu); /* * Returns vCPU specific APICv inhibit reasons */ unsigned long (*vcpu_get_apicv_inhibit_reasons)(struct kvm_vcpu *vcpu); + + int (*gmem_prepare)(struct kvm *kvm, struct kvm_memory_slot *slot, + kvm_pfn_t pfn, gfn_t gfn, u8 *max_level); + void (*gmem_invalidate)(struct kvm *kvm, kvm_pfn_t start, kvm_pfn_t end); }; struct kvm_x86_nested_ops { @@ -1769,6 +1868,7 @@ gfn_t gfn; unsigned long cr3; bool direct_map; + u64 error_code; }; extern u32 __read_mostly kvm_nr_uret_msrs; @@ -1814,9 +1914,12 @@ void kvm_mmu_destroy(struct kvm_vcpu *vcpu); int kvm_mmu_create(struct kvm_vcpu *vcpu); -int kvm_mmu_init_vm(struct kvm *kvm); +void kvm_mmu_init_vm(struct kvm *kvm); void kvm_mmu_uninit_vm(struct kvm *kvm); +void kvm_mmu_init_memslot_memory_attributes(struct kvm *kvm, + struct kvm_memory_slot *slot); + void kvm_mmu_after_set_cpuid(struct kvm_vcpu *vcpu); void kvm_mmu_reset_context(struct kvm_vcpu *vcpu); void kvm_mmu_slot_remove_write_access(struct kvm *kvm, @@ -1836,6 +1939,7 @@ void kvm_mmu_zap_all(struct kvm *kvm); void kvm_mmu_invalidate_mmio_sptes(struct kvm *kvm, u64 gen); void kvm_mmu_change_mmu_pages(struct kvm *kvm, unsigned long kvm_nr_mmu_pages); +void kvm_zap_gfn_range(struct kvm *kvm, gfn_t gfn_start, gfn_t gfn_end); int load_pdptrs(struct kvm_vcpu *vcpu, unsigned long cr3); @@ -1958,6 +2062,7 @@ void kvm_set_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg); int kvm_load_segment_descriptor(struct kvm_vcpu *vcpu, u16 selector, int seg); void kvm_vcpu_deliver_sipi_vector(struct kvm_vcpu *vcpu, u8 vector); +void kvm_vcpu_deliver_init(struct kvm_vcpu *vcpu); int kvm_task_switch(struct kvm_vcpu *vcpu, u16 tss_selector, int idt_index, int reason, bool has_error_code, u32 error_code); @@ -2043,6 +2148,10 @@ kvm_set_or_clear_apicv_inhibit(kvm, reason, false); } +unsigned long __kvm_emulate_hypercall(struct kvm_vcpu *vcpu, unsigned long nr, + unsigned long a0, unsigned long a1, + unsigned long a2, unsigned long a3, + int op_64_bit); int kvm_emulate_hypercall(struct kvm_vcpu *vcpu); int kvm_mmu_page_fault(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, u64 error_code, @@ -2056,6 +2165,12 @@ void kvm_configure_mmu(bool enable_tdp, int tdp_forced_root_level, int tdp_max_root_level, int tdp_huge_page_level); +#ifdef CONFIG_KVM_PRIVATE_MEM +#define kvm_arch_has_private_mem(kvm) ((kvm)->arch.vm_type != KVM_X86_DEFAULT_VM) +#else +#define kvm_arch_has_private_mem(kvm) false +#endif + static inline u16 kvm_read_ldt(void) { u16 ldt; @@ -2103,16 +2218,15 @@ #define HF_SMM_MASK (1 << 1) #define HF_SMM_INSIDE_NMI_MASK (1 << 2) -# define __KVM_VCPU_MULTIPLE_ADDRESS_SPACE -# define KVM_ADDRESS_SPACE_NUM 2 +# define KVM_MAX_NR_ADDRESS_SPACES 2 +/* SMM is currently unsupported for guests with private memory. */ +# define kvm_arch_nr_memslot_as_ids(kvm) (kvm_arch_has_private_mem(kvm) ? 1 : 2) # define kvm_arch_vcpu_memslots_id(vcpu) ((vcpu)->arch.hflags & HF_SMM_MASK ? 1 : 0) # define kvm_memslots_for_spte_role(kvm, role) __kvm_memslots(kvm, (role).smm) #else # define kvm_memslots_for_spte_role(kvm, role) __kvm_memslots(kvm, 0) #endif -#define KVM_ARCH_WANT_MMU_NOTIFIER - int kvm_cpu_has_injectable_intr(struct kvm_vcpu *v); int kvm_cpu_has_interrupt(struct kvm_vcpu *vcpu); int kvm_cpu_has_extint(struct kvm_vcpu *v); @@ -2127,6 +2241,7 @@ int kvm_add_user_return_msr(u32 msr); int kvm_find_user_return_msr(u32 msr); int kvm_set_user_return_msr(unsigned index, u64 val, u64 mask); +void kvm_user_return_update_cache(unsigned int index, u64 val); static inline bool kvm_is_supported_user_return_msr(u32 msr) { @@ -2218,4 +2333,9 @@ */ #define KVM_EXIT_HYPERCALL_MBZ GENMASK_ULL(31, 1) +#if IS_ENABLED(CONFIG_KVM_INTEL) +int vmxon_get(void); +void vmxoff_put(void); +#endif + #endif /* _ASM_X86_KVM_HOST_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/linkage.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/linkage.h @@ -8,6 +8,14 @@ #undef notrace #define notrace __attribute__((no_instrument_function)) +#ifdef CONFIG_64BIT +/* + * The generic version tends to create spurious ENDBR instructions under + * certain conditions. + */ +#define _THIS_IP_ ({ unsigned long __here; asm ("lea 0(%%rip), %0" : "=r" (__here)); __here; }) +#endif + #ifdef CONFIG_X86_32 #define asmlinkage CPP_ASMLINKAGE __attribute__((regparm(0))) #endif /* CONFIG_X86_32 */ @@ -97,6 +105,13 @@ CFI_POST_PADDING \ SYM_FUNC_END(__cfi_##name) +/* UML needs to be able to override memcpy() and friends for KASAN. */ +#ifdef CONFIG_UML +# define SYM_FUNC_ALIAS_MEMFUNC SYM_FUNC_ALIAS_WEAK +#else +# define SYM_FUNC_ALIAS_MEMFUNC SYM_FUNC_ALIAS +#endif + /* SYM_TYPED_FUNC_START -- use for indirectly called globals, w/ CFI type */ #define SYM_TYPED_FUNC_START(name) \ SYM_TYPED_START(name, SYM_L_GLOBAL, SYM_F_ALIGN) \ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/local.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/local.h @@ -127,8 +127,8 @@ static inline bool local_try_cmpxchg(local_t *l, long *old, long new) { - typeof(l->a.counter) *__old = (typeof(l->a.counter) *) old; - return try_cmpxchg_local(&l->a.counter, __old, new); + return try_cmpxchg_local(&l->a.counter, + (typeof(l->a.counter) *) old, new); } /* Always has a lock prefix */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/mem_encrypt.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/mem_encrypt.h @@ -43,15 +43,14 @@ void __init sme_unmap_bootdata(char *real_mode_data); void __init sme_early_init(void); -void __init sev_setup_arch(void); void __init sme_encrypt_kernel(struct boot_params *bp); void __init sme_enable(struct boot_params *bp); int __init early_set_memory_decrypted(unsigned long vaddr, unsigned long size); int __init early_set_memory_encrypted(unsigned long vaddr, unsigned long size); -void __init early_set_mem_enc_dec_hypercall(unsigned long vaddr, int npages, - bool enc); +void __init early_set_mem_enc_dec_hypercall(unsigned long vaddr, + unsigned long size, bool enc); void __init mem_encrypt_free_decrypted_mem(void); @@ -73,7 +72,6 @@ static inline void __init sme_unmap_bootdata(char *real_mode_data) { } static inline void __init sme_early_init(void) { } -static inline void __init sev_setup_arch(void) { } static inline void __init sme_encrypt_kernel(struct boot_params *bp) { } static inline void __init sme_enable(struct boot_params *bp) { } @@ -85,7 +83,7 @@ static inline int __init early_set_memory_encrypted(unsigned long vaddr, unsigned long size) { return 0; } static inline void __init -early_set_mem_enc_dec_hypercall(unsigned long vaddr, int npages, bool enc) {} +early_set_mem_enc_dec_hypercall(unsigned long vaddr, unsigned long size, bool enc) {} static inline void mem_encrypt_free_decrypted_mem(void) { } @@ -95,6 +93,15 @@ void add_encrypt_protection_map(void); +#ifdef CONFIG_X86_MEM_ENCRYPT + +void __init mem_encrypt_setup_arch(void); + +#else /* !CONFIG_X86_MEM_ENCRYPT */ + +static inline void __init mem_encrypt_setup_arch(void) { } + +#endif /* CONFIG_X86_MEM_ENCRYPT */ /* * The __sme_pa() and __sme_pa_nodebug() macros are meant for use when * writing to or comparing values from the cr3 register. Having the --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/msr-index.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/msr-index.h @@ -535,6 +535,9 @@ #define MSR_RELOAD_PMC0 0x000014c1 #define MSR_RELOAD_FIXED_CTR0 0x00001309 +/* KeyID partitioning between MKTME and TDX */ +#define MSR_IA32_MKTME_KEYID_PARTITIONING 0x00000087 + /* * AMD64 MSRs. Not complete. See the architecture manual for a more * complete list. @@ -637,12 +640,17 @@ /* AMD Last Branch Record MSRs */ #define MSR_AMD64_LBR_SELECT 0xc000010e -/* Fam 17h MSRs */ -#define MSR_F17H_IRPERF 0xc00000e9 +/* Zen4 */ +#define MSR_ZEN4_BP_CFG 0xc001102e +#define MSR_ZEN4_BP_CFG_SHARED_BTB_FIX_BIT 5 +/* Zen 2 */ #define MSR_ZEN2_SPECTRAL_CHICKEN 0xc00110e3 #define MSR_ZEN2_SPECTRAL_CHICKEN_BIT BIT_ULL(1) +/* Fam 17h MSRs */ +#define MSR_F17H_IRPERF 0xc00000e9 + /* Fam 16h MSRs */ #define MSR_F16H_L2I_PERF_CTL 0xc0010230 #define MSR_F16H_L2I_PERF_CTR 0xc0010231 @@ -1062,6 +1070,22 @@ /* Geode defined MSRs */ #define MSR_GEODE_BUSCONT_CONF0 0x00001900 +/* MKTME MSRs */ +#define MSR_IA32_TME_ACTIVATE 0x00000982 + +/* Helpers to access TME_ACTIVATE MSR */ +#define TME_ACTIVATE_LOCKED(x) (x & 0x1) +#define TME_ACTIVATE_ENABLED(x) (x & 0x2) + +#define TME_ACTIVATE_POLICY(x) ((x >> 4) & 0xf) /* Bits 7:4 */ +#define TME_ACTIVATE_KEYID_BITS(x) ((x >> 32) & 0xf) /* Bits 35:32 */ + +#define TME_ACTIVATE_POLICY_AES_XTS_128 0 + +#define TME_ACTIVATE_CRYPTO_ALGS(x) ((x >> 48) & 0xffff) /* Bits 63:48 */ +#define TME_ACTIVATE_CRYPTO_AES_XTS_128 1 + + /* Intel VT MSRs */ #define MSR_IA32_VMX_BASIC 0x00000480 #define MSR_IA32_VMX_PINBASED_CTLS 0x00000481 --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/pci-direct.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/pci-direct.h @@ -10,9 +10,11 @@ extern u32 read_pci_config(u8 bus, u8 slot, u8 func, u8 offset); extern u8 read_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset); extern u16 read_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset); +extern u32 pci_early_find_cap(int bus, int slot, int func, int cap); extern void write_pci_config(u8 bus, u8 slot, u8 func, u8 offset, u32 val); extern void write_pci_config_byte(u8 bus, u8 slot, u8 func, u8 offset, u8 val); extern void write_pci_config_16(u8 bus, u8 slot, u8 func, u8 offset, u16 val); +extern unsigned int pci_early_clear_msi; extern int early_pci_allowed(void); #endif /* _ASM_X86_PCI_DIRECT_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/pgtable_types.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/pgtable_types.h @@ -125,11 +125,12 @@ * instance, and is *not* included in this mask since * pte_modify() does modify it. */ -#define _PAGE_CHG_MASK (PTE_PFN_MASK | _PAGE_PCD | _PAGE_PWT | \ - _PAGE_SPECIAL | _PAGE_ACCESSED | _PAGE_DIRTY | \ - _PAGE_SOFT_DIRTY | _PAGE_DEVMAP | _PAGE_ENC | \ - _PAGE_UFFD_WP) -#define _HPAGE_CHG_MASK (_PAGE_CHG_MASK | _PAGE_PSE) +#define _COMMON_PAGE_CHG_MASK (PTE_PFN_MASK | _PAGE_PCD | _PAGE_PWT | \ + _PAGE_SPECIAL | _PAGE_ACCESSED | _PAGE_DIRTY |\ + _PAGE_SOFT_DIRTY | _PAGE_DEVMAP | _PAGE_ENC | \ + _PAGE_UFFD_WP) +#define _PAGE_CHG_MASK (_COMMON_PAGE_CHG_MASK | _PAGE_PAT) +#define _HPAGE_CHG_MASK (_COMMON_PAGE_CHG_MASK | _PAGE_PSE | _PAGE_PAT_LARGE) /* * The cache modes defined here are used to translate between pure SW usage --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/processor.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/processor.h @@ -676,12 +676,10 @@ #ifdef CONFIG_CPU_SUP_AMD extern u32 amd_get_nodes_per_socket(void); extern u32 amd_get_highest_perf(void); -extern bool cpu_has_ibpb_brtype_microcode(void); extern void amd_clear_divider(void); #else static inline u32 amd_get_nodes_per_socket(void) { return 0; } static inline u32 amd_get_highest_perf(void) { return 0; } -static inline bool cpu_has_ibpb_brtype_microcode(void) { return false; } static inline void amd_clear_divider(void) { } #endif --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/reboot.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/reboot.h @@ -25,6 +25,8 @@ #define MRR_BIOS 0 #define MRR_APM 1 +typedef void crash_vmclear_fn(void); +extern crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss; void cpu_emergency_disable_virtualization(void); typedef void (*nmi_shootdown_cb)(int, struct pt_regs*); --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/sections.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/sections.h @@ -2,8 +2,6 @@ #ifndef _ASM_X86_SECTIONS_H #define _ASM_X86_SECTIONS_H -#define arch_is_kernel_initmem_freed arch_is_kernel_initmem_freed - #include #include @@ -18,20 +16,4 @@ extern unsigned long _brk_start, _brk_end; -static inline bool arch_is_kernel_initmem_freed(unsigned long addr) -{ - /* - * If _brk_start has not been cleared, brk allocation is incomplete, - * and we can not make assumptions about its use. - */ - if (_brk_start) - return 0; - - /* - * After brk allocation is complete, space between _brk_end and _end - * is available for allocation. - */ - return addr >= _brk_end && addr < (unsigned long)&_end; -} - #endif /* _ASM_X86_SECTIONS_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/set_memory.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/set_memory.h @@ -46,6 +46,7 @@ int set_memory_uc(unsigned long addr, int numpages); int set_memory_wc(unsigned long addr, int numpages); int set_memory_wb(unsigned long addr, int numpages); +int set_memory_p(unsigned long addr, int numpages); int set_memory_np(unsigned long addr, int numpages); int set_memory_4k(unsigned long addr, int numpages); int set_memory_encrypted(unsigned long addr, int numpages); @@ -85,6 +86,7 @@ int set_direct_map_invalid_noflush(struct page *page); int set_direct_map_default_noflush(struct page *page); +int set_direct_map_split_noflush(struct page *page); bool kernel_page_present(struct page *page); extern int kernel_set_to_readonly; --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/shared/tdx.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/shared/tdx.h @@ -11,11 +11,13 @@ #define TDX_IDENT "IntelTDX " /* TDX module Call Leaf IDs */ -#define TDX_GET_INFO 1 -#define TDX_GET_VEINFO 3 -#define TDX_GET_REPORT 4 -#define TDX_ACCEPT_PAGE 6 -#define TDX_WR 8 +#define TDG_VP_VMCALL 0 +#define TDG_VP_INFO 1 +#define TDG_MR_RTMR_EXTEND 2 +#define TDG_VP_VEINFO_GET 3 +#define TDG_MR_REPORT 4 +#define TDG_MEM_PAGE_ACCEPT 6 +#define TDG_VM_WR 8 /* TDCS fields. To be used by TDG.VM.WR and TDG.VM.RD module calls */ #define TDCS_NOTIFY_ENABLES 0x9100000000000010 @@ -24,15 +26,62 @@ #define TDVMCALL_MAP_GPA 0x10001 #define TDVMCALL_REPORT_FATAL_ERROR 0x10003 +/* + * Bitmasks of exposed registers (with VMM). + */ +#define TDX_RDX BIT(2) +#define TDX_RBX BIT(3) +#define TDX_RSI BIT(6) +#define TDX_RDI BIT(7) +#define TDX_R8 BIT(8) +#define TDX_R9 BIT(9) +#define TDX_R10 BIT(10) +#define TDX_R11 BIT(11) +#define TDX_R12 BIT(12) +#define TDX_R13 BIT(13) +#define TDX_R14 BIT(14) +#define TDX_R15 BIT(15) + +/* + * These registers are clobbered to hold arguments for each + * TDVMCALL. They are safe to expose to the VMM. + * Each bit in this mask represents a register ID. Bit field + * details can be found in TDX GHCI specification, section + * titled "TDCALL [TDG.VP.VMCALL] leaf". + */ +#define TDVMCALL_EXPOSE_REGS_MASK \ + (TDX_RDX | TDX_RBX | TDX_RSI | TDX_RDI | TDX_R8 | TDX_R9 | \ + TDX_R10 | TDX_R11 | TDX_R12 | TDX_R13 | TDX_R14 | TDX_R15) + +/* TDX supported page sizes from the TDX module ABI. */ +#define TDX_PS_4K 0 +#define TDX_PS_2M 1 +#define TDX_PS_1G 2 +#define TDX_PS_NR (TDX_PS_1G + 1) + #ifndef __ASSEMBLY__ /* - * Used in __tdx_hypercall() to pass down and get back registers' values of - * the TDCALL instruction when requesting services from the VMM. + * Used in __tdcall*() to gather the input/output registers' values of the + * TDCALL instruction when requesting services from the TDX module. This is a + * software only structure and not part of the TDX module/VMM ABI * - * This is a software only structure and not part of the TDX module/VMM ABI. + * Note those *_unused are not used by the TDX_MODULE_CALL assembly. + * The layout of this structure also matches KVM's kvm_vcpu_arch::regs[] + * layout, which follows the "register index" order of x86 GPRs. KVM + * then can simply type cast kvm_vcpu_arch::regs[] to this structure to + * avoid the extra memory copy between two structures when making + * TDH.VP.ENTER SEAMCALL. */ -struct tdx_hypercall_args { +struct tdx_module_args { + u64 rax_unused; + u64 rcx; + u64 rdx; + u64 rbx; + u64 rsp_unused; + u64 rbp_unused; + u64 rsi; + u64 rdi; u64 r8; u64 r9; u64 r10; @@ -41,15 +90,15 @@ u64 r13; u64 r14; u64 r15; - u64 rdi; - u64 rsi; - u64 rbx; - u64 rdx; }; +/* Used to communicate with the TDX module */ +u64 __tdcall(u64 fn, struct tdx_module_args *args); +u64 __tdcall_ret(u64 fn, struct tdx_module_args *args); +u64 __tdcall_saved_ret(u64 fn, struct tdx_module_args *args); + /* Used to request services from the VMM */ -u64 __tdx_hypercall(struct tdx_hypercall_args *args); -u64 __tdx_hypercall_ret(struct tdx_hypercall_args *args); +u64 __tdx_hypercall(struct tdx_module_args *args); /* * Wrapper for standard use of __tdx_hypercall with no output aside from @@ -57,7 +106,7 @@ */ static inline u64 _tdx_hypercall(u64 fn, u64 r12, u64 r13, u64 r14, u64 r15) { - struct tdx_hypercall_args args = { + struct tdx_module_args args = { .r10 = TDX_HYPERCALL_STANDARD, .r11 = fn, .r12 = r12, @@ -73,24 +122,6 @@ /* Called from __tdx_hypercall() for unrecoverable failure */ void __tdx_hypercall_failed(void); -/* - * Used in __tdx_module_call() to gather the output registers' values of the - * TDCALL instruction when requesting services from the TDX module. This is a - * software only structure and not part of the TDX module/VMM ABI - */ -struct tdx_module_output { - u64 rcx; - u64 rdx; - u64 r8; - u64 r9; - u64 r10; - u64 r11; -}; - -/* Used to communicate with the TDX module */ -u64 __tdx_module_call(u64 fn, u64 rcx, u64 rdx, u64 r8, u64 r9, - struct tdx_module_output *out); - bool tdx_accept_memory(phys_addr_t start, phys_addr_t end); /* --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/smp.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/smp.h @@ -134,8 +134,6 @@ void native_send_call_func_single_ipi(int cpu); void x86_idle_thread_init(unsigned int cpu, struct task_struct *idle); -bool smp_park_other_cpus_in_init(void); - void smp_store_boot_cpu_info(void); void smp_store_cpu_info(int id); --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/tdx.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/tdx.h @@ -8,6 +8,7 @@ #include #include +#include #include /* @@ -16,9 +17,12 @@ * Bits 47:40 == 0xFF indicate Reserved status code class that never used by * TDX module. */ -#define TDX_ERROR _BITUL(63) +#define TDX_ERROR _BITULL(63) #define TDX_SW_ERROR (TDX_ERROR | GENMASK_ULL(47, 40)) -#define TDX_SEAMCALL_VMFAILINVALID (TDX_SW_ERROR | _UL(0xFFFF0000)) +#define TDX_SEAMCALL_VMFAILINVALID (TDX_SW_ERROR | _ULL(0xFFFF0000)) + +#define TDX_SEAMCALL_GP (TDX_SW_ERROR | X86_TRAP_GP) +#define TDX_SEAMCALL_UD (TDX_SW_ERROR | X86_TRAP_UD) #ifndef __ASSEMBLY__ @@ -52,6 +56,8 @@ int tdx_mcall_get_report0(u8 *reportdata, u8 *tdreport); +int tdx_mcall_extend_rtmr(u8 *data, u8 index); + #else static inline void tdx_early_init(void) { }; @@ -72,5 +78,109 @@ return -ENODEV; } #endif /* CONFIG_INTEL_TDX_GUEST && CONFIG_KVM_GUEST */ + +#ifdef CONFIG_INTEL_TDX_HOST +u64 __seamcall(u64 fn, struct tdx_module_args *args); +u64 __seamcall_ret(u64 fn, struct tdx_module_args *args); +u64 __seamcall_saved_ret(u64 fn, struct tdx_module_args *args); + +#define DEBUGCONFIG_TRACE_ALL 0 +#define DEBUGCONFIG_TRACE_WARN 1 +#define DEBUGCONFIG_TRACE_ERROR 2 +#define DEBUGCONFIG_TRACE_CUSTOM 1000 +#define DEBUGCONFIG_TRACE_NONE -1ULL +void tdx_trace_seamcalls(u64 level); + +/* -1 indicates CPUID leaf with no sub-leaves. */ +#define TDX_CPUID_NO_SUBLEAF ((u32)-1) +struct tdx_cpuid_config { + __struct_group(tdx_cpuid_config_leaf, leaf_sub_leaf, __packed, + u32 leaf; + u32 sub_leaf; + ); + __struct_group(tdx_cpuid_config_value, value, __packed, + u32 eax; + u32 ebx; + u32 ecx; + u32 edx; + ); +} __packed; + +#define TDSYSINFO_STRUCT_SIZE 1024 + +/* + * The size of this structure itself is flexible. The actual structure + * passed to TDH.SYS.INFO must be padded to 1024 bytes and be 1204-bytes + * aligned. + */ +#define TDSYSINFO_ATTRIBUTES_DEBUG BIT(31) +struct tdsysinfo_struct { + /* TDX-SEAM Module Info */ + u32 attributes; + u32 vendor_id; + u32 build_date; + u16 build_num; + u16 minor_version; + u16 major_version; + u8 reserved0[14]; + /* Memory Info */ + u16 max_tdmrs; + u16 max_reserved_per_tdmr; + u16 pamt_entry_size; + u8 reserved1[10]; + /* Control Struct Info */ + u16 tdcs_base_size; + u8 reserved2[2]; + u16 tdvps_base_size; + u8 tdvps_xfam_dependent_size; + u8 reserved3[9]; + /* TD Capabilities */ + u64 attributes_fixed0; + u64 attributes_fixed1; + u64 xfam_fixed0; + u64 xfam_fixed1; + u8 reserved4[32]; + u32 num_cpuid_config; + /* + * The actual number of CPUID_CONFIG depends on above + * 'num_cpuid_config'. + */ + DECLARE_FLEX_ARRAY(struct tdx_cpuid_config, cpuid_configs); +} __packed; + +const struct tdsysinfo_struct *tdx_get_sysinfo(void); +bool platform_tdx_enabled(void); +int tdx_cpu_enable(void); +int tdx_enable(void); +void tdx_reset_memory(void); +bool tdx_is_private_mem(unsigned long phys); + +/* + * Key id globally used by TDX module: TDX module maps TDR with this TDX global + * key id. TDR includes key id assigned to the TD. Then TDX module maps other + * TD-related pages with the assigned key id. TDR requires this TDX global key + * id for cache flush unlike other TD-related pages. + */ +extern u32 tdx_global_keyid; +u32 tdx_get_nr_guest_keyids(void); +int tdx_guest_keyid_alloc(void); +void tdx_guest_keyid_free(int keyid); +#else +static inline u64 __seamcall(u64 fn, struct tdx_module_args *args) { return TDX_SEAMCALL_UD; } +static inline u64 __seamcall_ret(u64 fn, struct tdx_module_args *args) { return TDX_SEAMCALL_UD; } +static inline u64 __seamcall_saved_ret(u64 fn, struct tdx_module_args *args) { return TDX_SEAMCALL_UD; } + +struct tdsysinfo_struct; +static inline const struct tdsysinfo_struct *tdx_get_sysinfo(void) { return NULL; } +static inline bool platform_tdx_enabled(void) { return false; } +static inline int tdx_cpu_enable(void) { return -ENODEV; } +static inline int tdx_enable(void) { return -ENODEV; } +static inline void tdx_reset_memory(void) { } +static inline bool tdx_is_private_mem(unsigned long phys) { return false; } +static inline u32 tdx_get_nr_guest_keyids(void) { return 0; } +static inline int tdx_guest_keyid_alloc(void) { return -EOPNOTSUPP; } +static inline void tdx_guest_keyid_free(int keyid) { } +#endif /* CONFIG_INTEL_TDX_HOST */ + #endif /* !__ASSEMBLY__ */ #endif /* _ASM_X86_TDX_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/uaccess_64.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/uaccess_64.h @@ -116,7 +116,7 @@ "2:\n" _ASM_EXTABLE_UA(1b, 2b) :"+c" (len), "+D" (to), "+S" (from), ASM_CALL_CONSTRAINT - : : "memory", "rax", "r8", "r9", "r10", "r11"); + : : "memory", "rax"); clac(); return len; } --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/virtext.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/virtext.h @@ -101,12 +101,6 @@ return 0; } - if (boot_cpu_data.extended_cpuid_level < SVM_CPUID_FUNC) { - if (msg) - *msg = "can't execute cpuid_8000000a"; - return 0; - } - if (!boot_cpu_has(X86_FEATURE_SVM)) { if (msg) *msg = "svm not available"; --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/vmware.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/vmware.h @@ -8,50 +8,323 @@ /* * The hypercall definitions differ in the low word of the %edx argument - * in the following way: the old port base interface uses the port - * number to distinguish between high- and low bandwidth versions. + * in the following way: the old I/O port based interface uses the port + * number to distinguish between high- and low bandwidth versions, and + * uses IN/OUT instructions to define transfer direction. * * The new vmcall interface instead uses a set of flags to select * bandwidth mode and transfer direction. The flags should be loaded * into %dx by any user and are automatically replaced by the port - * number if the VMWARE_HYPERVISOR_PORT method is used. + * number if the I/O port method is used. * * In short, new driver code should strictly use the new definition of * %dx content. */ -/* Old port-based version */ -#define VMWARE_HYPERVISOR_PORT 0x5658 -#define VMWARE_HYPERVISOR_PORT_HB 0x5659 - -/* Current vmcall / vmmcall version */ -#define VMWARE_HYPERVISOR_HB BIT(0) -#define VMWARE_HYPERVISOR_OUT BIT(1) +#define VMWARE_HYPERVISOR_HB BIT(0) +#define VMWARE_HYPERVISOR_OUT BIT(1) -/* The low bandwidth call. The low word of edx is presumed clear. */ -#define VMWARE_HYPERCALL \ - ALTERNATIVE_2("movw $" __stringify(VMWARE_HYPERVISOR_PORT) ", %%dx; " \ - "inl (%%dx), %%eax", \ - "vmcall", X86_FEATURE_VMCALL, \ - "vmmcall", X86_FEATURE_VMW_VMMCALL) +#define VMWARE_HYPERVISOR_PORT 0x5658 +#define VMWARE_HYPERVISOR_PORT_HB (VMWARE_HYPERVISOR_PORT | \ + VMWARE_HYPERVISOR_HB) + +#define VMWARE_HYPERVISOR_MAGIC 0x564D5868U + +#define VMWARE_CMD_GETVERSION 10 +#define VMWARE_CMD_GETHZ 45 +#define VMWARE_CMD_GETVCPU_INFO 68 +#define VMWARE_CMD_STEALCLOCK 91 + +#define CPUID_VMWARE_FEATURES_ECX_VMMCALL BIT(0) +#define CPUID_VMWARE_FEATURES_ECX_VMCALL BIT(1) + +extern u8 vmware_hypercall_mode; + +#define VMWARE_TDX_VENDOR_LEAF 0x1AF7E4909ULL +#define VMWARE_TDX_HCALL_FUNC 1 + +extern void vmware_tdx_hypercall_args(struct tdx_module_args *args); /* - * The high bandwidth out call. The low word of edx is presumed to have the - * HB and OUT bits set. + * TDCALL[TDG.VP.VMCALL] uses rax (arg0) and rcx (arg2), while the use of + * rbp (arg6) is discouraged by the TDX specification. Therefore, we + * remap those registers to r12, r13 and r14, respectively. */ -#define VMWARE_HYPERCALL_HB_OUT \ - ALTERNATIVE_2("movw $" __stringify(VMWARE_HYPERVISOR_PORT_HB) ", %%dx; " \ - "rep outsb", \ - "vmcall", X86_FEATURE_VMCALL, \ - "vmmcall", X86_FEATURE_VMW_VMMCALL) +static inline +unsigned long vmware_tdx_hypercall(unsigned long cmd, unsigned long in1, + unsigned long in3, unsigned long in4, + unsigned long in5, unsigned long in6, + uint32_t *out1, uint32_t *out2, + uint32_t *out3, uint32_t *out4, + uint32_t *out5, uint32_t *out6) +{ + struct tdx_module_args args = { + .r10 = VMWARE_TDX_VENDOR_LEAF, + .r11 = VMWARE_TDX_HCALL_FUNC, + .r12 = VMWARE_HYPERVISOR_MAGIC, + .r13 = cmd, + .rbx = in1, + .rdx = in3, + .rsi = in4, + .rdi = in5, + .r14 = in6, + }; + + vmware_tdx_hypercall_args(&args); + + if (out1) + *out1 = args.rbx; + if (out2) + *out2 = args.r13; + if (out3) + *out3 = args.rdx; + if (out4) + *out4 = args.rsi; + if (out5) + *out5 = args.rdi; + if (out6) + *out6 = args.r14; + + return args.r12; +} /* - * The high bandwidth in call. The low word of edx is presumed to have the - * HB bit set. + * The low bandwidth call. The low word of edx is presumed to have OUT bit + * set. The high word of edx may contain input data from the caller. */ -#define VMWARE_HYPERCALL_HB_IN \ - ALTERNATIVE_2("movw $" __stringify(VMWARE_HYPERVISOR_PORT_HB) ", %%dx; " \ - "rep insb", \ +#define VMWARE_HYPERCALL \ + ALTERNATIVE_3("cmpb $" \ + __stringify(CPUID_VMWARE_FEATURES_ECX_VMMCALL) \ + ", %[mode]\n\t" \ + "jg 2f\n\t" \ + "je 1f\n\t" \ + "movw %[port], %%dx\n\t" \ + "inl (%%dx), %%eax\n\t" \ + "jmp 3f\n\t" \ + "1: vmmcall\n\t" \ + "jmp 3f\n\t" \ + "2: vmcall\n\t" \ + "3:\n\t", \ + "movw %[port], %%dx\n\t" \ + "inl (%%dx), %%eax", X86_FEATURE_HYPERVISOR, \ "vmcall", X86_FEATURE_VMCALL, \ "vmmcall", X86_FEATURE_VMW_VMMCALL) + +static inline +unsigned long vmware_hypercall1(unsigned long cmd, unsigned long in1) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, 0, 0, 0, 0, NULL, NULL, + NULL, NULL, NULL, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (0) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall3(unsigned long cmd, unsigned long in1, + uint32_t *out1, uint32_t *out2) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, 0, 0, 0, 0, out1, out2, + NULL, NULL, NULL, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0), "=b" (*out1), "=c" (*out2) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (0) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall4(unsigned long cmd, unsigned long in1, + uint32_t *out1, uint32_t *out2, + uint32_t *out3) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, 0, 0, 0, 0, out1, out2, + out3, NULL, NULL, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0), "=b" (*out1), "=c" (*out2), "=d" (*out3) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (0) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall5(unsigned long cmd, unsigned long in1, + unsigned long in3, unsigned long in4, + unsigned long in5, uint32_t *out2) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, in3, in4, in5, 0, NULL, + out2, NULL, NULL, NULL, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0), "=c" (*out2) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (in3), + "S" (in4), + "D" (in5) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall6(unsigned long cmd, unsigned long in1, + unsigned long in3, uint32_t *out2, + uint32_t *out3, uint32_t *out4, + uint32_t *out5) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, in3, 0, 0, 0, NULL, out2, + out3, out4, out5, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0), "=c" (*out2), "=d" (*out3), "=S" (*out4), + "=D" (*out5) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (in3) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall7(unsigned long cmd, unsigned long in1, + unsigned long in3, unsigned long in4, + unsigned long in5, uint32_t *out1, + uint32_t *out2, uint32_t *out3) +{ + unsigned long out0; + + if (cpu_feature_enabled(X86_FEATURE_TDX_GUEST)) + return vmware_tdx_hypercall(cmd, in1, in3, in4, in5, 0, out1, + out2, out3, NULL, NULL, NULL); + + asm_inline volatile (VMWARE_HYPERCALL + : "=a" (out0), "=b" (*out1), "=c" (*out2), "=d" (*out3) + : [port] "i" (VMWARE_HYPERVISOR_PORT), + [mode] "m" (vmware_hypercall_mode), + "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (in1), + "c" (cmd), + "d" (in3), + "S" (in4), + "D" (in5) + : "cc", "memory"); + return out0; +} + + +#ifdef CONFIG_X86_64 +#define VMW_BP_REG "%%rbp" +#define VMW_BP_CONSTRAINT "r" +#else +#define VMW_BP_REG "%%ebp" +#define VMW_BP_CONSTRAINT "m" +#endif + +/* + * High bandwidth calls are not supported on encrypted memory guests. + * The caller should check cc_platform_has(CC_ATTR_MEM_ENCRYPT) and use + * low bandwidth hypercall it memory encryption is set. + * This assumption simplifies HB hypercall impementation to just I/O port + * based approach without alternative patching. + */ +static inline +unsigned long vmware_hypercall_hb_out(unsigned long cmd, unsigned long in2, + unsigned long in3, unsigned long in4, + unsigned long in5, unsigned long in6, + uint32_t *out1) +{ + unsigned long out0; + + asm_inline volatile ( + UNWIND_HINT_SAVE + "push " VMW_BP_REG "\n\t" + UNWIND_HINT_UNDEFINED + "mov %[in6], " VMW_BP_REG "\n\t" + "rep outsb\n\t" + "pop " VMW_BP_REG "\n\t" + UNWIND_HINT_RESTORE + : "=a" (out0), "=b" (*out1) + : "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (cmd), + "c" (in2), + "d" (in3 | VMWARE_HYPERVISOR_PORT_HB), + "S" (in4), + "D" (in5), + [in6] VMW_BP_CONSTRAINT (in6) + : "cc", "memory"); + return out0; +} + +static inline +unsigned long vmware_hypercall_hb_in(unsigned long cmd, unsigned long in2, + unsigned long in3, unsigned long in4, + unsigned long in5, unsigned long in6, + uint32_t *out1) +{ + unsigned long out0; + + asm_inline volatile ( + UNWIND_HINT_SAVE + "push " VMW_BP_REG "\n\t" + UNWIND_HINT_UNDEFINED + "mov %[in6], " VMW_BP_REG "\n\t" + "rep insb\n\t" + "pop " VMW_BP_REG "\n\t" + UNWIND_HINT_RESTORE + : "=a" (out0), "=b" (*out1) + : "a" (VMWARE_HYPERVISOR_MAGIC), + "b" (cmd), + "c" (in2), + "d" (in3 | VMWARE_HYPERVISOR_PORT_HB), + "S" (in4), + "D" (in5), + [in6] VMW_BP_CONSTRAINT (in6) + : "cc", "memory"); + return out0; +} +#undef VMW_BP_REG +#undef VMW_BP_CONSTRAINT +#undef VMWARE_HYPERCALL + #endif --- linux-intel-opt-6.5.0.orig/arch/x86/include/asm/vmx.h +++ linux-intel-opt-6.5.0/arch/x86/include/asm/vmx.h @@ -70,6 +70,7 @@ #define SECONDARY_EXEC_ENCLS_EXITING VMCS_CONTROL_BIT(ENCLS_EXITING) #define SECONDARY_EXEC_RDSEED_EXITING VMCS_CONTROL_BIT(RDSEED_EXITING) #define SECONDARY_EXEC_ENABLE_PML VMCS_CONTROL_BIT(PAGE_MOD_LOGGING) +#define SECONDARY_EXEC_EPT_VIOLATION_VE VMCS_CONTROL_BIT(EPT_VIOLATION_VE) #define SECONDARY_EXEC_PT_CONCEAL_VMX VMCS_CONTROL_BIT(PT_CONCEAL_VMX) #define SECONDARY_EXEC_XSAVES VMCS_CONTROL_BIT(XSAVES) #define SECONDARY_EXEC_MODE_BASED_EPT_EXEC VMCS_CONTROL_BIT(MODE_BASED_EPT_EXEC) @@ -225,6 +226,8 @@ VMREAD_BITMAP_HIGH = 0x00002027, VMWRITE_BITMAP = 0x00002028, VMWRITE_BITMAP_HIGH = 0x00002029, + VE_INFORMATION_ADDRESS = 0x0000202A, + VE_INFORMATION_ADDRESS_HIGH = 0x0000202B, XSS_EXIT_BITMAP = 0x0000202C, XSS_EXIT_BITMAP_HIGH = 0x0000202D, ENCLS_EXITING_BITMAP = 0x0000202E, @@ -233,6 +236,7 @@ TSC_MULTIPLIER_HIGH = 0x00002033, TERTIARY_VM_EXEC_CONTROL = 0x00002034, TERTIARY_VM_EXEC_CONTROL_HIGH = 0x00002035, + SHARED_EPT_POINTER = 0x0000203C, PID_POINTER_TABLE = 0x00002042, PID_POINTER_TABLE_HIGH = 0x00002043, GUEST_PHYSICAL_ADDRESS = 0x00002400, @@ -513,6 +517,7 @@ #define VMX_EPT_IPAT_BIT (1ull << 6) #define VMX_EPT_ACCESS_BIT (1ull << 8) #define VMX_EPT_DIRTY_BIT (1ull << 9) +#define VMX_EPT_SUPPRESS_VE_BIT (1ull << 63) #define VMX_EPT_RWX_MASK (VMX_EPT_READABLE_MASK | \ VMX_EPT_WRITABLE_MASK | \ VMX_EPT_EXECUTABLE_MASK) @@ -629,4 +634,13 @@ extern enum vmx_l1d_flush_state l1tf_vmx_mitigation; +struct vmx_ve_information { + u32 exit_reason; + u32 delivery; + u64 exit_qualification; + u64 guest_linear_address; + u64 guest_physical_address; + u16 eptp_index; +}; + #endif --- linux-intel-opt-6.5.0.orig/arch/x86/include/uapi/asm/kvm.h +++ linux-intel-opt-6.5.0/arch/x86/include/uapi/asm/kvm.h @@ -562,4 +562,97 @@ /* x86-specific KVM_EXIT_HYPERCALL flags. */ #define KVM_EXIT_HYPERCALL_LONG_MODE BIT(0) +#define KVM_X86_DEFAULT_VM 0 +#define KVM_X86_SW_PROTECTED_VM 1 +#define KVM_X86_TDX_VM 2 +#define KVM_X86_SNP_VM 3 + +/* Trust Domain eXtension sub-ioctl() commands. */ +enum kvm_tdx_cmd_id { + KVM_TDX_CAPABILITIES = 0, + KVM_TDX_INIT_VM, + KVM_TDX_INIT_VCPU, + KVM_TDX_INIT_MEM_REGION, + KVM_TDX_FINALIZE_VM, + + KVM_TDX_CMD_NR_MAX, +}; + +struct kvm_tdx_cmd { + /* enum kvm_tdx_cmd_id */ + __u32 id; + /* flags for sub-commend. If sub-command doesn't use this, set zero. */ + __u32 flags; + /* + * data for each sub-command. An immediate or a pointer to the actual + * data in process virtual address. If sub-command doesn't use it, + * set zero. + */ + __u64 data; + /* + * Auxiliary error code. The sub-command may return TDX SEAMCALL + * status code in addition to -Exxx. + * Defined for consistency with struct kvm_sev_cmd. + */ + __u64 error; +}; + +struct kvm_tdx_cpuid_config { + __u32 leaf; + __u32 sub_leaf; + __u32 eax; + __u32 ebx; + __u32 ecx; + __u32 edx; +}; + +struct kvm_tdx_capabilities { + __u64 attrs_fixed0; + __u64 attrs_fixed1; + __u64 xfam_fixed0; + __u64 xfam_fixed1; +#define TDX_CAP_GPAW_48 (1 << 0) +#define TDX_CAP_GPAW_52 (1 << 1) + __u32 supported_gpaw; + __u32 padding; + __u64 reserved[251]; + + __u32 nr_cpuid_configs; + struct kvm_tdx_cpuid_config cpuid_configs[]; +}; + +struct kvm_tdx_init_vm { + __u64 attributes; + __u64 mrconfigid[6]; /* sha384 digest */ + __u64 mrowner[6]; /* sha384 digest */ + __u64 mrownerconfig[6]; /* sha348 digest */ + /* + * For future extensibility to make sizeof(struct kvm_tdx_init_vm) = 8KB. + * This should be enough given sizeof(TD_PARAMS) = 1024. + * 8KB was chosen given because + * sizeof(struct kvm_cpuid_entry2) * KVM_MAX_CPUID_ENTRIES(=256) = 8KB. + */ + __u64 reserved[1004]; + + /* + * Call KVM_TDX_INIT_VM before vcpu creation, thus before + * KVM_SET_CPUID2. + * This configuration supersedes KVM_SET_CPUID2s for VCPUs because the + * TDX module directly virtualizes those CPUIDs without VMM. The user + * space VMM, e.g. qemu, should make KVM_SET_CPUID2 consistent with + * those values. If it doesn't, KVM may have wrong idea of vCPUIDs of + * the guest, and KVM may wrongly emulate CPUIDs or MSRs that the TDX + * module doesn't virtualize. + */ + struct kvm_cpuid2 cpuid; +}; + +#define KVM_TDX_MEASURE_MEMORY_REGION (1UL << 0) + +struct kvm_tdx_init_mem_region { + __u64 source_addr; + __u64 gpa; + __u64 nr_pages; +}; + #endif /* _ASM_X86_KVM_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/include/uapi/asm/vmx.h +++ linux-intel-opt-6.5.0/arch/x86/include/uapi/asm/vmx.h @@ -34,6 +34,7 @@ #define EXIT_REASON_TRIPLE_FAULT 2 #define EXIT_REASON_INIT_SIGNAL 3 #define EXIT_REASON_SIPI_SIGNAL 4 +#define EXIT_REASON_OTHER_SMI 6 #define EXIT_REASON_INTERRUPT_WINDOW 7 #define EXIT_REASON_NMI_WINDOW 8 @@ -92,6 +93,7 @@ #define EXIT_REASON_TPAUSE 68 #define EXIT_REASON_BUS_LOCK 74 #define EXIT_REASON_NOTIFY 75 +#define EXIT_REASON_TDCALL 77 #define VMX_EXIT_REASONS \ { EXIT_REASON_EXCEPTION_NMI, "EXCEPTION_NMI" }, \ @@ -155,7 +157,8 @@ { EXIT_REASON_UMWAIT, "UMWAIT" }, \ { EXIT_REASON_TPAUSE, "TPAUSE" }, \ { EXIT_REASON_BUS_LOCK, "BUS_LOCK" }, \ - { EXIT_REASON_NOTIFY, "NOTIFY" } + { EXIT_REASON_NOTIFY, "NOTIFY" }, \ + { EXIT_REASON_TDCALL, "TDCALL" } #define VMX_EXIT_REASON_FLAGS \ { VMX_EXIT_REASONS_FAILED_VMENTRY, "FAILED_VMENTRY" } --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/acpi/wakeup_32.S +++ linux-intel-opt-6.5.0/arch/x86/kernel/acpi/wakeup_32.S @@ -3,6 +3,7 @@ #include #include #include +#include # Copyright 2003, 2008 Pavel Machek %px", start, end); + + /* + * In the case CONFIG_X86_5LEVEL=y, KASAN_SHADOW_START is defined using + * cpu_feature_enabled(X86_FEATURE_LA57) and is therefore patched here. + * During the process, KASAN becomes confused seeing partial LA57 + * conversion and triggers a false-positive out-of-bound report. + * + * Disable KASAN until the patching is complete. + */ + kasan_disable_current(); + /* * The scan order should be from start to end. A later scanned * alternative code can overwrite previously scanned alternative code. @@ -452,6 +463,8 @@ text_poke_early(instr, insn_buff, insn_buff_sz); } + + kasan_enable_current(); } static inline bool is_jcc32(struct insn *insn) @@ -720,13 +733,8 @@ { s32 *s; - /* - * Do not patch out the default return thunks if those needed are the - * ones generated by the compiler. - */ - if (cpu_feature_enabled(X86_FEATURE_RETHUNK) && - (x86_return_thunk == __x86_return_thunk)) - return; + if (cpu_feature_enabled(X86_FEATURE_RETHUNK)) + static_call_force_reinit(); for (s = start; s < end; s++) { void *dest = NULL, *addr = (void *)s + *s; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/amd_nb.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/amd_nb.c @@ -24,6 +24,8 @@ #define PCI_DEVICE_ID_AMD_19H_M40H_ROOT 0x14b5 #define PCI_DEVICE_ID_AMD_19H_M60H_ROOT 0x14d8 #define PCI_DEVICE_ID_AMD_19H_M70H_ROOT 0x14e8 +#define PCI_DEVICE_ID_AMD_1AH_M00H_ROOT 0x153a +#define PCI_DEVICE_ID_AMD_1AH_M20H_ROOT 0x1507 #define PCI_DEVICE_ID_AMD_MI200_ROOT 0x14bb #define PCI_DEVICE_ID_AMD_17H_DF_F4 0x1464 @@ -39,6 +41,7 @@ #define PCI_DEVICE_ID_AMD_19H_M60H_DF_F4 0x14e4 #define PCI_DEVICE_ID_AMD_19H_M70H_DF_F4 0x14f4 #define PCI_DEVICE_ID_AMD_19H_M78H_DF_F4 0x12fc +#define PCI_DEVICE_ID_AMD_1AH_M00H_DF_F4 0x12c4 #define PCI_DEVICE_ID_AMD_MI200_DF_F4 0x14d4 /* Protect the PCI config register pairs used for SMN. */ @@ -56,6 +59,8 @@ { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M40H_ROOT) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M60H_ROOT) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M70H_ROOT) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M00H_ROOT) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M20H_ROOT) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI200_ROOT) }, {} }; @@ -85,6 +90,8 @@ { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M60H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M70H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M78H_DF_F3) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M00H_DF_F3) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M20H_DF_F3) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI200_DF_F3) }, {} }; @@ -106,6 +113,7 @@ { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M40H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_19H_M50H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CNB17H_F4) }, + { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_1AH_M00H_DF_F4) }, { PCI_DEVICE(PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_MI200_DF_F4) }, {} }; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/aperture_64.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/aperture_64.c @@ -136,32 +136,6 @@ } -/* Find a PCI capability */ -static u32 __init find_cap(int bus, int slot, int func, int cap) -{ - int bytes; - u8 pos; - - if (!(read_pci_config_16(bus, slot, func, PCI_STATUS) & - PCI_STATUS_CAP_LIST)) - return 0; - - pos = read_pci_config_byte(bus, slot, func, PCI_CAPABILITY_LIST); - for (bytes = 0; bytes < 48 && pos >= 0x40; bytes++) { - u8 id; - - pos &= ~3; - id = read_pci_config_byte(bus, slot, func, pos+PCI_CAP_LIST_ID); - if (id == 0xff) - break; - if (id == cap) - return pos; - pos = read_pci_config_byte(bus, slot, func, - pos+PCI_CAP_LIST_NEXT); - } - return 0; -} - /* Read a standard AGPv3 bridge header */ static u32 __init read_agp(int bus, int slot, int func, int cap, u32 *order) { @@ -250,8 +224,8 @@ case PCI_CLASS_BRIDGE_HOST: case PCI_CLASS_BRIDGE_OTHER: /* needed? */ /* AGP bridge? */ - cap = find_cap(bus, slot, func, - PCI_CAP_ID_AGP); + cap = pci_early_find_cap(bus, slot, + func, PCI_CAP_ID_AGP); if (!cap) break; *valid_agp = 1; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/apic/hw_nmi.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/apic/hw_nmi.c @@ -34,9 +34,9 @@ apic->send_IPI_mask(mask, NMI_VECTOR); } -void arch_trigger_cpumask_backtrace(const cpumask_t *mask, bool exclude_self) +void arch_trigger_cpumask_backtrace(const cpumask_t *mask, int exclude_cpu) { - nmi_trigger_cpumask_backtrace(mask, exclude_self, + nmi_trigger_cpumask_backtrace(mask, exclude_cpu, nmi_raise_cpu_backtrace); } --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/apic/x2apic_uv_x.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/apic/x2apic_uv_x.c @@ -1571,7 +1571,7 @@ { struct uv_gam_range_entry *gre = uv_gre_table; int nums, numn, nump; - int cpu, i, lnid; + int i, lnid, apicid; int minsock = _min_socket; int maxsock = _max_socket; int minpnode = _min_pnode; @@ -1622,15 +1622,14 @@ /* Set socket -> node values: */ lnid = NUMA_NO_NODE; - for_each_possible_cpu(cpu) { - int nid = cpu_to_node(cpu); - int apicid, sockid; + for (apicid = 0; apicid < ARRAY_SIZE(__apicid_to_node); apicid++) { + int nid = __apicid_to_node[apicid]; + int sockid; - if (lnid == nid) + if ((nid == NUMA_NO_NODE) || (lnid == nid)) continue; lnid = nid; - apicid = per_cpu(x86_cpu_to_apicid, cpu); sockid = apicid >> uv_cpuid.socketid_shift; if (_socket_to_node[sockid - minsock] == SOCK_EMPTY) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/apm_32.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/apm_32.c @@ -239,12 +239,6 @@ #endif /* - * The apm_bios device is one of the misc char devices. - * This is its minor number. - */ -#define APM_MINOR_DEV 134 - -/* * Various options can be changed at boot time as follows: * (We allow underscores for compatibility with the modules code) * apm=on/off enable/disable APM --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/asm-offsets.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/asm-offsets.c @@ -68,26 +68,19 @@ #endif BLANK(); - OFFSET(TDX_MODULE_rcx, tdx_module_output, rcx); - OFFSET(TDX_MODULE_rdx, tdx_module_output, rdx); - OFFSET(TDX_MODULE_r8, tdx_module_output, r8); - OFFSET(TDX_MODULE_r9, tdx_module_output, r9); - OFFSET(TDX_MODULE_r10, tdx_module_output, r10); - OFFSET(TDX_MODULE_r11, tdx_module_output, r11); - - BLANK(); - OFFSET(TDX_HYPERCALL_r8, tdx_hypercall_args, r8); - OFFSET(TDX_HYPERCALL_r9, tdx_hypercall_args, r9); - OFFSET(TDX_HYPERCALL_r10, tdx_hypercall_args, r10); - OFFSET(TDX_HYPERCALL_r11, tdx_hypercall_args, r11); - OFFSET(TDX_HYPERCALL_r12, tdx_hypercall_args, r12); - OFFSET(TDX_HYPERCALL_r13, tdx_hypercall_args, r13); - OFFSET(TDX_HYPERCALL_r14, tdx_hypercall_args, r14); - OFFSET(TDX_HYPERCALL_r15, tdx_hypercall_args, r15); - OFFSET(TDX_HYPERCALL_rdi, tdx_hypercall_args, rdi); - OFFSET(TDX_HYPERCALL_rsi, tdx_hypercall_args, rsi); - OFFSET(TDX_HYPERCALL_rbx, tdx_hypercall_args, rbx); - OFFSET(TDX_HYPERCALL_rdx, tdx_hypercall_args, rdx); + OFFSET(TDX_MODULE_rcx, tdx_module_args, rcx); + OFFSET(TDX_MODULE_rdx, tdx_module_args, rdx); + OFFSET(TDX_MODULE_rbx, tdx_module_args, rbx); + OFFSET(TDX_MODULE_rsi, tdx_module_args, rsi); + OFFSET(TDX_MODULE_rdi, tdx_module_args, rdi); + OFFSET(TDX_MODULE_r8, tdx_module_args, r8); + OFFSET(TDX_MODULE_r9, tdx_module_args, r9); + OFFSET(TDX_MODULE_r10, tdx_module_args, r10); + OFFSET(TDX_MODULE_r11, tdx_module_args, r11); + OFFSET(TDX_MODULE_r12, tdx_module_args, r12); + OFFSET(TDX_MODULE_r13, tdx_module_args, r13); + OFFSET(TDX_MODULE_r14, tdx_module_args, r14); + OFFSET(TDX_MODULE_r15, tdx_module_args, r15); BLANK(); OFFSET(BP_scratch, boot_params, scratch); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/callthunks.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/callthunks.c @@ -272,7 +272,6 @@ pr_info("Setting up call depth tracking\n"); mutex_lock(&text_mutex); callthunks_setup(&cs, &builtin_coretext); - static_call_force_reinit(); thunks_initialized = true; mutex_unlock(&text_mutex); } --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/amd.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/amd.c @@ -80,6 +80,10 @@ AMD_LEGACY_ERRATUM(AMD_MODEL_RANGE(0x17, 0x00, 0x0, 0x2f, 0xf), AMD_MODEL_RANGE(0x17, 0x50, 0x0, 0x5f, 0xf)); +static const int amd_erratum_1485[] = + AMD_LEGACY_ERRATUM(AMD_MODEL_RANGE(0x19, 0x10, 0x0, 0x1f, 0xf), + AMD_MODEL_RANGE(0x19, 0x60, 0x0, 0xaf, 0xf)); + static bool cpu_has_amd_erratum(struct cpuinfo_x86 *cpu, const int *erratum) { int osvw_id = *erratum++; @@ -766,6 +770,15 @@ if (cpu_has(c, X86_FEATURE_TOPOEXT)) smp_num_siblings = ((cpuid_ebx(0x8000001e) >> 8) & 0xff) + 1; + + if (!cpu_has(c, X86_FEATURE_HYPERVISOR) && !cpu_has(c, X86_FEATURE_IBPB_BRTYPE)) { + if (c->x86 == 0x17 && boot_cpu_has(X86_FEATURE_AMD_IBPB)) + setup_force_cpu_cap(X86_FEATURE_IBPB_BRTYPE); + else if (c->x86 >= 0x19 && !wrmsrl_safe(MSR_IA32_PRED_CMD, PRED_CMD_SBPB)) { + setup_force_cpu_cap(X86_FEATURE_IBPB_BRTYPE); + setup_force_cpu_cap(X86_FEATURE_SBPB); + } + } } static void init_amd_k8(struct cpuinfo_x86 *c) @@ -1140,6 +1153,10 @@ pr_notice_once("AMD Zen1 DIV0 bug detected. Disable SMT for full protection.\n"); setup_force_cpu_bug(X86_BUG_DIV0); } + + if (!cpu_has(c, X86_FEATURE_HYPERVISOR) && + cpu_has_amd_erratum(c, amd_erratum_1485)) + msr_set_bit(MSR_ZEN4_BP_CFG, MSR_ZEN4_BP_CFG_SHARED_BTB_FIX_BIT); } #ifdef CONFIG_X86_32 @@ -1301,25 +1318,6 @@ on_each_cpu(zenbleed_check_cpu, NULL, 1); } -bool cpu_has_ibpb_brtype_microcode(void) -{ - switch (boot_cpu_data.x86) { - /* Zen1/2 IBPB flushes branch type predictions too. */ - case 0x17: - return boot_cpu_has(X86_FEATURE_AMD_IBPB); - case 0x19: - /* Poke the MSR bit on Zen3/4 to check its presence. */ - if (!wrmsrl_safe(MSR_IA32_PRED_CMD, PRED_CMD_SBPB)) { - setup_force_cpu_cap(X86_FEATURE_SBPB); - return true; - } else { - return false; - } - default: - return false; - } -} - /* * Issue a DIV 0/1 insn to clear any division data from previous DIV * operations. --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/bugs.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/bugs.c @@ -2404,27 +2404,16 @@ static void __init srso_select_mitigation(void) { - bool has_microcode; + bool has_microcode = boot_cpu_has(X86_FEATURE_IBPB_BRTYPE); if (!boot_cpu_has_bug(X86_BUG_SRSO) || cpu_mitigations_off()) goto pred_cmd; - /* - * The first check is for the kernel running as a guest in order - * for guests to verify whether IBPB is a viable mitigation. - */ - has_microcode = boot_cpu_has(X86_FEATURE_IBPB_BRTYPE) || cpu_has_ibpb_brtype_microcode(); if (!has_microcode) { pr_warn("IBPB-extending microcode not applied!\n"); pr_warn(SRSO_NOTICE); } else { /* - * Enable the synthetic (even if in a real CPUID leaf) - * flags for guests. - */ - setup_force_cpu_cap(X86_FEATURE_IBPB_BRTYPE); - - /* * Zen1/2 with SMT off aren't vulnerable after the right * IBPB microcode has been applied. */ @@ -2444,7 +2433,7 @@ switch (srso_cmd) { case SRSO_CMD_OFF: - return; + goto pred_cmd; case SRSO_CMD_MICROCODE: if (has_microcode) { @@ -2717,7 +2706,7 @@ return sysfs_emit(buf, "%s%s\n", srso_strings[srso_mitigation], - (cpu_has_ibpb_brtype_microcode() ? "" : ", no microcode")); + boot_cpu_has(X86_FEATURE_IBPB_BRTYPE) ? "" : ", no microcode"); } static ssize_t gds_show_state(char *buf) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/common.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/common.c @@ -1265,11 +1265,11 @@ VULNBL_INTEL_STEPPINGS(BROADWELL_G, X86_STEPPING_ANY, SRBDS), VULNBL_INTEL_STEPPINGS(BROADWELL_X, X86_STEPPING_ANY, MMIO), VULNBL_INTEL_STEPPINGS(BROADWELL, X86_STEPPING_ANY, SRBDS), - VULNBL_INTEL_STEPPINGS(SKYLAKE_L, X86_STEPPING_ANY, SRBDS | MMIO | RETBLEED), VULNBL_INTEL_STEPPINGS(SKYLAKE_X, X86_STEPPING_ANY, MMIO | RETBLEED | GDS), - VULNBL_INTEL_STEPPINGS(SKYLAKE, X86_STEPPING_ANY, SRBDS | MMIO | RETBLEED), - VULNBL_INTEL_STEPPINGS(KABYLAKE_L, X86_STEPPING_ANY, SRBDS | MMIO | RETBLEED | GDS), - VULNBL_INTEL_STEPPINGS(KABYLAKE, X86_STEPPING_ANY, SRBDS | MMIO | RETBLEED | GDS), + VULNBL_INTEL_STEPPINGS(SKYLAKE_L, X86_STEPPING_ANY, MMIO | RETBLEED | GDS | SRBDS), + VULNBL_INTEL_STEPPINGS(SKYLAKE, X86_STEPPING_ANY, MMIO | RETBLEED | GDS | SRBDS), + VULNBL_INTEL_STEPPINGS(KABYLAKE_L, X86_STEPPING_ANY, MMIO | RETBLEED | GDS | SRBDS), + VULNBL_INTEL_STEPPINGS(KABYLAKE, X86_STEPPING_ANY, MMIO | RETBLEED | GDS | SRBDS), VULNBL_INTEL_STEPPINGS(CANNONLAKE_L, X86_STEPPING_ANY, RETBLEED), VULNBL_INTEL_STEPPINGS(ICELAKE_L, X86_STEPPING_ANY, MMIO | MMIO_SBDS | RETBLEED | GDS), VULNBL_INTEL_STEPPINGS(ICELAKE_D, X86_STEPPING_ANY, MMIO | GDS), @@ -1288,7 +1288,7 @@ VULNBL_AMD(0x15, RETBLEED), VULNBL_AMD(0x16, RETBLEED), VULNBL_AMD(0x17, RETBLEED | SMT_RSB | SRSO), - VULNBL_HYGON(0x18, RETBLEED | SMT_RSB), + VULNBL_HYGON(0x18, RETBLEED | SMT_RSB | SRSO), VULNBL_AMD(0x19, SRSO), {} }; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/intel.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/intel.c @@ -358,6 +358,21 @@ } EXPORT_SYMBOL_GPL(intel_microcode_sanity_check); +static void check_tdx_erratum(struct cpuinfo_x86 *c) +{ + /* + * These CPUs have an erratum. A partial write from non-TD + * software (e.g. via MOVNTI variants or UC/WC mapping) to TDX + * private memory poisons that memory, and a subsequent read of + * that memory triggers #MC. + */ + switch (c->x86_model) { + case INTEL_FAM6_SAPPHIRERAPIDS_X: + case INTEL_FAM6_EMERALDRAPIDS_X: + setup_force_cpu_bug(X86_BUG_TDX_PW_MCE); + } +} + static void early_init_intel(struct cpuinfo_x86 *c) { u64 misc_enable; @@ -509,6 +524,8 @@ */ if (detect_extended_topology_early(c) < 0) detect_ht_early(c); + + check_tdx_erratum(c); } static void bsp_init_intel(struct cpuinfo_x86 *c) @@ -669,20 +686,6 @@ #endif } -#define MSR_IA32_TME_ACTIVATE 0x982 - -/* Helpers to access TME_ACTIVATE MSR */ -#define TME_ACTIVATE_LOCKED(x) (x & 0x1) -#define TME_ACTIVATE_ENABLED(x) (x & 0x2) - -#define TME_ACTIVATE_POLICY(x) ((x >> 4) & 0xf) /* Bits 7:4 */ -#define TME_ACTIVATE_POLICY_AES_XTS_128 0 - -#define TME_ACTIVATE_KEYID_BITS(x) ((x >> 32) & 0xf) /* Bits 35:32 */ - -#define TME_ACTIVATE_CRYPTO_ALGS(x) ((x >> 48) & 0xffff) /* Bits 63:48 */ -#define TME_ACTIVATE_CRYPTO_AES_XTS_128 1 - /* Values for mktme_status (SW only construct) */ #define MKTME_ENABLED 0 #define MKTME_DISABLED 1 --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mce/core.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mce/core.c @@ -52,6 +52,7 @@ #include #include #include +#include #include "internal.h" @@ -228,11 +229,34 @@ panic("Panicing machine check CPU died"); } +static const char *mce_memory_info(struct mce *m) +{ + if (!m || !mce_is_memory_error(m) || !mce_usable_address(m)) + return NULL; + + /* + * Certain initial generations of TDX-capable CPUs have an + * erratum. A kernel non-temporal partial write to TDX private + * memory poisons that memory, and a subsequent read of that + * memory triggers #MC. + * + * However such #MC caused by software cannot be distinguished + * from the real hardware #MC. Just print additional message + * to show such #MC may be result of the CPU erratum. + */ + if (!boot_cpu_has_bug(X86_BUG_TDX_PW_MCE)) + return NULL; + + return !tdx_is_private_mem(m->addr) ? NULL : + "TDX private memory error. Possible kernel bug."; +} + static noinstr void mce_panic(const char *msg, struct mce *final, char *exp) { struct llist_node *pending; struct mce_evt_llist *l; int apei_err = 0; + const char *memmsg; /* * Allow instrumentation around external facilities usage. Not that it @@ -283,6 +307,15 @@ } if (exp) pr_emerg(HW_ERR "Machine check: %s\n", exp); + /* + * Confidential computing platforms such as TDX platforms + * may occur MCE due to incorrect access to confidential + * memory. Print additional information for such error. + */ + memmsg = mce_memory_info(final); + if (memmsg) + pr_emerg(HW_ERR "Machine check: %s\n", memmsg); + if (!fake_panic) { if (panic_timeout == 0) panic_timeout = mca_cfg.panic_timeout; @@ -843,6 +876,26 @@ } /* + * Some Zen-based Instruction Fetch Units set EIPV=RIPV=0 on poison consumption + * errors. This means mce_gather_info() will not save the "ip" and "cs" registers. + * + * However, the context is still valid, so save the "cs" register for later use. + * + * The "ip" register is truly unknown, so don't save it or fixup EIPV/RIPV. + * + * The Instruction Fetch Unit is at MCA bank 1 for all affected systems. + */ +static __always_inline void quirk_zen_ifu(int bank, struct mce *m, struct pt_regs *regs) +{ + if (bank != 1) + return; + if (!(m->status & MCI_STATUS_POISON)) + return; + + m->cs = regs->cs; +} + +/* * Do a quick check if any of the events requires a panic. * This decides if we keep the events around or clear them. */ @@ -861,6 +914,9 @@ if (mce_flags.snb_ifu_quirk) quirk_sandybridge_ifu(i, m, regs); + if (mce_flags.zen_ifu_quirk) + quirk_zen_ifu(i, m, regs); + m->bank = i; if (mce_severity(m, regs, &tmp, true) >= MCE_PANIC_SEVERITY) { mce_read_aux(m, i); @@ -1842,6 +1898,9 @@ if (c->x86 == 0x15 && c->x86_model <= 0xf) mce_flags.overflow_recov = 1; + if (c->x86 >= 0x17 && c->x86 <= 0x1A) + mce_flags.zen_ifu_quirk = 1; + } if (c->x86_vendor == X86_VENDOR_INTEL) { --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mce/internal.h +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mce/internal.h @@ -157,6 +157,9 @@ */ smca : 1, + /* Zen IFU quirk */ + zen_ifu_quirk : 1, + /* AMD-style error thresholding banks present. */ amd_threshold : 1, @@ -172,7 +175,7 @@ /* Skylake, Cascade Lake, Cooper Lake REP;MOVS* quirk */ skx_repmov_quirk : 1, - __reserved_0 : 56; + __reserved_0 : 55; }; extern struct mce_vendor_flags mce_flags; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mtrr/cleanup.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mtrr/cleanup.c @@ -170,7 +170,7 @@ return; } - mask = (1ULL << boot_cpu_data.x86_phys_bits) - 1; + mask = (1ULL << (boot_cpu_data.x86_phys_bits - phys_key_bits)) - 1; mask &= ~((((u64)sizek) << 10) - 1); base = ((u64)basek) << 10; --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mtrr/generic.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mtrr/generic.c @@ -654,7 +654,7 @@ } pr_info("MTRR variable ranges %sabled:\n", mtrr_state.enabled & MTRR_STATE_MTRR_ENABLED ? "en" : "dis"); - high_width = (boot_cpu_data.x86_phys_bits - (32 - PAGE_SHIFT) + 3) / 4; + high_width = ((boot_cpu_data.x86_phys_bits - phys_key_bits) - (32 - PAGE_SHIFT) + 3) / 4; for (i = 0; i < num_var_ranges; ++i) { if (mtrr_state.var_ranges[i].mask_lo & MTRR_PHYSMASK_V) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mtrr/mtrr.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mtrr/mtrr.c @@ -64,6 +64,7 @@ DEFINE_MUTEX(mtrr_mutex); const struct mtrr_ops *mtrr_if; +u32 phys_key_bits; /* Returns non-zero if we have the write-combining memory type */ static int have_wrcomb(void) @@ -253,7 +254,7 @@ } if ((base | (base + size - 1)) >> - (boot_cpu_data.x86_phys_bits - PAGE_SHIFT)) { + (boot_cpu_data.x86_phys_bits - phys_key_bits - PAGE_SHIFT)) { pr_warn("base or size exceeds the MTRR width\n"); return -EINVAL; } @@ -556,7 +557,16 @@ const char *why = "(not available)"; unsigned long config, dummy; - phys_hi_rsvd = GENMASK(31, boot_cpu_data.x86_phys_bits - 32); + if (boot_cpu_has(X86_FEATURE_TME)) { + u64 tme_activate; + + rdmsrl(MSR_IA32_TME_ACTIVATE, tme_activate); + if (TME_ACTIVATE_LOCKED(tme_activate) && + TME_ACTIVATE_ENABLED(tme_activate)) { + phys_key_bits = TME_ACTIVATE_KEYID_BITS(tme_activate); + } + } + phys_hi_rsvd = GENMASK(31, (boot_cpu_data.x86_phys_bits - phys_key_bits) - 32); if (!generic_mtrrs && mtrr_state.enabled) { /* --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/mtrr/mtrr.h +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/mtrr/mtrr.h @@ -61,6 +61,7 @@ extern u64 mtrr_tom2; extern struct mtrr_state_type mtrr_state; extern u32 phys_hi_rsvd; +extern u32 phys_key_bits; void mtrr_state_warn(void); const char *mtrr_attrib_to_str(int x); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/sgx/encl.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/sgx/encl.c @@ -235,6 +235,21 @@ return epc_page; } +/* + * Ensure the SECS page is not swapped out. Must be called with encl->lock + * to protect the enclave states including SECS and ensure the SECS page is + * not swapped out again while being used. + */ +static struct sgx_epc_page *sgx_encl_load_secs(struct sgx_encl *encl) +{ + struct sgx_epc_page *epc_page = encl->secs.epc_page; + + if (!epc_page) + epc_page = sgx_encl_eldu(&encl->secs, NULL); + + return epc_page; +} + static struct sgx_encl_page *__sgx_encl_load_page(struct sgx_encl *encl, struct sgx_encl_page *entry) { @@ -248,11 +263,9 @@ return entry; } - if (!(encl->secs.epc_page)) { - epc_page = sgx_encl_eldu(&encl->secs, NULL); - if (IS_ERR(epc_page)) - return ERR_CAST(epc_page); - } + epc_page = sgx_encl_load_secs(encl); + if (IS_ERR(epc_page)) + return ERR_CAST(epc_page); epc_page = sgx_encl_eldu(entry, encl->secs.epc_page); if (IS_ERR(epc_page)) @@ -339,6 +352,13 @@ mutex_lock(&encl->lock); + epc_page = sgx_encl_load_secs(encl); + if (IS_ERR(epc_page)) { + if (PTR_ERR(epc_page) == -EBUSY) + vmret = VM_FAULT_NOPAGE; + goto err_out_unlock; + } + epc_page = sgx_alloc_epc_page(encl_page, false); if (IS_ERR(epc_page)) { if (PTR_ERR(epc_page) == -EBUSY) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/sgx/virt.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/sgx/virt.c @@ -204,6 +204,7 @@ continue; xa_erase(&vepc->page_array, index); + cond_resched(); } /* @@ -222,6 +223,7 @@ list_add_tail(&epc_page->list, &secs_pages); xa_erase(&vepc->page_array, index); + cond_resched(); } /* @@ -243,6 +245,7 @@ if (sgx_vepc_free_page(epc_page)) list_add_tail(&epc_page->list, &secs_pages); + cond_resched(); } if (!list_empty(&secs_pages)) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/cpu/vmware.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/cpu/vmware.c @@ -41,60 +41,14 @@ #define CPUID_VMWARE_INFO_LEAF 0x40000000 #define CPUID_VMWARE_FEATURES_LEAF 0x40000010 -#define CPUID_VMWARE_FEATURES_ECX_VMMCALL BIT(0) -#define CPUID_VMWARE_FEATURES_ECX_VMCALL BIT(1) -#define VMWARE_HYPERVISOR_MAGIC 0x564D5868 - -#define VMWARE_CMD_GETVERSION 10 -#define VMWARE_CMD_GETHZ 45 -#define VMWARE_CMD_GETVCPU_INFO 68 -#define VMWARE_CMD_LEGACY_X2APIC 3 -#define VMWARE_CMD_VCPU_RESERVED 31 -#define VMWARE_CMD_STEALCLOCK 91 +#define VCPU_LEGACY_X2APIC 3 +#define VCPU_RESERVED 31 #define STEALCLOCK_NOT_AVAILABLE (-1) #define STEALCLOCK_DISABLED 0 #define STEALCLOCK_ENABLED 1 -#define VMWARE_PORT(cmd, eax, ebx, ecx, edx) \ - __asm__("inl (%%dx), %%eax" : \ - "=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \ - "a"(VMWARE_HYPERVISOR_MAGIC), \ - "c"(VMWARE_CMD_##cmd), \ - "d"(VMWARE_HYPERVISOR_PORT), "b"(UINT_MAX) : \ - "memory") - -#define VMWARE_VMCALL(cmd, eax, ebx, ecx, edx) \ - __asm__("vmcall" : \ - "=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \ - "a"(VMWARE_HYPERVISOR_MAGIC), \ - "c"(VMWARE_CMD_##cmd), \ - "d"(0), "b"(UINT_MAX) : \ - "memory") - -#define VMWARE_VMMCALL(cmd, eax, ebx, ecx, edx) \ - __asm__("vmmcall" : \ - "=a"(eax), "=c"(ecx), "=d"(edx), "=b"(ebx) : \ - "a"(VMWARE_HYPERVISOR_MAGIC), \ - "c"(VMWARE_CMD_##cmd), \ - "d"(0), "b"(UINT_MAX) : \ - "memory") - -#define VMWARE_CMD(cmd, eax, ebx, ecx, edx) do { \ - switch (vmware_hypercall_mode) { \ - case CPUID_VMWARE_FEATURES_ECX_VMCALL: \ - VMWARE_VMCALL(cmd, eax, ebx, ecx, edx); \ - break; \ - case CPUID_VMWARE_FEATURES_ECX_VMMCALL: \ - VMWARE_VMMCALL(cmd, eax, ebx, ecx, edx); \ - break; \ - default: \ - VMWARE_PORT(cmd, eax, ebx, ecx, edx); \ - break; \ - } \ - } while (0) - struct vmware_steal_time { union { uint64_t clock; /* stolen time counter in units of vtsc */ @@ -108,13 +62,15 @@ }; static unsigned long vmware_tsc_khz __ro_after_init; -static u8 vmware_hypercall_mode __ro_after_init; +u8 vmware_hypercall_mode __ro_after_init; +EXPORT_SYMBOL_GPL(vmware_hypercall_mode); static inline int __vmware_platform(void) { - uint32_t eax, ebx, ecx, edx; - VMWARE_CMD(GETVERSION, eax, ebx, ecx, edx); - return eax != (uint32_t)-1 && ebx == VMWARE_HYPERVISOR_MAGIC; + uint32_t eax, ebx, ecx; + + eax = vmware_hypercall3(VMWARE_CMD_GETVERSION, 0, &ebx, &ecx); + return eax != UINT_MAX && ebx == VMWARE_HYPERVISOR_MAGIC; } static unsigned long vmware_get_tsc_khz(void) @@ -166,21 +122,12 @@ pr_info("using clock offset of %llu ns\n", d->cyc2ns_offset); } -static int vmware_cmd_stealclock(uint32_t arg1, uint32_t arg2) +static int vmware_cmd_stealclock(uint32_t addr_hi, uint32_t addr_lo) { - uint32_t result, info; + uint32_t info; - asm volatile (VMWARE_HYPERCALL : - "=a"(result), - "=c"(info) : - "a"(VMWARE_HYPERVISOR_MAGIC), - "b"(0), - "c"(VMWARE_CMD_STEALCLOCK), - "d"(0), - "S"(arg1), - "D"(arg2) : - "memory"); - return result; + return vmware_hypercall5(VMWARE_CMD_STEALCLOCK, 0, 0, addr_hi, addr_lo, + &info); } static bool stealclock_enable(phys_addr_t pa) @@ -389,10 +336,10 @@ static void __init vmware_platform_setup(void) { - uint32_t eax, ebx, ecx, edx; + uint32_t eax, ebx, ecx; uint64_t lpj, tsc_khz; - VMWARE_CMD(GETHZ, eax, ebx, ecx, edx); + eax = vmware_hypercall3(VMWARE_CMD_GETHZ, UINT_MAX, &ebx, &ecx); if (ebx != UINT_MAX) { lpj = tsc_khz = eax | (((uint64_t)ebx) << 32); @@ -474,11 +421,21 @@ /* Checks if hypervisor supports x2apic without VT-D interrupt remapping. */ static bool __init vmware_legacy_x2apic_available(void) { - uint32_t eax, ebx, ecx, edx; - VMWARE_CMD(GETVCPU_INFO, eax, ebx, ecx, edx); - return !(eax & BIT(VMWARE_CMD_VCPU_RESERVED)) && - (eax & BIT(VMWARE_CMD_LEGACY_X2APIC)); + uint32_t eax; + + eax = vmware_hypercall1(VMWARE_CMD_GETVCPU_INFO, 0); + return !(eax & BIT(VCPU_RESERVED)) && + (eax & BIT(VCPU_LEGACY_X2APIC)); +} + +#ifdef CONFIG_INTEL_TDX_GUEST +/* __tdx_hypercall() is not exported. So, export the wrapper */ +void vmware_tdx_hypercall_args(struct tdx_module_args *args) +{ + __tdx_hypercall(args); } +EXPORT_SYMBOL_GPL(vmware_tdx_hypercall_args); +#endif #ifdef CONFIG_AMD_MEM_ENCRYPT static void vmware_sev_es_hcall_prepare(struct ghcb *ghcb, --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/crash.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/crash.c @@ -48,27 +48,6 @@ unsigned int type; }; -/* - * This is used to VMCLEAR all VMCSs loaded on the - * processor. And when loading kvm_intel module, the - * callback function pointer will be assigned. - * - * protected by rcu. - */ -crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss = NULL; -EXPORT_SYMBOL_GPL(crash_vmclear_loaded_vmcss); - -static inline void cpu_crash_vmclear_loaded_vmcss(void) -{ - crash_vmclear_fn *do_vmclear_operation = NULL; - - rcu_read_lock(); - do_vmclear_operation = rcu_dereference(crash_vmclear_loaded_vmcss); - if (do_vmclear_operation) - do_vmclear_operation(); - rcu_read_unlock(); -} - #if defined(CONFIG_SMP) && defined(CONFIG_X86_LOCAL_APIC) static void kdump_nmi_callback(int cpu, struct pt_regs *regs) @@ -76,11 +55,6 @@ crash_save_cpu(regs, cpu); /* - * VMCLEAR VMCSs loaded on all cpus if needed. - */ - cpu_crash_vmclear_loaded_vmcss(); - - /* * Disable Intel PT to stop its logging */ cpu_emergency_stop_pt(); @@ -133,11 +107,6 @@ crash_smp_send_stop(); - /* - * VMCLEAR VMCSs loaded on this cpu if needed. - */ - cpu_crash_vmclear_loaded_vmcss(); - cpu_emergency_disable_virtualization(); /* --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/early-quirks.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/early-quirks.c @@ -29,6 +29,37 @@ #include #include +static void __init early_pci_clear_msi(int bus, int slot, int func) +{ + int pos; + u16 ctrl; + + if (likely(!pci_early_clear_msi)) + return; + + pr_info_once("Clearing MSI/MSI-X enable bits early in boot (quirk)\n"); + + pos = pci_early_find_cap(bus, slot, func, PCI_CAP_ID_MSI); + if (pos) { + ctrl = read_pci_config_16(bus, slot, func, pos + PCI_MSI_FLAGS); + ctrl &= ~PCI_MSI_FLAGS_ENABLE; + write_pci_config_16(bus, slot, func, pos + PCI_MSI_FLAGS, ctrl); + + /* Read again to flush previous write */ + ctrl = read_pci_config_16(bus, slot, func, pos + PCI_MSI_FLAGS); + } + + pos = pci_early_find_cap(bus, slot, func, PCI_CAP_ID_MSIX); + if (pos) { + ctrl = read_pci_config_16(bus, slot, func, pos + PCI_MSIX_FLAGS); + ctrl &= ~PCI_MSIX_FLAGS_ENABLE; + write_pci_config_16(bus, slot, func, pos + PCI_MSIX_FLAGS, ctrl); + + /* Read again to flush previous write */ + ctrl = read_pci_config_16(bus, slot, func, pos + PCI_MSIX_FLAGS); + } +} + static void __init fix_hypertransport_config(int num, int slot, int func) { u32 htcfg; @@ -728,6 +759,7 @@ PCI_CLASS_BRIDGE_HOST, PCI_ANY_ID, 0, force_disable_hpet}, { PCI_VENDOR_ID_BROADCOM, 0x4331, PCI_CLASS_NETWORK_OTHER, PCI_ANY_ID, 0, apple_airport_reset}, + { PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0, early_pci_clear_msi}, {} }; @@ -780,6 +812,10 @@ PCI_HEADER_TYPE); if ((type & 0x7f) == PCI_HEADER_TYPE_BRIDGE) { + /* pci_early_clear_msi scans the buses differently. */ + if (pci_early_clear_msi) + return -1; + sec = read_pci_config_byte(num, slot, func, PCI_SECONDARY_BUS); if (sec > num) early_pci_scan_bus(sec); @@ -806,8 +842,13 @@ void __init early_quirks(void) { + int bus; + if (!early_pci_allowed()) return; early_pci_scan_bus(0); + /* pci_early_clear_msi scans more buses. */ + for (bus = 1; pci_early_clear_msi && bus < 256; bus++) + early_pci_scan_bus(bus); } --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/head_32.S +++ linux-intel-opt-6.5.0/arch/x86/kernel/head_32.S @@ -27,6 +27,7 @@ #include #include #include +#include /* Physical address */ #define pa(X) ((X) - __PAGE_OFFSET) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/kvm.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/kvm.c @@ -966,10 +966,8 @@ * Ensure that _bss_decrypted section is marked as decrypted in the * shared pages list. */ - nr_pages = DIV_ROUND_UP(__end_bss_decrypted - __start_bss_decrypted, - PAGE_SIZE); early_set_mem_enc_dec_hypercall((unsigned long)__start_bss_decrypted, - nr_pages, 0); + __end_bss_decrypted - __start_bss_decrypted, 0); /* * If not booted using EFI, enable Live migration support. --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/machine_kexec_64.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/machine_kexec_64.c @@ -28,6 +28,7 @@ #include #include #include +#include #ifdef CONFIG_ACPI /* @@ -301,6 +302,14 @@ void *control_page; int save_ftrace_enabled; + /* + * On the platform with "partial write machine check" erratum, + * all TDX private pages need to be converted back to normal + * before booting to the new kernel, otherwise the new kernel + * may get unexpected machine check. + */ + tdx_reset_memory(); + #ifdef CONFIG_KEXEC_JUMP if (image->preserve_context) save_processor_state(); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/process.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/process.c @@ -811,8 +811,14 @@ * * Test the CPUID bit directly because the machine might've cleared * X86_FEATURE_SME due to cmdline options. + * + * The TDX module or guests might have left dirty cachelines + * behind. Flush them to avoid corruption from later writeback. + * Note that this flushes on all systems where TDX is possible, + * but does not actually check that TDX was in use. */ - if (c->extended_cpuid_level >= 0x8000001f && (cpuid_eax(0x8000001f) & BIT(0))) + if ((c->extended_cpuid_level >= 0x8000001f && (cpuid_eax(0x8000001f) & BIT(0))) + || platform_tdx_enabled()) native_wbinvd(); /* --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/reboot.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/reboot.c @@ -32,6 +32,8 @@ #include #include #include +#include +#include /* * Power off function, if any @@ -488,7 +490,46 @@ DMI_MATCH(DMI_PRODUCT_NAME, "VGN-Z540N"), }, }, - + { /* Handle problems with rebooting on the Latitude E6520. */ + .callback = set_pci_reboot, + .ident = "Dell Latitude E6520", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6520"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 790. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 790", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 790"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 990. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 990", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 990"), + }, + }, + { /* Handle problems with rebooting on the Latitude E6220. */ + .callback = set_pci_reboot, + .ident = "Dell Latitude E6220", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "Latitude E6220"), + }, + }, + { /* Handle problems with rebooting on the OptiPlex 390. */ + .callback = set_pci_reboot, + .ident = "Dell OptiPlex 390", + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."), + DMI_MATCH(DMI_PRODUCT_NAME, "OptiPlex 390"), + }, + }, { } }; @@ -695,6 +736,20 @@ local_irq_disable(); stop_other_cpus(); #endif + /* + * stop_other_cpus() has flushed all dirty cachelines of TDX + * private memory on remote cpus. Unlike SME, which does the + * cache flush on _this_ cpu in the relocate_kernel(), flush + * the cache for _this_ cpu here. This is because on the + * platforms with "partial write machine check" erratum the + * kernel needs to convert all TDX private pages back to normal + * before booting to the new kernel in kexec(), and the cache + * flush must be done before that. If the kernel took SME's way, + * it would have to muck with the relocate_kernel() assembly to + * do memory conversion. + */ + if (platform_tdx_enabled()) + native_wbinvd(); lapic_shutdown(); restore_boot_irq_mode(); @@ -787,6 +842,26 @@ } #endif +/* + * This is used to VMCLEAR all VMCSs loaded on the + * processor. And when loading kvm_intel module, the + * callback function pointer will be assigned. + * + * protected by rcu. + */ +crash_vmclear_fn __rcu *crash_vmclear_loaded_vmcss; +EXPORT_SYMBOL_GPL(crash_vmclear_loaded_vmcss); + +static inline void cpu_crash_vmclear_loaded_vmcss(void) +{ + crash_vmclear_fn *do_vmclear_operation = NULL; + + rcu_read_lock(); + do_vmclear_operation = rcu_dereference(crash_vmclear_loaded_vmcss); + if (do_vmclear_operation) + do_vmclear_operation(); + rcu_read_unlock(); +} /* This is the CPU performing the emergency shutdown work. */ int crashing_cpu = -1; @@ -798,6 +873,8 @@ */ void cpu_emergency_disable_virtualization(void) { + cpu_crash_vmclear_loaded_vmcss(); + cpu_emergency_vmxoff(); cpu_emergency_svm_disable(); } --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/relocate_kernel_32.S +++ linux-intel-opt-6.5.0/arch/x86/kernel/relocate_kernel_32.S @@ -9,6 +9,7 @@ #include #include #include +#include /* * Must be relocatable PIC code callable as a C function, in particular --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/setup.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/setup.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include #include @@ -359,15 +360,11 @@ #if defined(CONFIG_HAVE_IMA_KEXEC) && !defined(CONFIG_OF_FLATTREE) int __init ima_free_kexec_buffer(void) { - int rc; - if (!ima_kexec_buffer_size) return -ENOENT; - rc = memblock_phys_free(ima_kexec_buffer_phys, - ima_kexec_buffer_size); - if (rc) - return rc; + memblock_free_late(ima_kexec_buffer_phys, + ima_kexec_buffer_size); ima_kexec_buffer_phys = 0; ima_kexec_buffer_size = 0; @@ -1032,6 +1029,14 @@ efi_init(); reserve_ibft_region(); + + efi_set_secure_boot(boot_params.secure_boot); + +#ifdef CONFIG_LOCK_DOWN_IN_SECURE_BOOT + if (efi_enabled(EFI_SECURE_BOOT)) + security_lock_kernel_down("EFI Secure Boot mode", LOCKDOWN_INTEGRITY_MAX); +#endif + dmi_setup(); /* @@ -1123,7 +1128,7 @@ * Needs to run after memblock setup because it needs the physical * memory size. */ - sev_setup_arch(); + mem_encrypt_setup_arch(); efi_fake_memmap(); efi_find_mirror(); @@ -1161,6 +1166,8 @@ * * Moreover, on machines with SandyBridge graphics or in setups that use * crashkernel the entire 1M is reserved anyway. + * + * Note the host kernel TDX also requires the first 1MB being reserved. */ x86_platform.realmode_reserve(); @@ -1192,19 +1199,7 @@ /* Allocate bigger log buffer */ setup_log_buf(1); - if (efi_enabled(EFI_BOOT)) { - switch (boot_params.secure_boot) { - case efi_secureboot_mode_disabled: - pr_info("Secure boot disabled\n"); - break; - case efi_secureboot_mode_enabled: - pr_info("Secure boot enabled\n"); - break; - default: - pr_info("Secure boot could not be determined\n"); - break; - } - } + efi_set_secure_boot(boot_params.secure_boot); reserve_initrd(); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/sev-shared.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/sev-shared.c @@ -256,7 +256,7 @@ return 0; } -static int sev_cpuid_hv(struct cpuid_leaf *leaf) +static int __sev_cpuid_hv_msr(struct cpuid_leaf *leaf) { int ret; @@ -279,6 +279,45 @@ return ret; } +static int __sev_cpuid_hv_ghcb(struct ghcb *ghcb, struct es_em_ctxt *ctxt, struct cpuid_leaf *leaf) +{ + u32 cr4 = native_read_cr4(); + int ret; + + ghcb_set_rax(ghcb, leaf->fn); + ghcb_set_rcx(ghcb, leaf->subfn); + + if (cr4 & X86_CR4_OSXSAVE) + /* Safe to read xcr0 */ + ghcb_set_xcr0(ghcb, xgetbv(XCR_XFEATURE_ENABLED_MASK)); + else + /* xgetbv will cause #UD - use reset value for xcr0 */ + ghcb_set_xcr0(ghcb, 1); + + ret = sev_es_ghcb_hv_call(ghcb, ctxt, SVM_EXIT_CPUID, 0, 0); + if (ret != ES_OK) + return ret; + + if (!(ghcb_rax_is_valid(ghcb) && + ghcb_rbx_is_valid(ghcb) && + ghcb_rcx_is_valid(ghcb) && + ghcb_rdx_is_valid(ghcb))) + return ES_VMM_ERROR; + + leaf->eax = ghcb->save.rax; + leaf->ebx = ghcb->save.rbx; + leaf->ecx = ghcb->save.rcx; + leaf->edx = ghcb->save.rdx; + + return ES_OK; +} + +static int sev_cpuid_hv(struct ghcb *ghcb, struct es_em_ctxt *ctxt, struct cpuid_leaf *leaf) +{ + return ghcb ? __sev_cpuid_hv_ghcb(ghcb, ctxt, leaf) + : __sev_cpuid_hv_msr(leaf); +} + /* * This may be called early while still running on the initial identity * mapping. Use RIP-relative addressing to obtain the correct address @@ -388,19 +427,20 @@ return false; } -static void snp_cpuid_hv(struct cpuid_leaf *leaf) +static void snp_cpuid_hv(struct ghcb *ghcb, struct es_em_ctxt *ctxt, struct cpuid_leaf *leaf) { - if (sev_cpuid_hv(leaf)) + if (sev_cpuid_hv(ghcb, ctxt, leaf)) sev_es_terminate(SEV_TERM_SET_LINUX, GHCB_TERM_CPUID_HV); } -static int snp_cpuid_postprocess(struct cpuid_leaf *leaf) +static int snp_cpuid_postprocess(struct ghcb *ghcb, struct es_em_ctxt *ctxt, + struct cpuid_leaf *leaf) { struct cpuid_leaf leaf_hv = *leaf; switch (leaf->fn) { case 0x1: - snp_cpuid_hv(&leaf_hv); + snp_cpuid_hv(ghcb, ctxt, &leaf_hv); /* initial APIC ID */ leaf->ebx = (leaf_hv.ebx & GENMASK(31, 24)) | (leaf->ebx & GENMASK(23, 0)); @@ -419,7 +459,7 @@ break; case 0xB: leaf_hv.subfn = 0; - snp_cpuid_hv(&leaf_hv); + snp_cpuid_hv(ghcb, ctxt, &leaf_hv); /* extended APIC ID */ leaf->edx = leaf_hv.edx; @@ -467,7 +507,7 @@ } break; case 0x8000001E: - snp_cpuid_hv(&leaf_hv); + snp_cpuid_hv(ghcb, ctxt, &leaf_hv); /* extended APIC ID */ leaf->eax = leaf_hv.eax; @@ -488,7 +528,7 @@ * Returns -EOPNOTSUPP if feature not enabled. Any other non-zero return value * should be treated as fatal by caller. */ -static int snp_cpuid(struct cpuid_leaf *leaf) +static int snp_cpuid(struct ghcb *ghcb, struct es_em_ctxt *ctxt, struct cpuid_leaf *leaf) { const struct snp_cpuid_table *cpuid_table = snp_cpuid_get_table(); @@ -522,7 +562,7 @@ return 0; } - return snp_cpuid_postprocess(leaf); + return snp_cpuid_postprocess(ghcb, ctxt, leaf); } /* @@ -544,14 +584,14 @@ leaf.fn = fn; leaf.subfn = subfn; - ret = snp_cpuid(&leaf); + ret = snp_cpuid(NULL, NULL, &leaf); if (!ret) goto cpuid_done; if (ret != -EOPNOTSUPP) goto fail; - if (sev_cpuid_hv(&leaf)) + if (__sev_cpuid_hv_msr(&leaf)) goto fail; cpuid_done: @@ -592,6 +632,23 @@ sev_es_terminate(SEV_TERM_SET_GEN, GHCB_SEV_ES_GEN_REQ); } +static enum es_result vc_insn_string_check(struct es_em_ctxt *ctxt, + unsigned long address, + bool write) +{ + if (user_mode(ctxt->regs) && fault_in_kernel_space(address)) { + ctxt->fi.vector = X86_TRAP_PF; + ctxt->fi.error_code = X86_PF_USER; + ctxt->fi.cr2 = address; + if (write) + ctxt->fi.error_code |= X86_PF_WRITE; + + return ES_EXCEPTION; + } + + return ES_OK; +} + static enum es_result vc_insn_string_read(struct es_em_ctxt *ctxt, void *src, char *buf, unsigned int data_size, @@ -599,7 +656,12 @@ bool backwards) { int i, b = backwards ? -1 : 1; - enum es_result ret = ES_OK; + unsigned long address = (unsigned long)src; + enum es_result ret; + + ret = vc_insn_string_check(ctxt, address, false); + if (ret != ES_OK) + return ret; for (i = 0; i < count; i++) { void *s = src + (i * data_size * b); @@ -620,7 +682,12 @@ bool backwards) { int i, s = backwards ? -1 : 1; - enum es_result ret = ES_OK; + unsigned long address = (unsigned long)dst; + enum es_result ret; + + ret = vc_insn_string_check(ctxt, address, true); + if (ret != ES_OK) + return ret; for (i = 0; i < count; i++) { void *d = dst + (i * data_size * s); @@ -656,6 +723,9 @@ static enum es_result vc_ioio_exitinfo(struct es_em_ctxt *ctxt, u64 *exitinfo) { struct insn *insn = &ctxt->insn; + size_t size; + u64 port; + *exitinfo = 0; switch (insn->opcode.bytes[0]) { @@ -664,7 +734,7 @@ case 0x6d: *exitinfo |= IOIO_TYPE_INS; *exitinfo |= IOIO_SEG_ES; - *exitinfo |= (ctxt->regs->dx & 0xffff) << 16; + port = ctxt->regs->dx & 0xffff; break; /* OUTS opcodes */ @@ -672,41 +742,43 @@ case 0x6f: *exitinfo |= IOIO_TYPE_OUTS; *exitinfo |= IOIO_SEG_DS; - *exitinfo |= (ctxt->regs->dx & 0xffff) << 16; + port = ctxt->regs->dx & 0xffff; break; /* IN immediate opcodes */ case 0xe4: case 0xe5: *exitinfo |= IOIO_TYPE_IN; - *exitinfo |= (u8)insn->immediate.value << 16; + port = (u8)insn->immediate.value & 0xffff; break; /* OUT immediate opcodes */ case 0xe6: case 0xe7: *exitinfo |= IOIO_TYPE_OUT; - *exitinfo |= (u8)insn->immediate.value << 16; + port = (u8)insn->immediate.value & 0xffff; break; /* IN register opcodes */ case 0xec: case 0xed: *exitinfo |= IOIO_TYPE_IN; - *exitinfo |= (ctxt->regs->dx & 0xffff) << 16; + port = ctxt->regs->dx & 0xffff; break; /* OUT register opcodes */ case 0xee: case 0xef: *exitinfo |= IOIO_TYPE_OUT; - *exitinfo |= (ctxt->regs->dx & 0xffff) << 16; + port = ctxt->regs->dx & 0xffff; break; default: return ES_DECODE_FAILED; } + *exitinfo |= port << 16; + switch (insn->opcode.bytes[0]) { case 0x6c: case 0x6e: @@ -716,12 +788,15 @@ case 0xee: /* Single byte opcodes */ *exitinfo |= IOIO_DATA_8; + size = 1; break; default: /* Length determined by instruction parsing */ *exitinfo |= (insn->opnd_bytes == 2) ? IOIO_DATA_16 : IOIO_DATA_32; + size = (insn->opnd_bytes == 2) ? 2 : 4; } + switch (insn->addr_bytes) { case 2: *exitinfo |= IOIO_ADDR_16; @@ -737,7 +812,7 @@ if (insn_has_rep_prefix(insn)) *exitinfo |= IOIO_REP; - return ES_OK; + return vc_ioio_check(ctxt, (u16)port, size); } static enum es_result vc_handle_ioio(struct ghcb *ghcb, struct es_em_ctxt *ctxt) @@ -848,14 +923,15 @@ return ret; } -static int vc_handle_cpuid_snp(struct pt_regs *regs) +static int vc_handle_cpuid_snp(struct ghcb *ghcb, struct es_em_ctxt *ctxt) { + struct pt_regs *regs = ctxt->regs; struct cpuid_leaf leaf; int ret; leaf.fn = regs->ax; leaf.subfn = regs->cx; - ret = snp_cpuid(&leaf); + ret = snp_cpuid(ghcb, ctxt, &leaf); if (!ret) { regs->ax = leaf.eax; regs->bx = leaf.ebx; @@ -874,7 +950,7 @@ enum es_result ret; int snp_cpuid_ret; - snp_cpuid_ret = vc_handle_cpuid_snp(regs); + snp_cpuid_ret = vc_handle_cpuid_snp(ghcb, ctxt); if (!snp_cpuid_ret) return ES_OK; if (snp_cpuid_ret != -EOPNOTSUPP) --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/sev.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/sev.c @@ -524,6 +524,33 @@ return ES_OK; } +static enum es_result vc_ioio_check(struct es_em_ctxt *ctxt, u16 port, size_t size) +{ + BUG_ON(size > 4); + + if (user_mode(ctxt->regs)) { + struct thread_struct *t = ¤t->thread; + struct io_bitmap *iobm = t->io_bitmap; + size_t idx; + + if (!iobm) + goto fault; + + for (idx = port; idx < port + size; ++idx) { + if (test_bit(idx, iobm->bitmap)) + goto fault; + } + } + + return ES_OK; + +fault: + ctxt->fi.vector = X86_TRAP_GP; + ctxt->fi.error_code = 0; + + return ES_EXCEPTION; +} + /* Include code shared with pre-decompression boot stage */ #include "sev-shared.c" @@ -868,8 +895,7 @@ void snp_accept_memory(phys_addr_t start, phys_addr_t end) { - unsigned long vaddr; - unsigned int npages; + unsigned long vaddr, npages; if (!cc_platform_has(CC_ATTR_GUEST_SEV_SNP)) return; @@ -1509,6 +1535,9 @@ return ES_DECODE_FAILED; } + if (user_mode(ctxt->regs)) + return ES_UNSUPPORTED; + switch (mmio) { case INSN_MMIO_WRITE: memcpy(ghcb->shared_buffer, reg_data, bytes); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/smp.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/smp.c @@ -131,7 +131,7 @@ } /* - * Disable virtualization, APIC etc. and park the CPU in a HLT loop + * this function calls the 'stop' function on all other CPUs in the system. */ DEFINE_IDTENTRY_SYSVEC(sysvec_reboot) { @@ -172,17 +172,13 @@ * 2) Wait for all other CPUs to report that they reached the * HLT loop in stop_this_cpu() * - * 3) If the system uses INIT/STARTUP for CPU bringup, then - * send all present CPUs an INIT vector, which brings them - * completely out of the way. + * 3) If #2 timed out send an NMI to the CPUs which did not + * yet report * - * 4) If #3 is not possible and #2 timed out send an NMI to the - * CPUs which did not yet report - * - * 5) Wait for all other CPUs to report that they reached the + * 4) Wait for all other CPUs to report that they reached the * HLT loop in stop_this_cpu() * - * #4 can obviously race against a CPU reaching the HLT loop late. + * #3 can obviously race against a CPU reaching the HLT loop late. * That CPU will have reported already and the "have all CPUs * reached HLT" condition will be true despite the fact that the * other CPU is still handling the NMI. Again, there is no @@ -198,7 +194,7 @@ /* * Don't wait longer than a second for IPI completion. The * wait request is not checked here because that would - * prevent an NMI/INIT shutdown in case that not all + * prevent an NMI shutdown attempt in case that not all * CPUs reach shutdown state. */ timeout = USEC_PER_SEC; @@ -206,27 +202,7 @@ udelay(1); } - /* - * Park all other CPUs in INIT including "offline" CPUs, if - * possible. That's a safe place where they can't resume execution - * of HLT and then execute the HLT loop from overwritten text or - * page tables. - * - * The only downside is a broadcast MCE, but up to the point where - * the kexec() kernel brought all APs online again an MCE will just - * make HLT resume and handle the MCE. The machine crashes and burns - * due to overwritten text, page tables and data. So there is a - * choice between fire and frying pan. The result is pretty much - * the same. Chose frying pan until x86 provides a sane mechanism - * to park a CPU. - */ - if (smp_park_other_cpus_in_init()) - goto done; - - /* - * If park with INIT was not possible and the REBOOT_VECTOR didn't - * take all secondary CPUs offline, try with the NMI. - */ + /* if the REBOOT_VECTOR didn't work, try with the NMI */ if (!cpumask_empty(&cpus_stop_mask)) { /* * If NMI IPI is enabled, try to register the stop handler @@ -249,7 +225,6 @@ udelay(1); } -done: local_irq_save(flags); disable_local_APIC(); mcheck_cpu_clear(this_cpu_ptr(&cpu_info)); --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/smpboot.c +++ linux-intel-opt-6.5.0/arch/x86/kernel/smpboot.c @@ -587,7 +587,6 @@ } -#if defined(CONFIG_SCHED_SMT) || defined(CONFIG_SCHED_CLUSTER) || defined(CONFIG_SCHED_MC) static inline int x86_sched_itmt_flags(void) { return sysctl_sched_itmt_enabled ? SD_ASYM_PACKING : 0; @@ -611,7 +610,14 @@ return cpu_cluster_flags() | x86_sched_itmt_flags(); } #endif -#endif + +static int x86_die_flags(void) +{ + if (cpu_feature_enabled(X86_FEATURE_HYBRID_CPU)) + return x86_sched_itmt_flags(); + + return 0; +} /* * Set if a package/die has multiple NUMA nodes inside. @@ -653,7 +659,7 @@ */ if (!x86_has_numa_in_package) { x86_topology[i++] = (struct sched_domain_topology_level){ - cpu_cpu_mask, SD_INIT_NAME(DIE) + cpu_cpu_mask, x86_die_flags, SD_INIT_NAME(DIE) }; } @@ -1340,33 +1346,6 @@ cache_aps_init(); } -bool smp_park_other_cpus_in_init(void) -{ - unsigned int cpu, this_cpu = smp_processor_id(); - unsigned int apicid; - - if (apic->wakeup_secondary_cpu_64 || apic->wakeup_secondary_cpu) - return false; - - /* - * If this is a crash stop which does not execute on the boot CPU, - * then this cannot use the INIT mechanism because INIT to the boot - * CPU will reset the machine. - */ - if (this_cpu) - return false; - - for_each_present_cpu(cpu) { - if (cpu == this_cpu) - continue; - apicid = apic->cpu_present_to_apicid(cpu); - if (apicid == BAD_APICID) - continue; - send_init_sequence(apicid); - } - return true; -} - /* * Early setup to make printk work. */ --- linux-intel-opt-6.5.0.orig/arch/x86/kernel/vmlinux.lds.S +++ linux-intel-opt-6.5.0/arch/x86/kernel/vmlinux.lds.S @@ -156,7 +156,7 @@ ALIGN_ENTRY_TEXT_END *(.gnu.warning) - } :text =0xcccc + } :text = 0xcccccccc /* End of text section, which should occupy whole number of pages */ _etext = .; --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/Kconfig +++ linux-intel-opt-6.5.0/arch/x86/kvm/Kconfig @@ -24,7 +24,7 @@ depends on HIGH_RES_TIMERS depends on X86_LOCAL_APIC select PREEMPT_NOTIFIERS - select MMU_NOTIFIER + select KVM_GENERIC_MMU_NOTIFIER select HAVE_KVM_IRQCHIP select HAVE_KVM_PFNCACHE select HAVE_KVM_IRQFD @@ -77,9 +77,24 @@ If in doubt, say "N". +config KVM_SW_PROTECTED_VM + bool "Enable support for KVM software-protected VMs" + depends on EXPERT + depends on X86_64 + select KVM_GENERIC_PRIVATE_MEM + help + Enable support for KVM software-protected VMs. Currently "protected" + means the VM can be backed with memory provided by + KVM_CREATE_GUEST_MEMFD. + + If unsure, say "N". + config KVM_INTEL tristate "KVM for Intel (and compatible) processors support" depends on KVM && IA32_FEAT_CTL + select KVM_SW_PROTECTED_VM if INTEL_TDX_HOST + select KVM_GENERIC_MEMORY_ATTRIBUTES if INTEL_TDX_HOST + select KVM_PRIVATE_MEM if INTEL_TDX_HOST help Provides support for KVM on processors equipped with Intel's VT extensions, a.k.a. Virtual Machine Extensions (VMX). @@ -141,4 +156,18 @@ config KVM_EXTERNAL_WRITE_TRACKING bool +config KVM_MMU_PRIVATE + def_bool y + depends on INTEL_TDX_HOST && KVM_INTEL + +config KVM_TDX_OPERAND_BUSY_INJECTION + def_bool n + bool "TDX operand busy injection" + depends on INTEL_TDX_HOST && KVM_INTEL + +config KVM_TDX_ACCOUNT_PRIVATE_PAGES + def_bool n + bool "Account TDX private pges" + depends on INTEL_TDX_HOST && KVM_INTEL + endif # VIRTUALIZATION --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/Makefile +++ linux-intel-opt-6.5.0/arch/x86/kvm/Makefile @@ -23,8 +23,9 @@ kvm-$(CONFIG_KVM_SMM) += smm.o kvm-intel-y += vmx/vmx.o vmx/vmenter.o vmx/pmu_intel.o vmx/vmcs12.o \ - vmx/hyperv.o vmx/nested.o vmx/posted_intr.o + vmx/hyperv.o vmx/nested.o vmx/posted_intr.o vmx/main.o kvm-intel-$(CONFIG_X86_SGX_KVM) += vmx/sgx.o +kvm-intel-$(CONFIG_INTEL_TDX_HOST) += vmx/tdx.o vmx/tdx_error.o kvm-amd-y += svm/svm.o svm/vmenter.o svm/pmu.o svm/nested.o svm/avic.o \ svm/sev.o svm/hyperv.o --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/cpuid.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/cpuid.c @@ -123,6 +123,7 @@ { struct kvm_cpuid_entry2 *best; u64 xfeatures; + int r; /* * The existing code assumes virtual address is 48-bit or 57-bit in the @@ -150,7 +151,10 @@ if (!xfeatures) return 0; - return fpu_enable_guest_xfd_features(&vcpu->arch.guest_fpu, xfeatures); + r = fpu_enable_guest_xfd_features(&vcpu->arch.guest_fpu, xfeatures); + if (r) + return r; + return static_call(kvm_x86_vcpu_check_cpuid)(vcpu, entries, nent); } /* Check whether the supplied CPUID data is equal to what is already set for the vCPU. */ @@ -1388,6 +1392,13 @@ return r; } +struct kvm_cpuid_entry2 *kvm_find_cpuid_entry2( + struct kvm_cpuid_entry2 *entries, int nent, u32 function, u64 index) +{ + return cpuid_entry2_find(entries, nent, function, index); +} +EXPORT_SYMBOL_GPL(kvm_find_cpuid_entry2); + struct kvm_cpuid_entry2 *kvm_find_cpuid_entry_index(struct kvm_vcpu *vcpu, u32 function, u32 index) { --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/cpuid.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/cpuid.h @@ -13,6 +13,8 @@ void kvm_update_cpuid_runtime(struct kvm_vcpu *vcpu); void kvm_update_pv_runtime(struct kvm_vcpu *vcpu); +struct kvm_cpuid_entry2 *kvm_find_cpuid_entry2(struct kvm_cpuid_entry2 *entries, + int nent, u32 function, u64 index); struct kvm_cpuid_entry2 *kvm_find_cpuid_entry_index(struct kvm_vcpu *vcpu, u32 function, u32 index); struct kvm_cpuid_entry2 *kvm_find_cpuid_entry(struct kvm_vcpu *vcpu, --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/debugfs.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/debugfs.c @@ -111,7 +111,7 @@ mutex_lock(&kvm->slots_lock); write_lock(&kvm->mmu_lock); - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { int bkt; slots = __kvm_memslots(kvm, i); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/irq.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/irq.c @@ -100,6 +100,9 @@ if (kvm_cpu_has_extint(v)) return 1; + if (lapic_in_kernel(v) && v->arch.apic->guest_apic_protected) + return static_call(kvm_x86_protected_apic_has_interrupt)(v); + return kvm_apic_has_interrupt(v) != -1; /* LAPIC */ } EXPORT_SYMBOL_GPL(kvm_cpu_has_interrupt); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/lapic.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/lapic.c @@ -1754,8 +1754,17 @@ static bool lapic_timer_int_injected(struct kvm_vcpu *vcpu) { struct kvm_lapic *apic = vcpu->arch.apic; - u32 reg = kvm_lapic_get_reg(apic, APIC_LVTT); + u32 reg; + /* + * Assume a timer IRQ was "injected" if the APIC is protected. KVM's + * copy of the vIRR is bogus, it's the responsibility of the caller to + * precisely check whether or not a timer IRQ is pending. + */ + if (apic->guest_apic_protected) + return true; + + reg = kvm_lapic_get_reg(apic, APIC_LVTT); if (kvm_apic_hw_enabled(apic)) { int vec = reg & APIC_VECTOR_MASK; void *bitmap = apic->regs + APIC_ISR; @@ -2834,6 +2843,9 @@ if (!kvm_apic_present(vcpu)) return -1; + if (apic->guest_apic_protected) + return -1; + __apic_update_ppr(apic, &ppr); return apic_has_interrupt_for_ppr(apic, ppr); } @@ -3228,6 +3240,16 @@ return 0; } +void kvm_vcpu_deliver_init(struct kvm_vcpu *vcpu) +{ + kvm_vcpu_reset(vcpu, true); + if (kvm_vcpu_is_bsp(vcpu)) + vcpu->arch.mp_state = KVM_MP_STATE_RUNNABLE; + else + vcpu->arch.mp_state = KVM_MP_STATE_INIT_RECEIVED; +} +EXPORT_SYMBOL_GPL(kvm_vcpu_deliver_init); + int kvm_apic_accept_events(struct kvm_vcpu *vcpu) { struct kvm_lapic *apic = vcpu->arch.apic; @@ -3259,13 +3281,8 @@ return 0; } - if (test_and_clear_bit(KVM_APIC_INIT, &apic->pending_events)) { - kvm_vcpu_reset(vcpu, true); - if (kvm_vcpu_is_bsp(apic->vcpu)) - vcpu->arch.mp_state = KVM_MP_STATE_RUNNABLE; - else - vcpu->arch.mp_state = KVM_MP_STATE_INIT_RECEIVED; - } + if (test_and_clear_bit(KVM_APIC_INIT, &apic->pending_events)) + static_call(kvm_x86_vcpu_deliver_init)(vcpu); if (test_and_clear_bit(KVM_APIC_SIPI, &apic->pending_events)) { if (vcpu->arch.mp_state == KVM_MP_STATE_INIT_RECEIVED) { /* evaluate pending_events before reading the vector */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/lapic.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/lapic.h @@ -66,6 +66,8 @@ bool sw_enabled; bool irr_pending; bool lvt0_in_nmi_mode; + /* Select registers in the vAPIC cannot be read/written. */ + bool guest_apic_protected; /* Number of bits set in ISR. */ s16 isr_count; /* The highest vector set in ISR; if -1 - invalid, must scan ISR. */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu.h @@ -3,6 +3,7 @@ #define __KVM_X86_MMU_H #include +#include #include "kvm_cache_regs.h" #include "cpuid.h" @@ -101,6 +102,7 @@ } void kvm_mmu_set_mmio_spte_mask(u64 mmio_value, u64 mmio_mask, u64 access_mask); +void kvm_mmu_set_mmio_spte_value(struct kvm *kvm, u64 mmio_value); void kvm_mmu_set_me_spte_mask(u64 me_value, u64 me_mask); void kvm_mmu_set_ept_masks(bool has_ad_bits, bool has_exec_only); @@ -121,6 +123,8 @@ void kvm_mmu_free_obsolete_roots(struct kvm_vcpu *vcpu); void kvm_mmu_sync_roots(struct kvm_vcpu *vcpu); void kvm_mmu_sync_prev_roots(struct kvm_vcpu *vcpu); +int kvm_mmu_move_private_pages_from(struct kvm_vcpu *vcpu, + struct kvm_vcpu *src_vcpu); static inline int kvm_mmu_reload(struct kvm_vcpu *vcpu) { @@ -173,6 +177,9 @@ __kvm_mmu_refresh_passthrough_bits(vcpu, mmu); } +int kvm_mmu_map_tdp_page(struct kvm_vcpu *vcpu, gpa_t gpa, u64 error_code, + int max_level); + /* * Check if a given access (described through the I/D, W/R and U/S bits of a * page fault error code pfec) causes a permission fault with the given PTE @@ -235,8 +242,6 @@ return -(u32)fault & errcode; } -void kvm_zap_gfn_range(struct kvm *kvm, gfn_t gfn_start, gfn_t gfn_end); - int kvm_arch_write_log_dirty(struct kvm_vcpu *vcpu); int kvm_mmu_post_init_vm(struct kvm *kvm); @@ -302,4 +307,41 @@ return gpa; return translate_nested_gpa(vcpu, gpa, access, exception); } + +static inline gfn_t kvm_gfn_shared_mask(const struct kvm *kvm) +{ +#ifdef CONFIG_KVM_MMU_PRIVATE + return kvm->arch.gfn_shared_mask; +#else + return 0; +#endif +} + +static inline gfn_t kvm_gfn_to_shared(const struct kvm *kvm, gfn_t gfn) +{ + return gfn | kvm_gfn_shared_mask(kvm); +} + +static inline gfn_t kvm_gfn_to_private(const struct kvm *kvm, gfn_t gfn) +{ + return gfn & ~kvm_gfn_shared_mask(kvm); +} + +static inline bool kvm_is_private_gpa(const struct kvm *kvm, gpa_t gpa) +{ + gfn_t mask = kvm_gfn_shared_mask(kvm); + + return mask && !(gpa_to_gfn(gpa) & mask); +} + +static inline void kvm_mmu_split_direct_map(struct page *page) +{ + /* + * Hack to forcibly split kernel direct map so that no split will occur + * within mmu_lock by set_direct_map_{invalid, default}_noflush(). + */ + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + set_direct_map_split_noflush(page); +} + #endif --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/mmu.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/mmu.c @@ -103,6 +103,7 @@ * If the hardware supports that we don't need to do shadow paging. */ bool tdp_enabled = false; +EXPORT_SYMBOL_GPL(tdp_enabled); static bool __ro_after_init tdp_mmu_allowed; @@ -284,6 +285,7 @@ int ret = -EOPNOTSUPP; if (kvm_x86_ops.flush_remote_tlbs_range) + /* Callback should flush both private GFN and shared GFN. */ ret = static_call(kvm_x86_flush_remote_tlbs_range)(kvm, start_gfn, nr_pages); if (ret) @@ -579,9 +581,9 @@ if (!is_shadow_present_pte(old_spte) || !spte_has_volatile_bits(old_spte)) - __update_clear_spte_fast(sptep, 0ull); + __update_clear_spte_fast(sptep, SHADOW_NONPRESENT_VALUE); else - old_spte = __update_clear_spte_slow(sptep, 0ull); + old_spte = __update_clear_spte_slow(sptep, SHADOW_NONPRESENT_VALUE); if (!is_shadow_present_pte(old_spte)) return old_spte; @@ -615,7 +617,7 @@ */ static void mmu_spte_clear_no_track(u64 *sptep) { - __update_clear_spte_fast(sptep, 0ull); + __update_clear_spte_fast(sptep, SHADOW_NONPRESENT_VALUE); } static u64 mmu_spte_get_lockless(u64 *sptep) @@ -697,6 +699,18 @@ 1 + PT64_ROOT_MAX_LEVEL + PTE_PREFETCH_NUM); if (r) return r; + if (kvm_gfn_shared_mask(vcpu->kvm)) { + struct kvm_mmu_memory_cache *mc = &vcpu->arch.mmu_private_spt_cache; + int start, end, i; + + start = kvm_mmu_memory_cache_nr_free_objects(mc); + r = kvm_mmu_topup_memory_cache(mc, PT64_ROOT_MAX_LEVEL); + end = kvm_mmu_memory_cache_nr_free_objects(mc); + for (i = start; i < end; i++) + kvm_mmu_split_direct_map(virt_to_page(mc->objects[i])); + if (r) + return r; + } r = kvm_mmu_topup_memory_cache(&vcpu->arch.mmu_shadow_page_cache, PT64_ROOT_MAX_LEVEL); if (r) @@ -711,11 +725,32 @@ PT64_ROOT_MAX_LEVEL); } +static int kvm_mmu_topup_memory_cache_for_split(struct kvm *kvm) +{ + int r = 0; +#ifdef CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + struct kvm_mmu_memory_cache *mc; + int start, end, i; + + mutex_lock(&kvm->arch.private_spt_for_split_lock); + mc = &kvm->arch.private_spt_for_split_cache; + start = kvm_mmu_memory_cache_nr_free_objects(mc); + r = kvm_mmu_topup_memory_cache(mc, KVM_MAX_HUGEPAGE_LEVEL * + kvm->created_vcpus); + end = kvm_mmu_memory_cache_nr_free_objects(mc); + for (i = start; i < end; i++) + kvm_mmu_split_direct_map(virt_to_page(mc->objects[i])); + mutex_unlock(&kvm->arch.private_spt_for_split_lock); +#endif + return r; +} + static void mmu_free_memory_caches(struct kvm_vcpu *vcpu) { kvm_mmu_free_memory_cache(&vcpu->arch.mmu_pte_list_desc_cache); kvm_mmu_free_memory_cache(&vcpu->arch.mmu_shadow_page_cache); kvm_mmu_free_memory_cache(&vcpu->arch.mmu_shadowed_info_cache); + kvm_mmu_free_memory_cache(&vcpu->arch.mmu_private_spt_cache); kvm_mmu_free_memory_cache(&vcpu->arch.mmu_page_header_cache); } @@ -803,16 +838,27 @@ return &slot->arch.lpage_info[level - 2][idx]; } +/* + * The most significant bit in disallow_lpage tracks whether or not memory + * attributes are mixed, i.e. not identical for all gfns at the current level. + * The lower order bits are used to refcount other cases where a hugepage is + * disallowed, e.g. if KVM has shadow a page table at the gfn. + */ +#define KVM_LPAGE_MIXED_FLAG BIT(31) + static void update_gfn_disallow_lpage_count(const struct kvm_memory_slot *slot, gfn_t gfn, int count) { struct kvm_lpage_info *linfo; - int i; + int old, i; for (i = PG_LEVEL_2M; i <= KVM_MAX_HUGEPAGE_LEVEL; ++i) { linfo = lpage_info_slot(gfn, slot, i); + + old = linfo->disallow_lpage; linfo->disallow_lpage += count; - WARN_ON(linfo->disallow_lpage < 0); + + WARN_ON_ONCE((old ^ linfo->disallow_lpage) & KVM_LPAGE_MIXED_FLAG); } } @@ -1588,7 +1634,7 @@ for_each_slot_rmap_range(range->slot, PG_LEVEL_4K, KVM_MAX_HUGEPAGE_LEVEL, range->start, range->end - 1, &iterator) ret |= handler(kvm, iterator.rmap, range->slot, iterator.gfn, - iterator.level, range->pte); + iterator.level, range->arg.pte); return ret; } @@ -1965,7 +2011,8 @@ static int kvm_sync_spte(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp, int i) { - if (!sp->spt[i]) + /* sp->spt[i] has initial value of shadow page table allocation */ + if (sp->spt[i] == SHADOW_NONPRESENT_VALUE) return 0; return vcpu->arch.mmu->sync_spte(vcpu, sp, i); @@ -2529,7 +2576,7 @@ return kvm_mmu_prepare_zap_page(kvm, child, invalid_list); } - } else if (is_mmio_spte(pte)) { + } else if (is_mmio_spte(kvm, pte)) { mmu_spte_clear_no_track(spte); } return 0; @@ -3087,7 +3134,7 @@ * * There are several ways to safely use this helper: * - * - Check mmu_invalidate_retry_hva() after grabbing the mapping level, before + * - Check mmu_invalidate_retry_gfn() after grabbing the mapping level, before * consuming it. In this case, mmu_lock doesn't need to be held during the * lookup, but it does need to be held while checking the MMU notifier. * @@ -3168,12 +3215,12 @@ return level; } -int kvm_mmu_max_mapping_level(struct kvm *kvm, - const struct kvm_memory_slot *slot, gfn_t gfn, - int max_level) +static int __kvm_mmu_max_mapping_level(struct kvm *kvm, + const struct kvm_memory_slot *slot, + gfn_t gfn, int max_level, int host_level, + bool is_private) { struct kvm_lpage_info *linfo; - int host_level; max_level = min(max_level, max_huge_page_level); for ( ; max_level > PG_LEVEL_4K; max_level--) { @@ -3185,10 +3232,22 @@ if (max_level == PG_LEVEL_4K) return PG_LEVEL_4K; - host_level = host_pfn_mapping_level(kvm, gfn, slot); + if (!is_private) { + WARN_ON_ONCE(host_level != PG_LEVEL_NONE); + host_level = host_pfn_mapping_level(kvm, gfn, slot); + } + WARN_ON_ONCE(host_level == PG_LEVEL_NONE); return min(host_level, max_level); } +int kvm_mmu_max_mapping_level(struct kvm *kvm, + const struct kvm_memory_slot *slot, gfn_t gfn, + int max_level, bool faultin_private) +{ + return __kvm_mmu_max_mapping_level(kvm, slot, gfn, max_level, + PG_LEVEL_NONE, faultin_private); +} + void kvm_mmu_hugepage_adjust(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault) { struct kvm_memory_slot *slot = fault->slot; @@ -3209,8 +3268,10 @@ * Enforce the iTLB multihit workaround after capturing the requested * level, which will be used to do precise, accurate accounting. */ - fault->req_level = kvm_mmu_max_mapping_level(vcpu->kvm, slot, - fault->gfn, fault->max_level); + fault->req_level = __kvm_mmu_max_mapping_level(vcpu->kvm, slot, + fault->gfn, fault->max_level, + fault->host_level, + kvm_is_faultin_private(fault)); if (fault->req_level == PG_LEVEL_4K || fault->huge_page_disallowed) return; @@ -3349,9 +3410,17 @@ return RET_PF_CONTINUE; } -static bool page_fault_can_be_fast(struct kvm_page_fault *fault) +static bool page_fault_can_be_fast(struct kvm *kvm, struct kvm_page_fault *fault) { /* + * TDX private mapping doesn't support fast page fault because the EPT + * entry is read/written with TDX SEAMCALLs instead of direct memory + * access. + */ + if (kvm_is_private_gpa(kvm, fault->addr)) + return false; + + /* * Page faults with reserved bits set, i.e. faults on MMIO SPTEs, only * reach the common page fault handler if the SPTE has an invalid MMIO * generation number. Refreshing the MMIO generation needs to go down @@ -3460,7 +3529,7 @@ u64 *sptep = NULL; uint retry_count = 0; - if (!page_fault_can_be_fast(fault)) + if (!page_fault_can_be_fast(vcpu->kvm, fault)) return ret; walk_shadow_page_lockless_begin(vcpu); @@ -3716,7 +3785,12 @@ goto out_unlock; if (tdp_mmu_enabled) { - root = kvm_tdp_mmu_get_vcpu_root_hpa(vcpu); + if (kvm_gfn_shared_mask(vcpu->kvm) && + !VALID_PAGE(mmu->private_root_hpa)) { + root = kvm_tdp_mmu_get_vcpu_root_hpa(vcpu, true); + mmu->private_root_hpa = root; + } + root = kvm_tdp_mmu_get_vcpu_root_hpa(vcpu, false); mmu->root.hpa = root; } else if (shadow_root_level >= PT64_ROOT_4LEVEL) { root = mmu_alloc_root(vcpu, 0, 0, shadow_root_level); @@ -3776,7 +3850,7 @@ kvm_page_track_write_tracking_enabled(kvm)) goto out_success; - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { slots = __kvm_memslots(kvm, i); kvm_for_each_memslot(slot, bkt, slots) { /* @@ -3810,6 +3884,66 @@ return r; } +int kvm_mmu_move_private_pages_from(struct kvm_vcpu *vcpu, + struct kvm_vcpu *src_vcpu) +{ + struct kvm_mmu *mmu = vcpu->arch.mmu; + struct kvm_mmu *src_mmu = src_vcpu->arch.mmu; + gfn_t gfn_shared = kvm_gfn_shared_mask(vcpu->kvm); + hpa_t private_root_hpa, shared_root_hpa; + int r = -EINVAL; + + // Hold locks for both src and dst. Always take the src lock first. + write_lock(&src_vcpu->kvm->mmu_lock); + write_lock(&vcpu->kvm->mmu_lock); + + if (!gfn_shared) + goto out_unlock; + + WARN_ON_ONCE(!is_tdp_mmu_active(vcpu)); + WARN_ON_ONCE(!is_tdp_mmu_active(src_vcpu)); + + r = mmu_topup_memory_caches(vcpu, !vcpu->arch.mmu->root_role.direct); + if (r) + goto out_unlock; + + /* + * The private root is moved from the src to the dst and is marked as + * invalid in the src. + */ + private_root_hpa = kvm_tdp_mmu_move_private_pages_from(vcpu, src_vcpu); + if (private_root_hpa == INVALID_PAGE) { + /* + * This likely means that the private root was already moved by + * another vCPU. + */ + private_root_hpa = kvm_tdp_mmu_get_vcpu_root_hpa_no_alloc(vcpu, true); + if (private_root_hpa == INVALID_PAGE) { + r = -EINVAL; + goto out_unlock; + } + } + + mmu->private_root_hpa = private_root_hpa; + src_mmu->private_root_hpa = INVALID_PAGE; + + /* + * The shared root is allocated normally and is not moved from the src. + */ + shared_root_hpa = kvm_tdp_mmu_get_vcpu_root_hpa(vcpu, false); + mmu->root.hpa = shared_root_hpa; + + kvm_mmu_load_pgd(vcpu); + static_call(kvm_x86_flush_tlb_current)(vcpu); + +out_unlock: + write_unlock(&vcpu->kvm->mmu_lock); + write_unlock(&src_vcpu->kvm->mmu_lock); + + return r; +} +EXPORT_SYMBOL(kvm_mmu_move_private_pages_from); + static int mmu_alloc_shadow_roots(struct kvm_vcpu *vcpu) { struct kvm_mmu *mmu = vcpu->arch.mmu; @@ -4197,7 +4331,7 @@ if (WARN_ON(reserved)) return -EINVAL; - if (is_mmio_spte(spte)) { + if (is_mmio_spte(vcpu->kvm, spte)) { gfn_t gfn = get_mmio_spte_gfn(spte); unsigned int access = get_mmio_spte_access(spte); @@ -4260,18 +4394,19 @@ return (vcpu->arch.apf.id++ << 12) | vcpu->vcpu_id; } -static bool kvm_arch_setup_async_pf(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, - gfn_t gfn) +static bool kvm_arch_setup_async_pf(struct kvm_vcpu *vcpu, + struct kvm_page_fault *fault) { struct kvm_arch_async_pf arch; arch.token = alloc_apf_token(vcpu); - arch.gfn = gfn; + arch.gfn = fault->gfn; arch.direct_map = vcpu->arch.mmu->root_role.direct; arch.cr3 = kvm_mmu_get_guest_pgd(vcpu, vcpu->arch.mmu); + arch.error_code = fault->error_code & PFERR_GUEST_ENC_MASK; - return kvm_setup_async_pf(vcpu, cr2_or_gpa, - kvm_vcpu_gfn_to_hva(vcpu, gfn), &arch); + return kvm_setup_async_pf(vcpu, fault->addr, + kvm_vcpu_gfn_to_hva(vcpu, fault->gfn), &arch); } void kvm_arch_async_page_ready(struct kvm_vcpu *vcpu, struct kvm_async_pf *work) @@ -4290,7 +4425,63 @@ work->arch.cr3 != kvm_mmu_get_guest_pgd(vcpu, vcpu->arch.mmu)) return; - kvm_mmu_do_page_fault(vcpu, work->cr2_or_gpa, 0, true, NULL); + kvm_mmu_do_page_fault(vcpu, work->cr2_or_gpa, work->arch.error_code, + true, NULL); +} + +static inline u8 kvm_max_level_for_order(int order) +{ + BUILD_BUG_ON(KVM_MAX_HUGEPAGE_LEVEL > PG_LEVEL_1G); + + MMU_WARN_ON(order != KVM_HPAGE_GFN_SHIFT(PG_LEVEL_1G) && + order != KVM_HPAGE_GFN_SHIFT(PG_LEVEL_2M) && + order != KVM_HPAGE_GFN_SHIFT(PG_LEVEL_4K)); + + if (order >= KVM_HPAGE_GFN_SHIFT(PG_LEVEL_1G)) + return PG_LEVEL_1G; + + if (order >= KVM_HPAGE_GFN_SHIFT(PG_LEVEL_2M)) + return PG_LEVEL_2M; + + return PG_LEVEL_4K; +} + +static int kvm_do_memory_fault_exit(struct kvm_vcpu *vcpu, + struct kvm_page_fault *fault) +{ + vcpu->run->exit_reason = KVM_EXIT_MEMORY_FAULT; + if (fault->is_private) + vcpu->run->memory.flags = KVM_MEMORY_EXIT_FLAG_PRIVATE; + else + vcpu->run->memory.flags = 0; + vcpu->run->memory.gpa = fault->gfn << PAGE_SHIFT; + vcpu->run->memory.size = PAGE_SIZE; + return RET_PF_USER; +} + +static int kvm_faultin_pfn_private(struct kvm_vcpu *vcpu, + struct kvm_page_fault *fault) +{ + int max_order, r; + u8 max_level; + + r = kvm_gmem_get_pfn(vcpu->kvm, fault->slot, fault->gfn, &fault->pfn, + &max_order); + if (r) + return r; + + max_level = kvm_max_level_for_order(max_order); + r = static_call(kvm_x86_gmem_prepare)(vcpu->kvm, fault->slot, fault->pfn, + fault->gfn, &max_level); + if (r) { + kvm_release_pfn_clean(fault->pfn); + return r; + } + + fault->host_level = max_level; + fault->max_level = min(max_level, fault->max_level); + fault->map_writable = !(fault->slot->flags & KVM_MEM_READONLY); + return RET_PF_CONTINUE; } static int __kvm_faultin_pfn(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault) @@ -4325,6 +4516,24 @@ return RET_PF_EMULATE; } + /* + * !fault->slot means MMIO. Don't require explicit GPA conversion for + * MMIO because MMIO is assigned at the boot time. + */ + if (fault->slot && + fault->is_private != kvm_mem_is_private(vcpu->kvm, fault->gfn)) { + if (vcpu->kvm->arch.vm_type == KVM_X86_SW_PROTECTED_VM) + return RET_PF_RETRY; + else + return kvm_do_memory_fault_exit(vcpu, fault); + } + + if (kvm_is_faultin_private(fault)) + return kvm_faultin_pfn_private(vcpu, fault); + + if (fault->is_private && !kvm_slot_can_be_private(fault->slot)) + return kvm_do_memory_fault_exit(vcpu, fault); + async = false; fault->pfn = __gfn_to_pfn_memslot(slot, fault->gfn, false, false, &async, fault->write, &fault->map_writable, @@ -4338,7 +4547,7 @@ trace_kvm_async_pf_repeated_fault(fault->addr, fault->gfn); kvm_make_request(KVM_REQ_APF_HALT, vcpu); return RET_PF_RETRY; - } else if (kvm_arch_setup_async_pf(vcpu, fault->addr, fault->gfn)) { + } else if (kvm_arch_setup_async_pf(vcpu, fault)) { return RET_PF_RETRY; } } @@ -4400,7 +4609,7 @@ return true; return fault->slot && - mmu_invalidate_retry_hva(vcpu->kvm, fault->mmu_seq, fault->hva); + mmu_invalidate_retry_gfn(vcpu->kvm, fault->mmu_seq, fault->gfn); } static int direct_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault) @@ -4417,11 +4626,22 @@ r = mmu_topup_memory_caches(vcpu, false); if (r) return r; + if (fault->is_private) { + r = kvm_mmu_topup_memory_cache_for_split(vcpu->kvm); + if (r) + return r; + } r = kvm_faultin_pfn(vcpu, fault, ACC_ALL); if (r != RET_PF_CONTINUE) return r; + if (fault->slot && fault->is_private) { + int i; + + for (i = 0; i < KVM_PAGES_PER_HPAGE(fault->max_level); i++) + kvm_mmu_split_direct_map(pfn_to_page(fault->pfn + i)); + } r = RET_PF_RETRY; write_lock(&vcpu->kvm->mmu_lock); @@ -4443,7 +4663,7 @@ static int nonpaging_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault) { - pgprintk("%s: gva %lx error %x\n", __func__, fault->addr, fault->error_code); + pgprintk("%s: gva %llx error %llx\n", __func__, fault->addr, fault->error_code); /* This path builds a PAE pagetable, we can map 2mb pages at maximum. */ fault->max_level = PG_LEVEL_2M; @@ -4521,6 +4741,11 @@ int kvm_tdp_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault) { + u8 err_level = (fault->error_code & PFERR_LEVEL_MASK) >> PFERR_LEVEL_START_BIT; + + if (err_level) + fault->max_level = min(fault->max_level, err_level); + /* * If the guest's MTRRs may be used to compute the "real" memtype, * restrict the mapping level to ensure KVM uses a consistent memtype @@ -4536,7 +4761,7 @@ if (shadow_memtype_mask && kvm_arch_has_noncoherent_dma(vcpu->kvm)) { for ( ; fault->max_level > PG_LEVEL_4K; --fault->max_level) { int page_num = KVM_PAGES_PER_HPAGE(fault->max_level); - gfn_t base = gfn_round_for_level(fault->gfn, + gfn_t base = gfn_round_for_level(gpa_to_gfn(fault->addr), fault->max_level); if (kvm_mtrr_check_gfn_range_consistency(vcpu, base, page_num)) @@ -4552,6 +4777,64 @@ return direct_page_fault(vcpu, fault); } +int kvm_mmu_map_tdp_page(struct kvm_vcpu *vcpu, gpa_t gpa, u64 error_code, + int max_level) +{ + int r; + struct kvm_page_fault fault = (struct kvm_page_fault) { + .addr = gpa, + .error_code = error_code, + .exec = error_code & PFERR_FETCH_MASK, + .write = error_code & PFERR_WRITE_MASK, + .present = error_code & PFERR_PRESENT_MASK, + .rsvd = error_code & PFERR_RSVD_MASK, + .user = error_code & PFERR_USER_MASK, + .prefetch = false, + .is_tdp = true, + .is_private = error_code & PFERR_GUEST_ENC_MASK, + .nx_huge_page_workaround_enabled = is_nx_huge_page_enabled(vcpu->kvm), + }; + + WARN_ON_ONCE(!vcpu->arch.mmu->root_role.direct); + fault.gfn = gpa_to_gfn(fault.addr) & ~kvm_gfn_shared_mask(vcpu->kvm); + fault.slot = kvm_vcpu_gfn_to_memslot(vcpu, fault.gfn); + + r = mmu_topup_memory_caches(vcpu, false); + if (r) + return r; + + fault.max_level = max_level; + fault.req_level = PG_LEVEL_4K; + fault.goal_level = PG_LEVEL_4K; + +#ifdef CONFIG_X86_64 + if (tdp_mmu_enabled) + r = kvm_tdp_mmu_page_fault(vcpu, &fault); + else +#endif + r = direct_page_fault(vcpu, &fault); + + if (is_error_noslot_pfn(fault.pfn) || vcpu->kvm->vm_bugged) + return -EFAULT; + + switch (r) { + case RET_PF_RETRY: + return -EAGAIN; + + case RET_PF_FIXED: + case RET_PF_SPURIOUS: + return 0; + + case RET_PF_CONTINUE: + case RET_PF_EMULATE: + case RET_PF_INVALID: + case RET_PF_USER: + default: + return -EIO; + } +} +EXPORT_SYMBOL_GPL(kvm_mmu_map_tdp_page); + static void nonpaging_init_context(struct kvm_mmu *context) { context->page_fault = nonpaging_page_fault; @@ -4693,7 +4976,7 @@ static bool sync_mmio_spte(struct kvm_vcpu *vcpu, u64 *sptep, gfn_t gfn, unsigned int access) { - if (unlikely(is_mmio_spte(*sptep))) { + if (unlikely(is_mmio_spte(vcpu->kvm, *sptep))) { if (gfn != get_mmio_spte_gfn(*sptep)) { mmu_spte_clear_no_track(sptep); return true; @@ -5525,6 +5808,7 @@ out: return r; } +EXPORT_SYMBOL(kvm_mmu_load); void kvm_mmu_unload(struct kvm_vcpu *vcpu) { @@ -5742,9 +6026,28 @@ int r, emulation_type = EMULTYPE_PF; bool direct = vcpu->arch.mmu->root_role.direct; + /* + * IMPLICIT_ACCESS is a KVM-defined flag used to correctly perform SMAP + * checks when emulating instructions that triggers implicit access. + * WARN if hardware generates a fault with an error code that collides + * with the KVM-defined value. Clear the flag and continue on, i.e. + * don't terminate the VM, as KVM can't possibly be relying on a flag + * that KVM doesn't know about. + */ + if (WARN_ON_ONCE(error_code & PFERR_IMPLICIT_ACCESS)) + error_code &= ~PFERR_IMPLICIT_ACCESS; + if (WARN_ON(!VALID_PAGE(vcpu->arch.mmu->root.hpa))) return RET_PF_RETRY; + /* + * This is racy with updating memory attributes with mmu_seq. If we + * hit a race, it would result in retrying page fault. + */ + if (vcpu->kvm->arch.vm_type == KVM_X86_SW_PROTECTED_VM && + kvm_mem_is_private(vcpu->kvm, gpa_to_gfn(cr2_or_gpa))) + error_code |= PFERR_GUEST_ENC_MASK; + r = RET_PF_INVALID; if (unlikely(error_code & PFERR_RSVD_MASK)) { r = handle_mmio_page_fault(vcpu, cr2_or_gpa, direct); @@ -5753,13 +6056,15 @@ } if (r == RET_PF_INVALID) { - r = kvm_mmu_do_page_fault(vcpu, cr2_or_gpa, - lower_32_bits(error_code), false, + r = kvm_mmu_do_page_fault(vcpu, cr2_or_gpa, error_code, false, &emulation_type); if (KVM_BUG_ON(r == RET_PF_INVALID, vcpu->kvm)) return -EIO; } + if (r == RET_PF_USER) + return 0; + if (r < 0) return r; if (r != RET_PF_EMULATE) @@ -6002,6 +6307,7 @@ mmu->root.hpa = INVALID_PAGE; mmu->root.pgd = 0; + mmu->private_root_hpa = INVALID_PAGE; for (i = 0; i < KVM_MMU_NUM_PREV_ROOTS; i++) mmu->prev_roots[i] = KVM_MMU_ROOT_INFO_INVALID; @@ -6058,7 +6364,16 @@ vcpu->arch.mmu_page_header_cache.kmem_cache = mmu_page_header_cache; vcpu->arch.mmu_page_header_cache.gfp_zero = __GFP_ZERO; - vcpu->arch.mmu_shadow_page_cache.gfp_zero = __GFP_ZERO; + /* + * When X86_64, initial SEPT entries are initialized with + * SHADOW_NONPRESENT_VALUE. Otherwise zeroed. See + * mmu_memory_cache_alloc_obj(). + */ + if (IS_ENABLED(CONFIG_X86_64)) + vcpu->arch.mmu_shadow_page_cache.init_value = + SHADOW_NONPRESENT_VALUE; + if (!vcpu->arch.mmu_shadow_page_cache.init_value) + vcpu->arch.mmu_shadow_page_cache.gfp_zero = __GFP_ZERO; vcpu->arch.mmu = &vcpu->arch.root_mmu; vcpu->arch.walk_mmu = &vcpu->arch.root_mmu; @@ -6166,7 +6481,7 @@ * e.g. before kvm_zap_obsolete_pages() could drop mmu_lock and yield. */ if (tdp_mmu_enabled) - kvm_tdp_mmu_invalidate_all_roots(kvm); + kvm_tdp_mmu_invalidate_all_roots(kvm, true); /* * Notify all vcpus to reload its shadow page table and flush TLB. @@ -6199,28 +6514,71 @@ return unlikely(!list_empty_careful(&kvm->arch.zapped_obsolete_pages)); } +static void kvm_mmu_zap_memslot(struct kvm *kvm, struct kvm_memory_slot *slot) +{ + bool flush = false; + + write_lock(&kvm->mmu_lock); + + /* + * Zapping non-leaf SPTEs, a.k.a. not-last SPTEs, isn't required, worst + * case scenario we'll have unused shadow pages lying around until they + * are recycled due to age or when the VM is destroyed. + */ + if (tdp_mmu_enabled) { + struct kvm_gfn_range range = { + .slot = slot, + .start = slot->base_gfn, + .end = slot->base_gfn + slot->npages, + .may_block = true, + + /* + * This handles both private gfn and shared gfn. + * All private page should be zapped on memslot deletion. + */ + .only_private = true, + .only_shared = true, + }; + + flush = kvm_tdp_mmu_unmap_gfn_range(kvm, &range, flush); + } else { + /* TDX supports only TDP-MMU case. */ + WARN_ON_ONCE(1); + flush = true; + } + if (flush) + kvm_flush_remote_tlbs(kvm); + + write_unlock(&kvm->mmu_lock); +} + static void kvm_mmu_invalidate_zap_pages_in_memslot(struct kvm *kvm, struct kvm_memory_slot *slot, struct kvm_page_track_notifier_node *node) { - kvm_mmu_zap_all_fast(kvm); + if (kvm_gfn_shared_mask(kvm)) + /* + * Secure-EPT requires to release PTs from the leaf. The + * optimization to zap root PT first with child PT doesn't + * work. + */ + kvm_mmu_zap_memslot(kvm, slot); + else + kvm_mmu_zap_all_fast(kvm); } -int kvm_mmu_init_vm(struct kvm *kvm) +void kvm_mmu_init_vm(struct kvm *kvm) { struct kvm_page_track_notifier_node *node = &kvm->arch.mmu_sp_tracker; - int r; + kvm->arch.shadow_mmio_value = shadow_mmio_value; INIT_LIST_HEAD(&kvm->arch.active_mmu_pages); INIT_LIST_HEAD(&kvm->arch.zapped_obsolete_pages); INIT_LIST_HEAD(&kvm->arch.possible_nx_huge_pages); spin_lock_init(&kvm->arch.mmu_unsync_pages_lock); - if (tdp_mmu_enabled) { - r = kvm_mmu_init_tdp_mmu(kvm); - if (r < 0) - return r; - } + if (tdp_mmu_enabled) + kvm_mmu_init_tdp_mmu(kvm); node->track_write = kvm_mmu_pte_write; node->track_flush_slot = kvm_mmu_invalidate_zap_pages_in_memslot; @@ -6234,7 +6592,7 @@ kvm->arch.split_desc_cache.kmem_cache = pte_list_desc_cache; kvm->arch.split_desc_cache.gfp_zero = __GFP_ZERO; - return 0; + kvm->arch.tdp_max_page_level = KVM_MAX_HUGEPAGE_LEVEL; } static void mmu_free_vm_memory_caches(struct kvm *kvm) @@ -6242,6 +6600,9 @@ kvm_mmu_free_memory_cache(&kvm->arch.split_desc_cache); kvm_mmu_free_memory_cache(&kvm->arch.split_page_header_cache); kvm_mmu_free_memory_cache(&kvm->arch.split_shadow_page_cache); +#ifdef CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + kvm_mmu_free_memory_cache(&kvm->arch.private_spt_for_split_cache); +#endif } void kvm_mmu_uninit_vm(struct kvm *kvm) @@ -6268,7 +6629,7 @@ if (!kvm_memslots_have_rmaps(kvm)) return flush; - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { slots = __kvm_memslots(kvm, i); kvm_for_each_memslot_in_gfn_range(&iter, slots, gfn_start, gfn_end) { @@ -6301,20 +6662,32 @@ write_lock(&kvm->mmu_lock); - kvm_mmu_invalidate_begin(kvm, 0, -1ul); + kvm_mmu_invalidate_begin(kvm); + + kvm_mmu_invalidate_range_add(kvm, gfn_start, gfn_end); flush = kvm_rmap_zap_gfn_range(kvm, gfn_start, gfn_end); if (tdp_mmu_enabled) { - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) + /* + * zap_private = true. Zap both private/shared pages. + * + * kvm_zap_gfn_range() is used when MTRR or PAT memory + * type was changed. Later on the next kvm page fault, + * populate it with updated spte entry. + * Because only WB is supported for private pages, don't + * care of private pages. + */ flush = kvm_tdp_mmu_zap_leafs(kvm, i, gfn_start, - gfn_end, true, flush); + gfn_end, true, flush, + false); } if (flush) kvm_flush_remote_tlbs_range(kvm, gfn_start, gfn_end - gfn_start); - kvm_mmu_invalidate_end(kvm, 0, -1ul); + kvm_mmu_invalidate_end(kvm); write_unlock(&kvm->mmu_lock); } @@ -6637,6 +7010,9 @@ for_each_rmap_spte(rmap_head, &iter, sptep) { sp = sptep_to_sp(sptep); + /* Private page dirty logging is not supported yet. */ + KVM_BUG_ON(is_private_sptep(sptep), kvm); + /* * We cannot do huge page mapping for indirect shadow pages, * which are found on the last rmap (level = 1) when not using @@ -6646,7 +7022,7 @@ */ if (sp->role.direct && sp->role.level < kvm_mmu_max_mapping_level(kvm, slot, sp->gfn, - PG_LEVEL_NUM)) { + PG_LEVEL_NUM, false)) { kvm_zap_one_rmap_spte(kvm, rmap_head, sptep); if (kvm_available_flush_remote_tlbs_range()) @@ -6660,6 +7036,7 @@ return need_tlb_flush; } +EXPORT_SYMBOL_GPL(kvm_zap_gfn_range); static void kvm_rmap_zap_collapsible_sptes(struct kvm *kvm, const struct kvm_memory_slot *slot) @@ -6770,7 +7147,7 @@ * modifier prior to checking for a wrap of the MMIO generation so * that a wrap in any address space is detected. */ - gen &= ~((u64)KVM_ADDRESS_SPACE_NUM - 1); + gen &= ~((u64)kvm_arch_nr_memslot_as_ids(kvm) - 1); /* * The very rare case: if the MMIO generation number has wrapped, @@ -7000,6 +7377,9 @@ void kvm_mmu_destroy(struct kvm_vcpu *vcpu) { kvm_mmu_unload(vcpu); + if (tdp_mmu_enabled) + mmu_free_root_page(vcpu->kvm, &vcpu->arch.mmu->private_root_hpa, + NULL); free_mmu_pages(&vcpu->arch.root_mmu); free_mmu_pages(&vcpu->arch.guest_mmu); mmu_free_memory_caches(vcpu); @@ -7221,3 +7601,173 @@ if (kvm->arch.nx_huge_page_recovery_thread) kthread_stop(kvm->arch.nx_huge_page_recovery_thread); } + +#ifdef CONFIG_KVM_GENERIC_MEMORY_ATTRIBUTES +bool kvm_hugepage_test_mixed(struct kvm_memory_slot *slot, gfn_t gfn, + int level) +{ + return lpage_info_slot(gfn, slot, level)->disallow_lpage & KVM_LPAGE_MIXED_FLAG; +} + +static void hugepage_clear_mixed(struct kvm_memory_slot *slot, gfn_t gfn, + int level) +{ + lpage_info_slot(gfn, slot, level)->disallow_lpage &= ~KVM_LPAGE_MIXED_FLAG; +} + +static void hugepage_set_mixed(struct kvm_memory_slot *slot, gfn_t gfn, + int level) +{ + lpage_info_slot(gfn, slot, level)->disallow_lpage |= KVM_LPAGE_MIXED_FLAG; +} + +static bool range_has_attrs(struct kvm *kvm, gfn_t start, gfn_t end, + unsigned long attrs) +{ + XA_STATE(xas, &kvm->mem_attr_array, start); + unsigned long index; + bool has_attrs; + void *entry; + + rcu_read_lock(); + + if (!attrs) { + has_attrs = !xas_find(&xas, end); + goto out; + } + + has_attrs = true; + for (index = start; index < end; index++) { + do { + entry = xas_next(&xas); + } while (xas_retry(&xas, entry)); + + if (xas.xa_index != index || xa_to_value(entry) != attrs) { + has_attrs = false; + break; + } + } + +out: + rcu_read_unlock(); + return has_attrs; +} + +static bool hugepage_has_attrs(struct kvm *kvm, struct kvm_memory_slot *slot, + gfn_t gfn, int level, unsigned long attrs) +{ + const unsigned long start = gfn; + const unsigned long end = start + KVM_PAGES_PER_HPAGE(level); + + if (level == PG_LEVEL_2M) + return range_has_attrs(kvm, start, end, attrs); + + for (gfn = start; gfn < end; gfn += KVM_PAGES_PER_HPAGE(level - 1)) { + if (kvm_hugepage_test_mixed(slot, gfn, level - 1) || + attrs != kvm_get_memory_attributes(kvm, gfn)) + return false; + } + return true; +} + +bool kvm_arch_post_set_memory_attributes(struct kvm *kvm, + struct kvm_gfn_range *range) +{ + unsigned long attrs = range->arg.attributes; + struct kvm_memory_slot *slot = range->slot; + int level; + + lockdep_assert_held_write(&kvm->mmu_lock); + lockdep_assert_held(&kvm->slots_lock); + + /* + * KVM x86 currently only supports KVM_MEMORY_ATTRIBUTE_PRIVATE, skip + * the slot if the slot will never consume the PRIVATE attribute. + */ + if (!kvm_slot_can_be_private(slot)) + return false; + + /* + * The sequence matters here: upper levels consume the result of lower + * level's scanning. + */ + for (level = PG_LEVEL_2M; level <= KVM_MAX_HUGEPAGE_LEVEL; level++) { + gfn_t nr_pages = KVM_PAGES_PER_HPAGE(level); + gfn_t gfn = gfn_round_for_level(range->start, level); + + /* Process the head page if it straddles the range. */ + if (gfn != range->start || gfn + nr_pages > range->end) { + /* + * Skip mixed tracking if the aligned gfn isn't covered + * by the memslot, KVM can't use a hugepage due to the + * misaligned address regardless of memory attributes. + */ + if (gfn >= slot->base_gfn) { + if (hugepage_has_attrs(kvm, slot, gfn, level, attrs)) + hugepage_clear_mixed(slot, gfn, level); + else + hugepage_set_mixed(slot, gfn, level); + } + gfn += nr_pages; + } + + /* + * Pages entirely covered by the range are guaranteed to have + * only the attributes which were just set. + */ + for ( ; gfn + nr_pages <= range->end; gfn += nr_pages) + hugepage_clear_mixed(slot, gfn, level); + + /* + * Process the last tail page if it straddles the range and is + * contained by the memslot. Like the head page, KVM can't + * create a hugepage if the slot size is misaligned. + */ + if (gfn < range->end && + (gfn + nr_pages) <= (slot->base_gfn + slot->npages)) { + if (hugepage_has_attrs(kvm, slot, gfn, level, attrs)) + hugepage_clear_mixed(slot, gfn, level); + else + hugepage_set_mixed(slot, gfn, level); + } + } + return false; +} + +void kvm_mmu_init_memslot_memory_attributes(struct kvm *kvm, + struct kvm_memory_slot *slot) +{ + int level; + + if (!kvm_slot_can_be_private(slot)) + return; + + for (level = PG_LEVEL_2M; level <= KVM_MAX_HUGEPAGE_LEVEL; level++) { + /* + * Don't bother tracking mixed attributes for pages that can't + * be huge due to alignment, i.e. process only pages that are + * entirely contained by the memslot. + */ + gfn_t end = gfn_round_for_level(slot->base_gfn + slot->npages, level); + gfn_t start = gfn_round_for_level(slot->base_gfn, level); + gfn_t nr_pages = KVM_PAGES_PER_HPAGE(level); + gfn_t gfn; + + if (start < slot->base_gfn) + start += nr_pages; + + /* + * Unlike setting attributes, every potential hugepage needs to + * be manually checked as the attributes may already be mixed. + */ + for (gfn = start; gfn < end; gfn += nr_pages) { + unsigned long attrs = kvm_get_memory_attributes(kvm, gfn); + + if (hugepage_has_attrs(kvm, slot, gfn, level, attrs)) + hugepage_clear_mixed(slot, gfn, level); + else + hugepage_set_mixed(slot, gfn, level); + } + } +} +#endif --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/mmu_internal.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/mmu_internal.h @@ -6,6 +6,8 @@ #include #include +#include "mmu.h" + #undef MMU_DEBUG #ifdef MMU_DEBUG @@ -56,7 +58,12 @@ bool tdp_mmu_page; bool unsync; - u8 mmu_valid_gen; + union { + u8 mmu_valid_gen; + + /* Only accessed under slots_lock. */ + bool tdp_mmu_scheduled_root_to_zap; + }; /* * The shadow page can't be replaced by an equivalent huge page @@ -93,18 +100,28 @@ int root_count; refcount_t tdp_mmu_root_count; }; - unsigned int unsync_children; union { - struct kvm_rmap_head parent_ptes; /* rmap pointers to parent sptes */ - tdp_ptep_t ptep; - }; - union { - DECLARE_BITMAP(unsync_child_bitmap, 512); struct { - struct work_struct tdp_mmu_async_work; - void *tdp_mmu_async_data; + unsigned int unsync_children; + /* + * Number of writes since the last time traversal + * visited this page. + */ + atomic_t write_flooding_count; }; +#ifdef CONFIG_KVM_MMU_PRIVATE + /* + * Associated private shadow page table, e.g. Secure-EPT page + * passed to the TDX module. + */ + void *private_spt; +#endif }; + union { + struct kvm_rmap_head parent_ptes; /* rmap pointers to parent sptes */ + tdp_ptep_t ptep; + }; + DECLARE_BITMAP(unsync_child_bitmap, 512); /* * Tracks shadow pages that, if zapped, would allow KVM to create an NX @@ -122,9 +139,6 @@ int clear_spte_count; #endif - /* Number of writes since the last time traversal visited this page. */ - atomic_t write_flooding_count; - #ifdef CONFIG_X86_64 /* Used for freeing the page asynchronously if it is a TDP MMU page. */ struct rcu_head rcu_head; @@ -143,6 +157,128 @@ return kvm_mmu_role_as_id(sp->role); } +static inline bool is_private_sp(const struct kvm_mmu_page *sp) +{ + return kvm_mmu_page_role_is_private(sp->role); +} + +#ifdef CONFIG_KVM_MMU_PRIVATE +static inline void *kvm_mmu_private_spt(struct kvm_mmu_page *sp) +{ + return sp->private_spt; +} + +static inline void kvm_mmu_init_private_spt(struct kvm_mmu_page *sp, void *private_spt) +{ + sp->private_spt = private_spt; +} + +static inline void kvm_mmu_alloc_private_spt(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp) +{ + bool is_root = vcpu->arch.root_mmu.root_role.level == sp->role.level; + + KVM_BUG_ON(!kvm_mmu_page_role_is_private(sp->role), vcpu->kvm); + if (is_root) + /* + * Because TDX module assigns root Secure-EPT page and set it to + * Secure-EPTP when TD vcpu is created, secure page table for + * root isn't needed. + */ + sp->private_spt = NULL; + else { + /* + * Because the TDX module doesn't trust VMM and initializes + * the pages itself, KVM doesn't initialize them. Allocate + * pages with garbage and give them to the TDX module. + */ + sp->private_spt = kvm_mmu_memory_cache_alloc(&vcpu->arch.mmu_private_spt_cache); + /* + * Because mmu_private_spt_cache is topped up before staring kvm + * page fault resolving, the allocation above shouldn't fail. + */ + WARN_ON_ONCE(!sp->private_spt); + } +} + +static inline int kvm_alloc_private_spt_for_split(struct kvm *kvm, struct kvm_mmu_page *sp, + gfp_t gfp, bool can_yield) +{ + gfp &= ~__GFP_ZERO; + +#ifdef CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + /* This check is hacky. See the caller, tdp_mmu_alloc_sp_for_split(). */ + if ((gfp & GFP_NOWAIT) && gfp != GFP_KERNEL_ACCOUNT) { + if (can_yield) + return -ENOMEM; + /* + * This is hack to avoid blocking. Unless memory is severely + * lacking, this works. Correct way is to pre-allocate + * potentially necessary memory for all the possible execution + * path with kvm->mmu_lock. + */ + while (!mutex_trylock(&kvm->arch.private_spt_for_split_lock)) + /* nothing */; + sp->private_spt = + kvm_mmu_memory_cache_alloc(&kvm->arch.private_spt_for_split_cache); + mutex_unlock(&kvm->arch.private_spt_for_split_lock); + if (WARN_ON_ONCE(!sp->private_spt)) + return -ENOMEM; + return 0; + } +#endif + + sp->private_spt = (void *)__get_free_page(gfp); + if (!sp->private_spt) + return -ENOMEM; + kvm_mmu_split_direct_map(virt_to_page(sp->private_spt)); + return 0; +} + +static inline void kvm_mmu_free_private_spt(struct kvm_mmu_page *sp) +{ + if (sp->private_spt) + free_page((unsigned long)sp->private_spt); +} + +static inline gfn_t kvm_gfn_for_root(struct kvm *kvm, struct kvm_mmu_page *root, + gfn_t gfn) +{ + if (is_private_sp(root)) + return kvm_gfn_to_private(kvm, gfn); + else + return kvm_gfn_to_shared(kvm, gfn); +} +#else +static inline void *kvm_mmu_private_spt(struct kvm_mmu_page *sp) +{ + return NULL; +} + +static inline void kvm_mmu_init_private_spt(struct kvm_mmu_page *sp, void *private_spt) +{ +} + +static inline void kvm_mmu_alloc_private_spt(struct kvm_vcpu *vcpu, struct kvm_mmu_page *sp) +{ +} + +static inline int kvm_alloc_private_spt_for_split(struct kvm *kvm, struct kvm_mmu_page *sp, + gfp_t gfp, bool can_yield) +{ + return -ENOMEM; +} + +static inline void kvm_mmu_free_private_spt(struct kvm_mmu_page *sp) +{ +} + +static inline gfn_t kvm_gfn_for_root(struct kvm *kvm, struct kvm_mmu_page *root, + gfn_t gfn) +{ + return gfn; +} +#endif + static inline bool kvm_mmu_page_ad_need_write_protect(struct kvm_mmu_page *sp) { /* @@ -191,7 +327,7 @@ struct kvm_page_fault { /* arguments to kvm_mmu_do_page_fault. */ const gpa_t addr; - const u32 error_code; + const u64 error_code; const bool prefetch; /* Derived from error_code. */ @@ -203,6 +339,7 @@ /* Derived from mmu and global state. */ const bool is_tdp; + const bool is_private; const bool nx_huge_page_workaround_enabled; /* @@ -247,6 +384,9 @@ * is changing its own translation in the guest page tables. */ bool write_fault_to_shadow_pgtable; + + /* valid only for private memslot && private gfn */ + enum pg_level host_level; }; int kvm_tdp_page_fault(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault); @@ -259,6 +399,7 @@ * RET_PF_RETRY: let CPU fault again on the address. * RET_PF_EMULATE: mmio page fault, emulate the instruction directly. * RET_PF_INVALID: the spte is invalid, let the real page fault path update it. + * RET_PF_USER: need to exit to userspace to handle this fault. * RET_PF_FIXED: The faulting entry has been fixed. * RET_PF_SPURIOUS: The faulting entry was already fixed, e.g. by another vCPU. * @@ -275,12 +416,13 @@ RET_PF_RETRY, RET_PF_EMULATE, RET_PF_INVALID, + RET_PF_USER, RET_PF_FIXED, RET_PF_SPURIOUS, }; static inline int kvm_mmu_do_page_fault(struct kvm_vcpu *vcpu, gpa_t cr2_or_gpa, - u32 err, bool prefetch, int *emulation_type) + u64 err, bool prefetch, int *emulation_type) { struct kvm_page_fault fault = { .addr = cr2_or_gpa, @@ -292,17 +434,18 @@ .user = err & PFERR_USER_MASK, .prefetch = prefetch, .is_tdp = likely(vcpu->arch.mmu->page_fault == kvm_tdp_page_fault), + .is_private = err & PFERR_GUEST_ENC_MASK, .nx_huge_page_workaround_enabled = is_nx_huge_page_enabled(vcpu->kvm), - .max_level = KVM_MAX_HUGEPAGE_LEVEL, + .max_level = vcpu->kvm->arch.tdp_max_page_level, .req_level = PG_LEVEL_4K, .goal_level = PG_LEVEL_4K, }; int r; if (vcpu->arch.mmu->root_role.direct) { - fault.gfn = fault.addr >> PAGE_SHIFT; + fault.gfn = gpa_to_gfn(fault.addr) & ~kvm_gfn_shared_mask(vcpu->kvm); fault.slot = kvm_vcpu_gfn_to_memslot(vcpu, fault.gfn); } @@ -340,7 +483,7 @@ int kvm_mmu_max_mapping_level(struct kvm *kvm, const struct kvm_memory_slot *slot, gfn_t gfn, - int max_level); + int max_level, bool faultin_private); void kvm_mmu_hugepage_adjust(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault); void disallowed_hugepage_adjust(struct kvm_page_fault *fault, u64 spte, int cur_level); @@ -349,4 +492,20 @@ void track_possible_nx_huge_page(struct kvm *kvm, struct kvm_mmu_page *sp); void untrack_possible_nx_huge_page(struct kvm *kvm, struct kvm_mmu_page *sp); +#ifdef CONFIG_KVM_GENERIC_MEMORY_ATTRIBUTES +bool kvm_hugepage_test_mixed(struct kvm_memory_slot *slot, gfn_t gfn, int level); +#else +static inline bool kvm_hugepage_test_mixed(struct kvm_memory_slot *slot, gfn_t gfn, int level) +{ + return false; +} +#endif + +static inline bool kvm_is_faultin_private(const struct kvm_page_fault *fault) +{ + if (IS_ENABLED(CONFIG_KVM_GENERIC_PRIVATE_MEM)) + return fault->is_private && kvm_slot_can_be_private(fault->slot); + return false; +} + #endif /* __KVM_X86_MMU_INTERNAL_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/mmutrace.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/mmutrace.h @@ -58,6 +58,7 @@ TRACE_DEFINE_ENUM(RET_PF_RETRY); TRACE_DEFINE_ENUM(RET_PF_EMULATE); TRACE_DEFINE_ENUM(RET_PF_INVALID); +TRACE_DEFINE_ENUM(RET_PF_USER); TRACE_DEFINE_ENUM(RET_PF_FIXED); TRACE_DEFINE_ENUM(RET_PF_SPURIOUS); @@ -260,7 +261,7 @@ TP_STRUCT__entry( __field(int, vcpu_id) __field(gpa_t, cr2_or_gpa) - __field(u32, error_code) + __field(u64, error_code) __field(u64 *, sptep) __field(u64, old_spte) __field(u64, new_spte) --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/page_track.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/page_track.c @@ -22,6 +22,9 @@ bool kvm_page_track_write_tracking_enabled(struct kvm *kvm) { + if (kvm->arch.vm_type == KVM_X86_TDX_VM) + return false; + return IS_ENABLED(CONFIG_KVM_EXTERNAL_WRITE_TRACKING) || !tdp_enabled || kvm_shadow_root_allocated(kvm); } --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/paging_tmpl.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/paging_tmpl.h @@ -758,7 +758,7 @@ struct guest_walker walker; int r; - pgprintk("%s: addr %lx err %x\n", __func__, fault->addr, fault->error_code); + pgprintk("%s: addr %llx err %llx\n", __func__, fault->addr, fault->error_code); WARN_ON_ONCE(fault->is_tdp); /* @@ -892,7 +892,7 @@ gpa_t pte_gpa; gfn_t gfn; - if (WARN_ON_ONCE(!sp->spt[i])) + if (WARN_ON_ONCE(sp->spt[i] == SHADOW_NONPRESENT_VALUE)) return 0; first_pte_gpa = FNAME(get_level1_sp_gpa)(sp); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/spte.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/spte.c @@ -74,10 +74,11 @@ u64 spte = generation_mmio_spte_mask(gen); u64 gpa = gfn << PAGE_SHIFT; - WARN_ON_ONCE(!shadow_mmio_value); + WARN_ON_ONCE(!vcpu->kvm->arch.shadow_mmio_value && + !kvm_gfn_shared_mask(vcpu->kvm)); access &= shadow_mmio_access_mask; - spte |= shadow_mmio_value | access; + spte |= vcpu->kvm->arch.shadow_mmio_value | access; spte |= gpa | shadow_nonpresent_or_rsvd_mask; spte |= (gpa & shadow_nonpresent_or_rsvd_mask) << SHADOW_NONPRESENT_OR_RSVD_MASK_LEN; @@ -278,7 +279,8 @@ { u64 child_spte; - if (WARN_ON_ONCE(!is_shadow_present_pte(huge_spte))) + if (WARN_ON_ONCE(!is_shadow_present_pte(huge_spte) && + !is_private_zapped_spte(huge_spte))) return 0; if (WARN_ON_ONCE(!is_large_pte(huge_spte))) @@ -413,6 +415,12 @@ } EXPORT_SYMBOL_GPL(kvm_mmu_set_mmio_spte_mask); +void kvm_mmu_set_mmio_spte_value(struct kvm *kvm, u64 mmio_value) +{ + kvm->arch.shadow_mmio_value = mmio_value; +} +EXPORT_SYMBOL_GPL(kvm_mmu_set_mmio_spte_value); + void kvm_mmu_set_me_spte_mask(u64 me_value, u64 me_mask) { /* shadow_me_value must be a subset of shadow_me_mask */ @@ -431,7 +439,9 @@ shadow_dirty_mask = has_ad_bits ? VMX_EPT_DIRTY_BIT : 0ull; shadow_nx_mask = 0ull; shadow_x_mask = VMX_EPT_EXECUTABLE_MASK; - shadow_present_mask = has_exec_only ? 0ull : VMX_EPT_READABLE_MASK; + /* VMX_EPT_SUPPRESS_VE_BIT is needed for W or X violation. */ + shadow_present_mask = + (has_exec_only ? 0ull : VMX_EPT_READABLE_MASK) | VMX_EPT_SUPPRESS_VE_BIT; /* * EPT overrides the host MTRRs, and so KVM must program the desired * memtype directly into the SPTEs. Note, this mask is just the mask @@ -448,7 +458,7 @@ * of an EPT paging-structure entry is 110b (write/execute). */ kvm_mmu_set_mmio_spte_mask(VMX_EPT_MISCONFIG_WX_VALUE, - VMX_EPT_RWX_MASK, 0); + VMX_EPT_RWX_MASK | VMX_EPT_SUPPRESS_VE_BIT, 0); } EXPORT_SYMBOL_GPL(kvm_mmu_set_ept_masks); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/spte.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/spte.h @@ -14,6 +14,9 @@ */ #define SPTE_MMU_PRESENT_MASK BIT_ULL(11) +/* Masks that used to track metadata for not-present SPTEs. */ +#define SPTE_PRIVATE_ZAPPED BIT_ULL(62) + /* * TDP SPTES (more specifically, EPT SPTEs) may not have A/D bits, and may also * be restricted to using write-protection (for L2 when CPU dirty logging, i.e. @@ -96,11 +99,11 @@ #undef SHADOW_ACC_TRACK_SAVED_MASK /* - * Due to limited space in PTEs, the MMIO generation is a 19 bit subset of + * Due to limited space in PTEs, the MMIO generation is a 18 bit subset of * the memslots generation and is derived as follows: * * Bits 0-7 of the MMIO generation are propagated to spte bits 3-10 - * Bits 8-18 of the MMIO generation are propagated to spte bits 52-62 + * Bits 8-17 of the MMIO generation are propagated to spte bits 52-61 * * The KVM_MEMSLOT_GEN_UPDATE_IN_PROGRESS flag is intentionally not included in * the MMIO generation number, as doing so would require stealing a bit from @@ -114,7 +117,7 @@ #define MMIO_SPTE_GEN_LOW_END 10 #define MMIO_SPTE_GEN_HIGH_START 52 -#define MMIO_SPTE_GEN_HIGH_END 62 +#define MMIO_SPTE_GEN_HIGH_END 61 #define MMIO_SPTE_GEN_LOW_MASK GENMASK_ULL(MMIO_SPTE_GEN_LOW_END, \ MMIO_SPTE_GEN_LOW_START) @@ -141,13 +144,28 @@ #define MMIO_SPTE_GEN_HIGH_BITS (MMIO_SPTE_GEN_HIGH_END - MMIO_SPTE_GEN_HIGH_START + 1) /* remember to adjust the comment above as well if you change these */ -static_assert(MMIO_SPTE_GEN_LOW_BITS == 8 && MMIO_SPTE_GEN_HIGH_BITS == 11); +static_assert(MMIO_SPTE_GEN_LOW_BITS == 8 && MMIO_SPTE_GEN_HIGH_BITS == 10); #define MMIO_SPTE_GEN_LOW_SHIFT (MMIO_SPTE_GEN_LOW_START - 0) #define MMIO_SPTE_GEN_HIGH_SHIFT (MMIO_SPTE_GEN_HIGH_START - MMIO_SPTE_GEN_LOW_BITS) #define MMIO_SPTE_GEN_MASK GENMASK_ULL(MMIO_SPTE_GEN_LOW_BITS + MMIO_SPTE_GEN_HIGH_BITS - 1, 0) +/* + * Non-present SPTE value for both VMX and SVM for TDP MMU. + * For SVM NPT, for non-present spte (bit 0 = 0), other bits are ignored. + * For VMX EPT, bit 63 is ignored if #VE is disabled. (EPT_VIOLATION_VE=0) + * bit 63 is #VE suppress if #VE is enabled. (EPT_VIOLATION_VE=1) + * For TDX: + * TDX module sets EPT_VIOLATION_VE for Secure-EPT and conventional EPT + */ +#ifdef CONFIG_X86_64 +#define SHADOW_NONPRESENT_VALUE BIT_ULL(63) +static_assert(!(SHADOW_NONPRESENT_VALUE & SPTE_MMU_PRESENT_MASK)); +#else +#define SHADOW_NONPRESENT_VALUE 0ULL +#endif + extern u64 __read_mostly shadow_host_writable_mask; extern u64 __read_mostly shadow_mmu_writable_mask; extern u64 __read_mostly shadow_nx_mask; @@ -193,10 +211,14 @@ * * Only used by the TDP MMU. */ -#define REMOVED_SPTE 0x5a0ULL +#define REMOVED_SPTE (SHADOW_NONPRESENT_VALUE | 0x5a0ULL) -/* Removed SPTEs must not be misconstrued as shadow present PTEs. */ +/* + * Removed SPTEs must not be misconstrued as shadow present PTEs, and + * temporarily blocked private PTEs. + */ static_assert(!(REMOVED_SPTE & SPTE_MMU_PRESENT_MASK)); +static_assert(!(REMOVED_SPTE & SPTE_PRIVATE_ZAPPED)); static inline bool is_removed_spte(u64 spte) { @@ -236,9 +258,15 @@ return to_shadow_page(__pa(sptep)); } -static inline bool is_mmio_spte(u64 spte) +static inline bool is_private_sptep(u64 *sptep) { - return (spte & shadow_mmio_mask) == shadow_mmio_value && + WARN_ON_ONCE(!sptep); + return is_private_sp(sptep_to_sp(sptep)); +} + +static inline bool is_mmio_spte(struct kvm *kvm, u64 spte) +{ + return (spte & shadow_mmio_mask) == kvm->arch.shadow_mmio_value && likely(enable_mmio_caching); } @@ -297,6 +325,11 @@ return !spte_ad_enabled(spte) && (spte & shadow_acc_track_mask) == 0; } +static inline bool is_private_zapped_spte(u64 spte) +{ + return !!(spte & SPTE_PRIVATE_ZAPPED); +} + static inline bool is_large_pte(u64 pte) { return pte & PT_PAGE_SIZE_MASK; --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/tdp_iter.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/tdp_iter.c @@ -70,6 +70,14 @@ return (tdp_ptep_t)__va(spte_to_pfn(spte) << PAGE_SHIFT); } +static void step_down(struct tdp_iter *iter, tdp_ptep_t child_pt) +{ + iter->level--; + iter->pt_path[iter->level - 1] = child_pt; + iter->gfn = gfn_round_for_level(iter->next_last_level_gfn, iter->level); + tdp_iter_refresh_sptep(iter); +} + /* * Steps down one level in the paging structure towards the goal GFN. Returns * true if the iterator was able to step down a level, false otherwise. @@ -91,14 +99,28 @@ if (!child_pt) return false; - iter->level--; - iter->pt_path[iter->level - 1] = child_pt; - iter->gfn = gfn_round_for_level(iter->next_last_level_gfn, iter->level); - tdp_iter_refresh_sptep(iter); - + step_down(iter, child_pt); return true; } +/* Steps down for freezed spte. Don't re-read sptep because it was freezed. */ +void tdp_iter_step_down(struct tdp_iter *iter, tdp_ptep_t child_pt) +{ + WARN_ON_ONCE(!child_pt); + WARN_ON_ONCE(iter->yielded); + WARN_ON_ONCE(iter->level == iter->min_level); + + step_down(iter, child_pt); +} + +void tdp_iter_step_side(struct tdp_iter *iter) +{ + iter->gfn += KVM_PAGES_PER_HPAGE(iter->level); + iter->next_last_level_gfn = iter->gfn; + iter->sptep++; + iter->old_spte = kvm_tdp_mmu_read_spte(iter->sptep); +} + /* * Steps to the next entry in the current page table, at the current page table * level. The next entry could point to a page backing guest memory or another @@ -116,10 +138,7 @@ (SPTE_ENT_PER_PAGE - 1)) return false; - iter->gfn += KVM_PAGES_PER_HPAGE(iter->level); - iter->next_last_level_gfn = iter->gfn; - iter->sptep++; - iter->old_spte = kvm_tdp_mmu_read_spte(iter->sptep); + tdp_iter_step_side(iter); return true; } --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/tdp_iter.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/tdp_iter.h @@ -91,7 +91,7 @@ tdp_ptep_t pt_path[PT64_ROOT_MAX_LEVEL]; /* A pointer to the current SPTE */ tdp_ptep_t sptep; - /* The lowest GFN mapped by the current SPTE */ + /* The lowest GFN (shared bits included) mapped by the current SPTE */ gfn_t gfn; /* The level of the root page given to the iterator */ int root_level; @@ -134,5 +134,19 @@ int min_level, gfn_t next_last_level_gfn); void tdp_iter_next(struct tdp_iter *iter); void tdp_iter_restart(struct tdp_iter *iter); +void tdp_iter_step_side(struct tdp_iter *iter); +void tdp_iter_step_down(struct tdp_iter *iter, tdp_ptep_t child_pt); + +static inline union kvm_mmu_page_role tdp_iter_child_role(struct tdp_iter *iter) +{ + union kvm_mmu_page_role child_role; + struct kvm_mmu_page *parent_sp; + + parent_sp = sptep_to_sp(rcu_dereference(iter->sptep)); + + child_role = parent_sp->role; + child_role.level--; + return child_role; +} #endif /* __KVM_X86_MMU_TDP_ITER_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/tdp_mmu.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/tdp_mmu.c @@ -12,18 +12,13 @@ #include /* Initializes the TDP MMU for the VM, if enabled. */ -int kvm_mmu_init_tdp_mmu(struct kvm *kvm) +void kvm_mmu_init_tdp_mmu(struct kvm *kvm) { - struct workqueue_struct *wq; - - wq = alloc_workqueue("kvm", WQ_UNBOUND|WQ_MEM_RECLAIM|WQ_CPU_INTENSIVE, 0); - if (!wq) - return -ENOMEM; - INIT_LIST_HEAD(&kvm->arch.tdp_mmu_roots); spin_lock_init(&kvm->arch.tdp_mmu_pages_lock); - kvm->arch.tdp_mmu_zap_wq = wq; - return 1; +#ifdef CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT + mutex_init(&kvm->arch.private_spt_for_split_lock); +#endif } /* Arbitrarily returns true so that this may be used in if statements. */ @@ -45,27 +40,23 @@ * for zapping and thus puts the TDP MMU's reference to each root, i.e. * ultimately frees all roots. */ - kvm_tdp_mmu_invalidate_all_roots(kvm); - - /* - * Destroying a workqueue also first flushes the workqueue, i.e. no - * need to invoke kvm_tdp_mmu_zap_invalidated_roots(). - */ - destroy_workqueue(kvm->arch.tdp_mmu_zap_wq); + kvm_tdp_mmu_invalidate_all_roots(kvm, false); WARN_ON(atomic64_read(&kvm->arch.tdp_mmu_pages)); + WARN_ON(atomic64_read(&kvm->arch.tdp_private_mmu_pages)); WARN_ON(!list_empty(&kvm->arch.tdp_mmu_roots)); /* * Ensure that all the outstanding RCU callbacks to free shadow pages - * can run before the VM is torn down. Work items on tdp_mmu_zap_wq - * can call kvm_tdp_mmu_put_root and create new callbacks. + * can run before the VM is torn down. Putting the last reference to + * zapped roots will create new callbacks. */ rcu_barrier(); } static void tdp_mmu_free_sp(struct kvm_mmu_page *sp) { + kvm_mmu_free_private_spt(sp); free_page((unsigned long)sp->spt); kmem_cache_free(mmu_page_header_cache, sp); } @@ -86,46 +77,6 @@ tdp_mmu_free_sp(sp); } -static void tdp_mmu_zap_root(struct kvm *kvm, struct kvm_mmu_page *root, - bool shared); - -static void tdp_mmu_zap_root_work(struct work_struct *work) -{ - struct kvm_mmu_page *root = container_of(work, struct kvm_mmu_page, - tdp_mmu_async_work); - struct kvm *kvm = root->tdp_mmu_async_data; - - read_lock(&kvm->mmu_lock); - - /* - * A TLB flush is not necessary as KVM performs a local TLB flush when - * allocating a new root (see kvm_mmu_load()), and when migrating vCPU - * to a different pCPU. Note, the local TLB flush on reuse also - * invalidates any paging-structure-cache entries, i.e. TLB entries for - * intermediate paging structures, that may be zapped, as such entries - * are associated with the ASID on both VMX and SVM. - */ - tdp_mmu_zap_root(kvm, root, true); - - /* - * Drop the refcount using kvm_tdp_mmu_put_root() to test its logic for - * avoiding an infinite loop. By design, the root is reachable while - * it's being asynchronously zapped, thus a different task can put its - * last reference, i.e. flowing through kvm_tdp_mmu_put_root() for an - * asynchronously zapped root is unavoidable. - */ - kvm_tdp_mmu_put_root(kvm, root, true); - - read_unlock(&kvm->mmu_lock); -} - -static void tdp_mmu_schedule_zap_root(struct kvm *kvm, struct kvm_mmu_page *root) -{ - root->tdp_mmu_async_data = kvm; - INIT_WORK(&root->tdp_mmu_async_work, tdp_mmu_zap_root_work); - queue_work(kvm->arch.tdp_mmu_zap_wq, &root->tdp_mmu_async_work); -} - void kvm_tdp_mmu_put_root(struct kvm *kvm, struct kvm_mmu_page *root, bool shared) { @@ -211,8 +162,12 @@ #define for_each_valid_tdp_mmu_root_yield_safe(_kvm, _root, _as_id, _shared) \ __for_each_tdp_mmu_root_yield_safe(_kvm, _root, _as_id, _shared, true) -#define for_each_tdp_mmu_root_yield_safe(_kvm, _root, _as_id) \ - __for_each_tdp_mmu_root_yield_safe(_kvm, _root, _as_id, false, false) +#define for_each_tdp_mmu_root_yield_safe(_kvm, _root, _shared) \ + for (_root = tdp_mmu_next_root(_kvm, NULL, _shared, false); \ + _root; \ + _root = tdp_mmu_next_root(_kvm, _root, _shared, false)) \ + if (!kvm_lockdep_assert_mmu_lock_held(_kvm, _shared)) { \ + } else /* * Iterate over all TDP MMU roots. Requires that mmu_lock be held for write, @@ -227,24 +182,33 @@ kvm_mmu_page_as_id(_root) != _as_id) { \ } else -static struct kvm_mmu_page *tdp_mmu_alloc_sp(struct kvm_vcpu *vcpu) +static struct kvm_mmu_page *tdp_mmu_alloc_sp(struct kvm_vcpu *vcpu, + union kvm_mmu_page_role role) { struct kvm_mmu_page *sp; sp = kvm_mmu_memory_cache_alloc(&vcpu->arch.mmu_page_header_cache); sp->spt = kvm_mmu_memory_cache_alloc(&vcpu->arch.mmu_shadow_page_cache); + sp->role = role; + + if (kvm_mmu_page_role_is_private(role)) + kvm_mmu_alloc_private_spt(vcpu, sp); return sp; } static void tdp_mmu_init_sp(struct kvm_mmu_page *sp, tdp_ptep_t sptep, - gfn_t gfn, union kvm_mmu_page_role role) + gfn_t gfn) { INIT_LIST_HEAD(&sp->possible_nx_huge_page_link); set_page_private(virt_to_page(sp->spt), (unsigned long)sp); - sp->role = role; + /* + * role must be set before calling this function. At least role.level + * is not 0 (PG_LEVEL_NONE). + */ + WARN_ON_ONCE(!sp->role.word); sp->gfn = gfn; sp->ptep = sptep; sp->tdp_mmu_page = true; @@ -252,21 +216,25 @@ trace_kvm_mmu_get_page(sp, true); } -static void tdp_mmu_init_child_sp(struct kvm_mmu_page *child_sp, - struct tdp_iter *iter) +static struct kvm_mmu_page * +kvm_tdp_mmu_get_vcpu_root_no_alloc(struct kvm_vcpu *vcpu, union kvm_mmu_page_role role) { - struct kvm_mmu_page *parent_sp; - union kvm_mmu_page_role role; + struct kvm *kvm = vcpu->kvm; + struct kvm_mmu_page *root; - parent_sp = sptep_to_sp(rcu_dereference(iter->sptep)); + lockdep_assert_held(&kvm->mmu_lock); - role = parent_sp->role; - role.level--; + for_each_tdp_mmu_root(kvm, root, kvm_mmu_role_as_id(role)) { + if (root->role.word == role.word && + kvm_tdp_mmu_get_root(root)) + return root; + } - tdp_mmu_init_sp(child_sp, iter->sptep, iter->gfn, role); + return NULL; } -hpa_t kvm_tdp_mmu_get_vcpu_root_hpa(struct kvm_vcpu *vcpu) +static struct kvm_mmu_page *kvm_tdp_mmu_get_vcpu_root(struct kvm_vcpu *vcpu, + bool private) { union kvm_mmu_page_role role = vcpu->arch.mmu->root_role; struct kvm *kvm = vcpu->kvm; @@ -278,21 +246,21 @@ * Check for an existing root before allocating a new one. Note, the * role check prevents consuming an invalid root. */ - for_each_tdp_mmu_root(kvm, root, kvm_mmu_role_as_id(role)) { - if (root->role.word == role.word && - kvm_tdp_mmu_get_root(root)) - goto out; - } + if (private) + kvm_mmu_page_role_set_private(&role); + root = kvm_tdp_mmu_get_vcpu_root_no_alloc(vcpu, role); + if (!!root) + goto out; - root = tdp_mmu_alloc_sp(vcpu); - tdp_mmu_init_sp(root, NULL, 0, role); + root = tdp_mmu_alloc_sp(vcpu, role); + tdp_mmu_init_sp(root, NULL, 0); /* * TDP MMU roots are kept until they are explicitly invalidated, either * by a memslot update or by the destruction of the VM. Initialize the * refcount to two; one reference for the vCPU, and one reference for * the TDP MMU itself, which is held until the root is invalidated and - * is ultimately put by tdp_mmu_zap_root_work(). + * is ultimately put by kvm_tdp_mmu_zap_invalidated_roots(). */ refcount_set(&root->tdp_mmu_root_count, 2); @@ -301,23 +269,86 @@ spin_unlock(&kvm->arch.tdp_mmu_pages_lock); out: + return root; +} + +hpa_t kvm_tdp_mmu_move_private_pages_from(struct kvm_vcpu *vcpu, + struct kvm_vcpu *src_vcpu) +{ + union kvm_mmu_page_role role = vcpu->arch.mmu->root_role; + struct kvm *kvm = vcpu->kvm; + struct kvm *src_kvm = src_vcpu->kvm; + struct kvm_mmu_page *private_root = NULL; + struct kvm_mmu_page *root; + s64 num_private_pages, old; + + lockdep_assert_held_write(&vcpu->kvm->mmu_lock); + lockdep_assert_held_write(&src_vcpu->kvm->mmu_lock); + + /* Find the private root of the source. */ + kvm_mmu_page_role_set_private(&role); + for_each_tdp_mmu_root(src_kvm, root, kvm_mmu_role_as_id(role)) { + if (root->role.word == role.word) { + private_root = root; + break; + } + } + if (!private_root) + return INVALID_PAGE; + + /* Remove the private root from the src kvm and add it to dst kvm. */ + list_del_rcu(&private_root->link); + list_add_rcu(&private_root->link, &kvm->arch.tdp_mmu_roots); + + num_private_pages = atomic64_read(&src_kvm->arch.tdp_private_mmu_pages); + old = atomic64_cmpxchg(&kvm->arch.tdp_private_mmu_pages, 0, + num_private_pages); + /* The destination VM should have no private pages at this point. */ + WARN_ON(old); + atomic64_set(&src_kvm->arch.tdp_private_mmu_pages, 0); + + return __pa(private_root->spt); +} + +hpa_t kvm_tdp_mmu_get_vcpu_root_hpa_no_alloc(struct kvm_vcpu *vcpu, bool private) +{ + struct kvm_mmu_page *root; + union kvm_mmu_page_role role = vcpu->arch.mmu->root_role; + + if (private) + kvm_mmu_page_role_set_private(&role); + root = kvm_tdp_mmu_get_vcpu_root_no_alloc(vcpu, role); + if (!root) + return INVALID_PAGE; + return __pa(root->spt); } +hpa_t kvm_tdp_mmu_get_vcpu_root_hpa(struct kvm_vcpu *vcpu, bool private) +{ + return __pa(kvm_tdp_mmu_get_vcpu_root(vcpu, private)->spt); +} + static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, - u64 old_spte, u64 new_spte, int level, - bool shared); + u64 old_spte, u64 new_spte, + union kvm_mmu_page_role role, bool shared); static void tdp_account_mmu_page(struct kvm *kvm, struct kvm_mmu_page *sp) { kvm_account_pgtable_pages((void *)sp->spt, +1); - atomic64_inc(&kvm->arch.tdp_mmu_pages); + if (is_private_sp(sp)) + atomic64_inc(&kvm->arch.tdp_private_mmu_pages); + else + atomic64_inc(&kvm->arch.tdp_mmu_pages); } static void tdp_unaccount_mmu_page(struct kvm *kvm, struct kvm_mmu_page *sp) { kvm_account_pgtable_pages((void *)sp->spt, -1); - atomic64_dec(&kvm->arch.tdp_mmu_pages); + if (is_private_sp(sp)) + atomic64_dec(&kvm->arch.tdp_private_mmu_pages); + else + atomic64_dec(&kvm->arch.tdp_mmu_pages); } /** @@ -408,7 +439,13 @@ * unreachable. */ old_spte = kvm_tdp_mmu_read_spte(sptep); - if (!is_shadow_present_pte(old_spte)) + /* + * It comes here when zapping all pages when destroying + * vm. It means TLB shootdown optimization doesn't make + * sense. Zap private_zapped entry. + */ + if (!is_shadow_present_pte(old_spte) && + !is_private_zapped_spte(old_spte)) continue; /* @@ -443,12 +480,109 @@ REMOVED_SPTE, level); } handle_changed_spte(kvm, kvm_mmu_page_as_id(sp), gfn, - old_spte, REMOVED_SPTE, level, shared); + old_spte, REMOVED_SPTE, sp->role, + shared); + } + + KVM_BUG_ON(is_private_sp(sp) && !kvm_mmu_private_spt(sp), kvm); + if (is_private_sp(sp) && + WARN_ON(static_call(kvm_x86_free_private_spt)(kvm, sp->gfn, sp->role.level, + kvm_mmu_private_spt(sp)))) { + /* + * Failed to unlink Secure EPT page and there is nothing to do + * further. Intentionally leak the page to prevent the kernel + * from accessing the encrypted page. + */ + kvm_mmu_init_private_spt(sp, NULL); } call_rcu(&sp->rcu_head, tdp_mmu_free_sp_rcu_callback); } +static void *get_private_spt(gfn_t gfn, u64 new_spte, int level) +{ + if (is_shadow_present_pte(new_spte) && !is_last_spte(new_spte, level)) { + struct kvm_mmu_page *sp = to_shadow_page(pfn_to_hpa(spte_to_pfn(new_spte))); + void *private_spt = kvm_mmu_private_spt(sp); + + WARN_ON_ONCE(!private_spt); + WARN_ON_ONCE(sp->role.level + 1 != level); + WARN_ON_ONCE(sp->gfn != gfn); + return private_spt; + } + + return NULL; +} + +static void handle_private_zapped_spte(struct kvm *kvm, gfn_t gfn, + u64 old_spte, u64 new_spte, int level) +{ + bool was_private_zapped = is_private_zapped_spte(old_spte); + bool is_private_zapped = is_private_zapped_spte(new_spte); + bool was_present = is_shadow_present_pte(old_spte); + bool is_present = is_shadow_present_pte(new_spte); + kvm_pfn_t old_pfn = spte_to_pfn(old_spte); + int ret = 0; + + /* Temporarily blocked private SPTE can only be leaf. */ + KVM_BUG_ON(!is_last_spte(old_spte, level), kvm); + KVM_BUG_ON(is_private_zapped, kvm); + KVM_BUG_ON(was_present, kvm); + KVM_BUG_ON(!was_private_zapped, kvm); + KVM_BUG_ON(is_present, kvm); + + lockdep_assert_held_write(&kvm->mmu_lock); + ret = static_call(kvm_x86_remove_private_spte)(kvm, gfn, level, old_pfn); + KVM_BUG_ON(ret, kvm); +} + +static void handle_removed_private_spte(struct kvm *kvm, gfn_t gfn, + u64 old_spte, u64 new_spte, + int level) +{ + bool was_present = is_shadow_present_pte(old_spte); + bool is_present = is_shadow_present_pte(new_spte); + bool was_leaf = was_present && is_last_spte(old_spte, level); + bool is_leaf = is_present && is_last_spte(new_spte, level); + bool was_private_zapped = is_private_zapped_spte(old_spte); + bool is_private_zapped = is_private_zapped_spte(new_spte); + kvm_pfn_t old_pfn = spte_to_pfn(old_spte); + kvm_pfn_t new_pfn = spte_to_pfn(new_spte); + int ret; + + /* Ignore change of software only bits. e.g. host_writable */ + if (was_leaf == is_leaf && was_present == is_present && + was_private_zapped == is_private_zapped) + return; + + /* + * Allow only leaf page to be zapped. Reclaim Non-leaf page tables at + * destroying VM. + */ + KVM_BUG_ON(was_private_zapped && is_private_zapped, kvm); + WARN_ON_ONCE(is_present); + if (!was_leaf) + return; + + /* Zapping leaf spte is allowed only when write lock is held. */ + lockdep_assert_held_write(&kvm->mmu_lock); + ret = static_call(kvm_x86_zap_private_spte)(kvm, gfn, level); + if (is_private_zapped) { + /* page migration isn't supported yet. */ + KVM_BUG_ON(new_pfn != old_pfn, kvm); + return; + } + /* Because write lock is held, operation should success. */ + if (KVM_BUG_ON(ret, kvm)) + return; + + /* non-present -> non-present doesn't make sense. */ + KVM_BUG_ON(!was_present, kvm); + KVM_BUG_ON(new_pfn, kvm); + ret = static_call(kvm_x86_remove_private_spte)(kvm, gfn, level, old_pfn); + KVM_BUG_ON(ret, kvm); +} + /** * handle_changed_spte - handle bookkeeping associated with an SPTE change * @kvm: kvm instance @@ -456,7 +590,7 @@ * @gfn: the base GFN that was mapped by the SPTE * @old_spte: The value of the SPTE before the change * @new_spte: The value of the SPTE after the change - * @level: the level of the PT the SPTE is part of in the paging structure + * @role: the role of the PT the SPTE is part of in the paging structure * @shared: This operation may not be running under the exclusive use of * the MMU lock and the operation must synchronize with other * threads that might be modifying SPTEs. @@ -466,18 +600,26 @@ * and fast_pf_fix_direct_spte()). */ static void handle_changed_spte(struct kvm *kvm, int as_id, gfn_t gfn, - u64 old_spte, u64 new_spte, int level, - bool shared) + u64 old_spte, u64 new_spte, + union kvm_mmu_page_role role, bool shared) { + bool is_private = kvm_mmu_page_role_is_private(role); + int level = role.level; bool was_present = is_shadow_present_pte(old_spte); bool is_present = is_shadow_present_pte(new_spte); - bool was_leaf = was_present && is_last_spte(old_spte, level); + bool was_last = is_last_spte(old_spte, level); + bool was_leaf = was_present && was_last; bool is_leaf = is_present && is_last_spte(new_spte, level); - bool pfn_changed = spte_to_pfn(old_spte) != spte_to_pfn(new_spte); + kvm_pfn_t old_pfn = spte_to_pfn(old_spte); + kvm_pfn_t new_pfn = spte_to_pfn(new_spte); + bool pfn_changed = old_pfn != new_pfn; + bool was_private_zapped = is_private_zapped_spte(old_spte); WARN_ON(level > PT64_ROOT_MAX_LEVEL); WARN_ON(level < PG_LEVEL_4K); WARN_ON(gfn & (KVM_PAGES_PER_HPAGE(level) - 1)); + KVM_BUG_ON(was_private_zapped && !is_private, kvm); + KVM_BUG_ON(kvm_is_private_gpa(kvm, gfn_to_gpa(gfn)) != is_private, kvm); /* * If this warning were to trigger it would indicate that there was a @@ -510,6 +652,11 @@ if (is_leaf) check_spte_writable_invariants(new_spte); + if (was_private_zapped) { + handle_private_zapped_spte(kvm, gfn, old_spte, new_spte, level); + return; + } + /* * The only times a SPTE should be changed from a non-present to * non-present state is when an MMIO entry is installed/modified/ @@ -522,8 +669,8 @@ * impact the guest since both the former and current SPTEs * are nonpresent. */ - if (WARN_ON(!is_mmio_spte(old_spte) && - !is_mmio_spte(new_spte) && + if (WARN_ON(!is_mmio_spte(kvm, old_spte) && + !is_mmio_spte(kvm, new_spte) && !is_removed_spte(new_spte))) pr_err("Unexpected SPTE change! Nonpresent SPTEs\n" "should not be replaced with another,\n" @@ -540,7 +687,7 @@ if (was_leaf && is_dirty_spte(old_spte) && (!is_present || !is_dirty_spte(new_spte) || pfn_changed)) - kvm_set_pfn_dirty(spte_to_pfn(old_spte)); + kvm_set_pfn_dirty(old_pfn); /* * Recursively handle child PTs if the change removed a subtree from @@ -548,15 +695,153 @@ * SPTE being converted to a hugepage (leaf) or being zapped. Shadow * pages are kernel allocations and should never be migrated. */ - if (was_present && !was_leaf && - (is_leaf || !is_present || WARN_ON_ONCE(pfn_changed))) + if (was_present && !was_last && + (is_leaf || !is_present || WARN_ON_ONCE(pfn_changed))) { + KVM_BUG_ON(is_private != is_private_sptep(spte_to_child_pt(old_spte, level)), + kvm); handle_removed_pt(kvm, spte_to_child_pt(old_spte, level), shared); + } + + /* + * Secure-EPT requires to remove Secure-EPT tables after removing + * children. hooks after handling lower page table by above + * handle_remove_pt(). + */ + if (is_private && !is_present) { + /* + * When write lock is held, leaf pte should be zapping or + * prohibiting. Not directly was_present=1 -> zero EPT entry. + */ + KVM_BUG_ON(!shared && is_leaf && !is_private_zapped_spte(new_spte), kvm); + handle_removed_private_spte(kvm, gfn, old_spte, new_spte, role.level); + } if (was_leaf && is_accessed_spte(old_spte) && (!is_present || !is_accessed_spte(new_spte) || pfn_changed)) kvm_set_pfn_accessed(spte_to_pfn(old_spte)); } +static int __must_check __set_private_spte_present(struct kvm *kvm, tdp_ptep_t sptep, + gfn_t gfn, u64 old_spte, + u64 new_spte, int level) +{ + bool was_private_zapped = is_private_zapped_spte(old_spte); + bool is_private_zapped = is_private_zapped_spte(new_spte); + bool was_last = is_last_spte(old_spte, level); + bool is_last = is_last_spte(new_spte, level); + bool was_present = is_shadow_present_pte(old_spte); + bool is_present = is_shadow_present_pte(new_spte); + bool was_leaf = was_present && is_last_spte(old_spte, level); + bool is_leaf = is_present && is_last_spte(new_spte, level); + kvm_pfn_t old_pfn = spte_to_pfn(old_spte); + kvm_pfn_t new_pfn = spte_to_pfn(new_spte); + void *private_spt; + int ret = 0; + + lockdep_assert_held(&kvm->mmu_lock); + /* + * TDP MMU doesn't change present -> present. split or merge of large + * page can happen. + */ + KVM_BUG_ON(was_present && (was_leaf == is_leaf), kvm); + + /* + * Handle special case of old_spte being temporarily blocked private + * SPTE. There are two cases: 1) Need to restore the original mapping + * (unblock) when guest accesses the private page; 2) Need to truly zap + * the SPTE because of zapping aliasing in fault handler, or when VM is + * being destroyed. + * See handel_private_zapped_spte() for zapping case. + */ + if (was_private_zapped) { + /* Temporarily blocked private SPTE can only be leaf. */ + KVM_BUG_ON(!is_last_spte(old_spte, level), kvm); + KVM_BUG_ON(!is_present, kvm); + KVM_BUG_ON(is_private_zapped, kvm); + KVM_BUG_ON(was_present, kvm); + KVM_BUG_ON(!was_private_zapped, kvm); + + if (old_pfn == new_pfn) { + ret = static_call(kvm_x86_unzap_private_spte)(kvm, gfn, + level); + } else if (level > PG_LEVEL_4K && was_last && !is_last) { + /* + * Splitting private_zapped large page doesn't happen. + * Unzap and then split. + */ + pr_err("gfn 0x%llx old_spte 0x%llx new_spte 0x%llx level %d\n", + gfn, old_spte, new_spte, level); + WARN_ON(1); + } else { + /* + * Because page is pinned (refer to + * kvm_faultin_pfn_private()), page migration shouldn't + * be triggered for private page. kvm private memory + * slot case should also prevent page migration. + */ + pr_err("gfn 0x%llx old_spte 0x%llx new_spte 0x%llx level %d\n", + gfn, old_spte, new_spte, level); + WARN_ON(1); + } + + if (ret) + return ret; + } + + /* + * Use different call to either set up middle level + * private page table, or leaf. + */ + if (level > PG_LEVEL_4K && was_leaf && !is_leaf) { + /* + * splitting large page into 4KB. + * tdp_mmu_split_huage_page() => tdp_mmu_link_sp() + */ + private_spt = get_private_spt(gfn, new_spte, level); + KVM_BUG_ON(!private_spt, kvm); + ret = static_call(kvm_x86_zap_private_spte)(kvm, gfn, level); + kvm_flush_remote_tlbs(kvm); + if (!ret) + ret = static_call(kvm_x86_split_private_spt)(kvm, gfn, + level, private_spt); + } else if (is_leaf) + ret = static_call(kvm_x86_set_private_spte)(kvm, gfn, level, new_pfn); + else { + private_spt = get_private_spt(gfn, new_spte, level); + KVM_BUG_ON(!private_spt, kvm); + ret = static_call(kvm_x86_link_private_spt)(kvm, gfn, level, private_spt); + } + + return ret; +} + +static int __must_check set_private_spte_present(struct kvm *kvm, tdp_ptep_t sptep, + gfn_t gfn, u64 old_spte, + u64 new_spte, int level) +{ + int ret; + + /* + * For private page table, callbacks are needed to propagate SPTE + * change into the protected page table. In order to atomically update + * both the SPTE and the protected page tables with callbacks, utilize + * freezing SPTE. + * - Freeze the SPTE. Set entry to REMOVED_SPTE. + * - Trigger callbacks for protected page tables. + * - Unfreeze the SPTE. Set the entry to new_spte. + */ + lockdep_assert_held(&kvm->mmu_lock); + if (!try_cmpxchg64(sptep, &old_spte, REMOVED_SPTE)) + return -EBUSY; + + ret = __set_private_spte_present(kvm, sptep, gfn, old_spte, new_spte, level); + if (ret) + __kvm_tdp_mmu_write_spte(sptep, old_spte); + else + __kvm_tdp_mmu_write_spte(sptep, new_spte); + return ret; +} + /* * tdp_mmu_set_spte_atomic - Set a TDP MMU SPTE atomically * and handle the associated bookkeeping. Do not mark the page dirty @@ -574,11 +859,14 @@ * no side-effects other than setting iter->old_spte to the last * known value of the spte. */ -static inline int tdp_mmu_set_spte_atomic(struct kvm *kvm, - struct tdp_iter *iter, - u64 new_spte) +static inline int __must_check tdp_mmu_set_spte_atomic(struct kvm *kvm, + struct tdp_iter *iter, + u64 new_spte) { u64 *sptep = rcu_dereference(iter->sptep); + bool freezed = false; + + KVM_BUG_ON(iter->yielded, kvm); /* * The caller is responsible for ensuring the old SPTE is not a REMOVED @@ -590,24 +878,59 @@ lockdep_assert_held_read(&kvm->mmu_lock); - /* - * Note, fast_pf_fix_direct_spte() can also modify TDP MMU SPTEs and - * does not hold the mmu_lock. On failure, i.e. if a different logical - * CPU modified the SPTE, try_cmpxchg64() updates iter->old_spte with - * the current value, so the caller operates on fresh data, e.g. if it - * retries tdp_mmu_set_spte_atomic() - */ - if (!try_cmpxchg64(sptep, &iter->old_spte, new_spte)) - return -EBUSY; + if (is_private_sptep(iter->sptep) && !is_removed_spte(new_spte)) { + int ret; - handle_changed_spte(kvm, iter->as_id, iter->gfn, iter->old_spte, - new_spte, iter->level, true); + if (is_shadow_present_pte(new_spte)) { + ret = set_private_spte_present(kvm, iter->sptep, iter->gfn, + iter->old_spte, new_spte, iter->level); + if (ret) + return ret; + } else { + if (!try_cmpxchg64(sptep, &iter->old_spte, REMOVED_SPTE)) + return -EBUSY; + freezed = true; + } + } else { + /* + * Note, fast_pf_fix_direct_spte() can also modify TDP MMU SPTEs + * and does not hold the mmu_lock. On failure, i.e. if a + * different logical CPU modified the SPTE, try_cmpxchg64() + * updates iter->old_spte with the current value, so the caller + * operates on fresh data, e.g. if it retries + * tdp_mmu_set_spte_atomic() + */ + if (!try_cmpxchg64(sptep, &iter->old_spte, new_spte)) + return -EBUSY; + } + handle_changed_spte(kvm, iter->as_id, iter->gfn, iter->old_spte, + new_spte, sptep_to_sp(sptep)->role, true); + if (freezed) + __kvm_tdp_mmu_write_spte(sptep, new_spte); return 0; } -static inline int tdp_mmu_zap_spte_atomic(struct kvm *kvm, - struct tdp_iter *iter) +static u64 __private_zapped_spte(u64 old_spte) +{ + return SHADOW_NONPRESENT_VALUE | SPTE_PRIVATE_ZAPPED | + (spte_to_pfn(old_spte) << PAGE_SHIFT) | + (is_large_pte(old_spte) ? PT_PAGE_SIZE_MASK : 0); +} + +static u64 private_zapped_spte(struct kvm *kvm, const struct tdp_iter *iter) +{ + if (!kvm_gfn_shared_mask(kvm)) + return SHADOW_NONPRESENT_VALUE; + + if (!is_private_sptep(iter->sptep)) + return SHADOW_NONPRESENT_VALUE; + + return __private_zapped_spte(iter->old_spte); +} + +static inline int __must_check tdp_mmu_zap_spte_atomic(struct kvm *kvm, + struct tdp_iter *iter) { int ret; @@ -630,7 +953,7 @@ * here since the SPTE is going from non-present to non-present. Use * the raw write helper to avoid an unnecessary check on volatile bits. */ - __kvm_tdp_mmu_write_spte(iter->sptep, 0); + __kvm_tdp_mmu_write_spte(iter->sptep, private_zapped_spte(kvm, iter)); return 0; } @@ -652,6 +975,9 @@ static u64 tdp_mmu_set_spte(struct kvm *kvm, int as_id, tdp_ptep_t sptep, u64 old_spte, u64 new_spte, gfn_t gfn, int level) { + union kvm_mmu_page_role role; + + KVM_BUG_ON(is_private_sptep(sptep) != kvm_is_private_gpa(kvm, gfn_to_gpa(gfn)), kvm); lockdep_assert_held_write(&kvm->mmu_lock); /* @@ -664,8 +990,17 @@ WARN_ON(is_removed_spte(old_spte) || is_removed_spte(new_spte)); old_spte = kvm_tdp_mmu_write_spte(sptep, old_spte, new_spte, level); + if (is_private_sptep(sptep) && !is_removed_spte(new_spte) && + is_shadow_present_pte(new_spte)) { + lockdep_assert_held_write(&kvm->mmu_lock); + /* Because write spin lock is held, no race. It should success. */ + KVM_BUG_ON(__set_private_spte_present(kvm, sptep, gfn, old_spte, + new_spte, level), kvm); + } - handle_changed_spte(kvm, as_id, gfn, old_spte, new_spte, level, false); + role = sptep_to_sp(sptep)->role; + role.level = level; + handle_changed_spte(kvm, as_id, gfn, old_spte, new_spte, role, false); return old_spte; } @@ -681,15 +1016,24 @@ #define tdp_root_for_each_pte(_iter, _root, _start, _end) \ for_each_tdp_pte(_iter, _root, _start, _end) -#define tdp_root_for_each_leaf_pte(_iter, _root, _start, _end) \ +/* + * Note temporarily blocked private SPTE is considered as valid leaf, although + * !is_shadow_present_pte() returns true for it, since the target page (which + * the mapping maps to ) is still there. + */ +#define tdp_root_for_each_leaf_pte(_iter, _root, _start, _end) \ tdp_root_for_each_pte(_iter, _root, _start, _end) \ - if (!is_shadow_present_pte(_iter.old_spte) || \ - !is_last_spte(_iter.old_spte, _iter.level)) \ + if ((!is_shadow_present_pte(_iter.old_spte) && \ + !is_private_zapped_spte(_iter.old_spte)) || \ + !is_last_spte(_iter.old_spte, _iter.level)) { \ continue; \ - else + } else -#define tdp_mmu_for_each_pte(_iter, _mmu, _start, _end) \ - for_each_tdp_pte(_iter, to_shadow_page(_mmu->root.hpa), _start, _end) +#define tdp_mmu_for_each_pte(_iter, _mmu, _private, _start, _end) \ + for_each_tdp_pte(_iter, \ + to_shadow_page((_private) ? _mmu->private_root_hpa : \ + _mmu->root.hpa), \ + _start, _end) /* * Yield if the MMU lock is contended or this thread needs to return control @@ -767,8 +1111,8 @@ continue; if (!shared) - tdp_mmu_iter_set_spte(kvm, &iter, 0); - else if (tdp_mmu_set_spte_atomic(kvm, &iter, 0)) + tdp_mmu_iter_set_spte(kvm, &iter, SHADOW_NONPRESENT_VALUE); + else if (tdp_mmu_set_spte_atomic(kvm, &iter, SHADOW_NONPRESENT_VALUE)) goto retry; } } @@ -812,6 +1156,7 @@ bool kvm_tdp_mmu_zap_sp(struct kvm *kvm, struct kvm_mmu_page *sp) { u64 old_spte; + u64 new_spte; /* * This helper intentionally doesn't allow zapping a root shadow page, @@ -824,12 +1169,25 @@ if (WARN_ON_ONCE(!is_shadow_present_pte(old_spte))) return false; - tdp_mmu_set_spte(kvm, kvm_mmu_page_as_id(sp), sp->ptep, old_spte, 0, - sp->gfn, sp->role.level + 1); + if (kvm_gfn_shared_mask(kvm) && is_private_sp(sp)) + new_spte = __private_zapped_spte(old_spte); + else + new_spte = SHADOW_NONPRESENT_VALUE; + + tdp_mmu_set_spte(kvm, kvm_mmu_page_as_id(sp), sp->ptep, old_spte, + new_spte, sp->gfn, sp->role.level + 1); return true; } + +static struct kvm_mmu_page *tdp_mmu_alloc_sp_for_split(struct kvm *kvm, + struct tdp_iter *iter, + bool shared, bool can_yield); + +static int tdp_mmu_split_huge_page(struct kvm *kvm, struct tdp_iter *iter, + struct kvm_mmu_page *sp, bool shared); + /* * If can_yield is true, will release the MMU lock and reschedule if the * scheduler needs the CPU or there is contention on the MMU lock. If this @@ -838,13 +1196,28 @@ * operation can cause a soft lockup. */ static bool tdp_mmu_zap_leafs(struct kvm *kvm, struct kvm_mmu_page *root, - gfn_t start, gfn_t end, bool can_yield, bool flush) + gfn_t start, gfn_t end, bool can_yield, bool flush, + bool zap_private) { + bool is_private = is_private_sp(root); + struct kvm_mmu_page *split_sp = NULL; struct tdp_iter iter; end = min(end, tdp_mmu_max_gfn_exclusive()); lockdep_assert_held_write(&kvm->mmu_lock); + WARN_ON_ONCE(zap_private && !is_private); + + if (!zap_private && is_private) + return flush; + + /* + * start and end doesn't have GFN shared bit. This function zaps + * a region including alias. Adjust shared bit of [start, end) if the + * root is shared. + */ + start = kvm_gfn_for_root(kvm, root, start); + end = kvm_gfn_for_root(kvm, root, end); rcu_read_lock(); @@ -855,16 +1228,83 @@ continue; } - if (!is_shadow_present_pte(iter.old_spte) || - !is_last_spte(iter.old_spte, iter.level)) + if (!is_last_spte(iter.old_spte, iter.level)) + continue; + + /* + * Skip non-present SPTE, with exception of temporarily + * blocked private SPTE, which also needs to be zapped. + */ + if (!is_shadow_present_pte(iter.old_spte) && + !is_private_zapped_spte(iter.old_spte)) + continue; + + if (is_private && kvm_gfn_shared_mask(kvm) && + is_large_pte(iter.old_spte)) { + gfn_t gfn = iter.gfn & ~kvm_gfn_shared_mask(kvm); + gfn_t mask = KVM_PAGES_PER_HPAGE(iter.level) - 1; + struct kvm_memory_slot *slot; + struct kvm_mmu_page *sp; + + slot = gfn_to_memslot(kvm, gfn); + if (kvm_hugepage_test_mixed(slot, gfn, iter.level) || + (gfn & mask) < start || + end < (gfn & mask) + KVM_PAGES_PER_HPAGE(iter.level)) { + WARN_ON_ONCE(!can_yield); + if (split_sp) { + sp = split_sp; + split_sp = NULL; + sp->role = tdp_iter_child_role(&iter); + } else { + WARN_ON(iter.yielded); + if (flush && can_yield) { + kvm_flush_remote_tlbs(kvm); + flush = false; + } + sp = tdp_mmu_alloc_sp_for_split(kvm, &iter, false, + can_yield); + if (iter.yielded) { + split_sp = sp; + continue; + } + } + KVM_BUG_ON(!sp, kvm); + + tdp_mmu_init_sp(sp, iter.sptep, iter.gfn); + if (tdp_mmu_split_huge_page(kvm, &iter, sp, false)) { + kvm_flush_remote_tlbs(kvm); + flush = false; + /* force retry on this gfn. */ + iter.yielded = true; + } else + flush = true; + continue; + } + } + + if (!zap_private && is_private_zapped_spte(iter.old_spte)) continue; - tdp_mmu_iter_set_spte(kvm, &iter, 0); + tdp_mmu_iter_set_spte(kvm, &iter, + zap_private ? SHADOW_NONPRESENT_VALUE : + private_zapped_spte(kvm, &iter)); flush = true; } rcu_read_unlock(); + if (split_sp) { + WARN_ON(!can_yield); + if (flush) { + kvm_flush_remote_tlbs(kvm); + flush = false; + } + + write_unlock(&kvm->mmu_lock); + tdp_mmu_free_sp(split_sp); + write_lock(&kvm->mmu_lock); + } + /* * Because this flow zaps _only_ leaf SPTEs, the caller doesn't need * to provide RCU protection as no 'struct kvm_mmu_page' will be freed. @@ -878,12 +1318,13 @@ * more SPTEs were zapped since the MMU lock was last acquired. */ bool kvm_tdp_mmu_zap_leafs(struct kvm *kvm, int as_id, gfn_t start, gfn_t end, - bool can_yield, bool flush) + bool can_yield, bool flush, bool zap_private) { struct kvm_mmu_page *root; for_each_tdp_mmu_root_yield_safe(kvm, root, as_id) - flush = tdp_mmu_zap_leafs(kvm, root, start, end, can_yield, flush); + flush = tdp_mmu_zap_leafs(kvm, root, start, end, can_yield, flush, + zap_private && is_private_sp(root)); return flush; } @@ -905,7 +1346,7 @@ * is being destroyed or the userspace VMM has exited. In both cases, * KVM_RUN is unreachable, i.e. no vCPUs will ever service the request. */ - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { for_each_tdp_mmu_root_yield_safe(kvm, root, i) tdp_mmu_zap_root(kvm, root, false); } @@ -917,21 +1358,50 @@ */ void kvm_tdp_mmu_zap_invalidated_roots(struct kvm *kvm) { - flush_workqueue(kvm->arch.tdp_mmu_zap_wq); + struct kvm_mmu_page *root; + + read_lock(&kvm->mmu_lock); + + for_each_tdp_mmu_root_yield_safe(kvm, root, true) { + if (!root->tdp_mmu_scheduled_root_to_zap) + continue; + + root->tdp_mmu_scheduled_root_to_zap = false; + KVM_BUG_ON(!root->role.invalid, kvm); + + /* + * A TLB flush is not necessary as KVM performs a local TLB + * flush when allocating a new root (see kvm_mmu_load()), and + * when migrating a vCPU to a different pCPU. Note, the local + * TLB flush on reuse also invalidates paging-structure-cache + * entries, i.e. TLB entries for intermediate paging structures, + * that may be zapped, as such entries are associated with the + * ASID on both VMX and SVM. + */ + tdp_mmu_zap_root(kvm, root, true); + + /* + * The referenced needs to be put *after* zapping the root, as + * the root must be reachable by mmu_notifiers while it's being + * zapped + */ + kvm_tdp_mmu_put_root(kvm, root, true); + } + + read_unlock(&kvm->mmu_lock); } /* * Mark each TDP MMU root as invalid to prevent vCPUs from reusing a root that * is about to be zapped, e.g. in response to a memslots update. The actual - * zapping is performed asynchronously. Using a separate workqueue makes it - * easy to ensure that the destruction is performed before the "fast zap" - * completes, without keeping a separate list of invalidated roots; the list is - * effectively the list of work items in the workqueue. + * zapping is done separately so that it happens with mmu_lock with read, + * whereas invalidating roots must be done with mmu_lock held for write (unless + * the VM is being destroyed). * - * Note, the asynchronous worker is gifted the TDP MMU's reference. + * Note, kvm_tdp_mmu_zap_invalidated_roots() is gifted the TDP MMU's reference. * See kvm_tdp_mmu_get_vcpu_root_hpa(). */ -void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm) +void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm, bool skip_private) { struct kvm_mmu_page *root; @@ -953,19 +1423,187 @@ /* * As above, mmu_lock isn't held when destroying the VM! There can't * be other references to @kvm, i.e. nothing else can invalidate roots - * or be consuming roots, but walking the list of roots does need to be - * guarded against roots being deleted by the asynchronous zap worker. + * or get/put references to roots. */ rcu_read_lock(); list_for_each_entry_rcu(root, &kvm->arch.tdp_mmu_roots, link) { + /* + * Skip private root since private page table + * is only torn down when VM is destroyed. + */ + if (skip_private && is_private_sp(root)) + continue; if (!root->role.invalid) { + root->tdp_mmu_scheduled_root_to_zap = true; root->role.invalid = true; - tdp_mmu_schedule_zap_root(kvm, root); } } +} - rcu_read_unlock(); +static int tdp_mmu_iter_step_side(int i, struct tdp_iter *iter) +{ + i++; + + /* + * if i = SPTE_ENT_PER_PAGE, tdp_iter_step_side() results + * in reading the entry beyond the last entry. + */ + if (i < SPTE_ENT_PER_PAGE) + tdp_iter_step_side(iter); + + return i; +} + +static int tdp_mmu_merge_private_spt(struct kvm_vcpu *vcpu, + struct kvm_page_fault *fault, + struct tdp_iter *iter, u64 new_spte) +{ + u64 *sptep = rcu_dereference(iter->sptep); + u64 old_spte = iter->old_spte; + struct kvm_mmu_page *child_sp; + struct kvm *kvm = vcpu->kvm; + struct tdp_iter child_iter; + bool ret_pf_retry = false; + int level = iter->level; + gfn_t gfn = iter->gfn; + tdp_ptep_t child_pt; + u64 child_spte; + int ret = 0; + int i; + + /* + * TDX KVM supports only 2MB large page. It's not supported to merge + * 2MB pages into 1GB page at the moment. + */ + WARN_ON_ONCE(fault->goal_level != PG_LEVEL_2M); + WARN_ON_ONCE(iter->level != PG_LEVEL_2M); + WARN_ON_ONCE(!is_large_pte(new_spte)); + + /* Freeze the spte to prevent other threads from working spte. */ + if (!try_cmpxchg64(sptep, &iter->old_spte, REMOVED_SPTE)) + return -EBUSY; + + /* + * Step down to the child spte. Because tdp_iter_next() assumes the + * parent spte isn't freezed, do it manually. + */ + child_pt = spte_to_child_pt(iter->old_spte, iter->level); + child_sp = sptep_to_sp(child_pt); + WARN_ON_ONCE(child_sp->role.level != PG_LEVEL_4K); + WARN_ON_ONCE(!kvm_mmu_page_role_is_private(child_sp->role)); + + /* Don't modify iter as the caller will use iter after this function. */ + child_iter = *iter; + /* Adjust the target gfn to the head gfn of the large page. */ + child_iter.next_last_level_gfn &= -KVM_PAGES_PER_HPAGE(level); + tdp_iter_step_down(&child_iter, child_pt); + + /* + * All child pages are required to be populated for merging them into a + * large page. Populate all child spte. + */ + for (i = 0; i < SPTE_ENT_PER_PAGE; i = tdp_mmu_iter_step_side(i, &child_iter)) { + WARN_ON_ONCE(child_iter.level != PG_LEVEL_4K); + if (is_shadow_present_pte(child_iter.old_spte)) { + /* TODO: relocate page for huge page. */ + if (WARN_ON_ONCE(spte_to_pfn(child_iter.old_spte) != + spte_to_pfn(new_spte) + i)) { + ret = -EAGAIN; + ret_pf_retry = true; + } + /* + * When SEPT_VE_DISABLE=true and the page state is + * pending, this case can happen. Just resume the vcpu + * again with the expectation for other vcpu to accept + * this page. + */ + if (child_iter.gfn == fault->gfn) { + ret = -EAGAIN; + ret_pf_retry = true; + break; + } + continue; + } + + WARN_ON_ONCE(is_private_zapped_spte(old_spte) && + spte_to_pfn(child_iter.old_spte) != spte_to_pfn(new_spte) + i); + child_spte = make_huge_page_split_spte(kvm, new_spte, child_sp->role, i); + /* + * Because other thread may have started to operate on this spte + * before freezing the parent spte, Use atomic version to + * prevent race. + */ + ret = tdp_mmu_set_spte_atomic(vcpu->kvm, &child_iter, child_spte); + if (ret == -EBUSY || ret == -EAGAIN) + /* + * There was a race condition. Populate remaining 4K + * spte to resolve fault->gfn to guarantee the forward + * progress. + */ + ret_pf_retry = true; + else if (ret) + goto out; + } + if (ret_pf_retry) + goto out; + + /* Prevent the Secure-EPT entry from being used. */ + ret = static_call(kvm_x86_zap_private_spte)(kvm, gfn, level); + if (ret) + goto out; + kvm_flush_remote_tlbs_range(kvm, gfn & KVM_HPAGE_GFN_MASK(level), + KVM_PAGES_PER_HPAGE(level)); + + /* Merge pages into a large page. */ + ret = static_call(kvm_x86_merge_private_spt)(kvm, gfn, level, + kvm_mmu_private_spt(child_sp)); + /* + * Failed to merge pages because some pages are accepted and some are + * pending. Since the child page was mapped above, let vcpu run. + */ + if (ret) { + if (static_call(kvm_x86_unzap_private_spte)(kvm, gfn, level)) + old_spte = __private_zapped_spte(old_spte); + goto out; + } + + /* Unfreeze spte. */ + iter->old_spte = new_spte; + __kvm_tdp_mmu_write_spte(sptep, new_spte); + + /* + * Free unused child sp. Secure-EPT page was already freed at TDX level + * by kvm_x86_merge_private_spt(). + */ + tdp_unaccount_mmu_page(kvm, child_sp); + tdp_mmu_free_sp(child_sp); + return -EAGAIN; + +out: + iter->old_spte = old_spte; + __kvm_tdp_mmu_write_spte(sptep, old_spte); + return ret; +} + +static int __tdp_mmu_map_handle_target_level(struct kvm_vcpu *vcpu, + struct kvm_page_fault *fault, + struct tdp_iter *iter, u64 new_spte) +{ + /* + * The private page has smaller-size pages. For example, the child + * pages was converted from shared to page, and now it can be mapped as + * a large page. Try to merge small pages into a large page. + */ + if (fault->slot && + kvm_gfn_shared_mask(vcpu->kvm) && + iter->level > PG_LEVEL_4K && + kvm_is_private_gpa(vcpu->kvm, fault->addr) && + is_shadow_present_pte(iter->old_spte) && + !is_large_pte(iter->old_spte)) + return tdp_mmu_merge_private_spt(vcpu, fault, iter, new_spte); + + return tdp_mmu_set_spte_atomic(vcpu->kvm, iter, new_spte); } /* @@ -986,14 +1624,30 @@ if (unlikely(!fault->slot)) new_spte = make_mmio_spte(vcpu, iter->gfn, ACC_ALL); - else - wrprot = make_spte(vcpu, sp, fault->slot, ACC_ALL, iter->gfn, - fault->pfn, iter->old_spte, fault->prefetch, true, - fault->map_writable, &new_spte); + else { + unsigned long pte_access = ACC_ALL; + gfn_t gfn = iter->gfn; + + if (kvm_gfn_shared_mask(vcpu->kvm)) { + if (fault->is_private) + gfn |= kvm_gfn_shared_mask(vcpu->kvm); + else + /* + * TDX shared GPAs are no executable, enforce + * this for the SDV. + */ + pte_access &= ~ACC_EXEC_MASK; + } + + wrprot = make_spte(vcpu, sp, fault->slot, pte_access, gfn, + fault->pfn, iter->old_spte, + fault->prefetch, true, fault->map_writable, + &new_spte); + } if (new_spte == iter->old_spte) ret = RET_PF_SPURIOUS; - else if (tdp_mmu_set_spte_atomic(vcpu->kvm, iter, new_spte)) + else if (__tdp_mmu_map_handle_target_level(vcpu, fault, iter, new_spte)) return RET_PF_RETRY; else if (is_shadow_present_pte(iter->old_spte) && !is_last_spte(iter->old_spte, iter->level)) @@ -1010,7 +1664,7 @@ } /* If a MMIO SPTE is installed, the MMIO will need to be emulated. */ - if (unlikely(is_mmio_spte(new_spte))) { + if (unlikely(is_mmio_spte(vcpu->kvm, new_spte))) { vcpu->stat.pf_mmio_spte_created++; trace_mark_mmio_spte(rcu_dereference(iter->sptep), iter->gfn, new_spte); @@ -1058,6 +1712,32 @@ struct kvm_mmu_page *sp, bool shared); /* + * unzap large page spte: shortened version of tdp_mmu_map_handle_target_level() + */ +static int tdp_mmu_unzap_large_spte(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault, + struct tdp_iter *iter) +{ + struct kvm_mmu_page *sp = sptep_to_sp(rcu_dereference(iter->sptep)); + kvm_pfn_t mask = KVM_HPAGE_GFN_MASK(iter->level); + u64 new_spte; + + KVM_BUG_ON((fault->pfn & mask) != spte_to_pfn(iter->old_spte), vcpu->kvm); + make_spte(vcpu, sp, fault->slot, ACC_ALL, gpa_to_gfn(fault->addr) & mask, + fault->pfn & mask, iter->old_spte, false, true, + fault->map_writable, &new_spte); + + if (new_spte == iter->old_spte) + return RET_PF_SPURIOUS; + + if (tdp_mmu_set_spte_atomic(vcpu->kvm, iter, new_spte)) + return RET_PF_RETRY; + trace_kvm_mmu_set_spte(iter->level, iter->gfn, + rcu_dereference(iter->sptep)); + iter->old_spte = new_spte; + return RET_PF_CONTINUE; +} + +/* * Handle a TDP page fault (NPT/EPT violation/misconfiguration) by installing * page tables and SPTEs to translate the faulting guest physical address. */ @@ -1067,6 +1747,8 @@ struct kvm *kvm = vcpu->kvm; struct tdp_iter iter; struct kvm_mmu_page *sp; + gfn_t raw_gfn; + bool is_private = fault->is_private && kvm_gfn_shared_mask(kvm); int ret = RET_PF_RETRY; kvm_mmu_hugepage_adjust(vcpu, fault); @@ -1075,10 +1757,22 @@ rcu_read_lock(); - tdp_mmu_for_each_pte(iter, mmu, fault->gfn, fault->gfn + 1) { + raw_gfn = gpa_to_gfn(fault->addr); + + if (is_error_noslot_pfn(fault->pfn) || + !kvm_pfn_to_refcounted_page(fault->pfn)) { + if (is_private) { + rcu_read_unlock(); + return -EFAULT; + } + } + + tdp_mmu_for_each_pte(iter, mmu, is_private, raw_gfn, raw_gfn + 1) { int r; - if (fault->nx_huge_page_workaround_enabled) + KVM_BUG_ON(is_private_sptep(iter.sptep) != is_private, vcpu->kvm); + if (fault->nx_huge_page_workaround_enabled || + kvm_gfn_shared_mask(vcpu->kvm)) disallowed_hugepage_adjust(fault, iter.old_spte, iter.level); /* @@ -1096,12 +1790,19 @@ !is_large_pte(iter.old_spte)) continue; + if (is_private_zapped_spte(iter.old_spte) && + is_large_pte(iter.old_spte)) { + if (tdp_mmu_unzap_large_spte(vcpu, fault, &iter) != + RET_PF_CONTINUE) + break; + } + /* * The SPTE is either non-present or points to a huge page that * needs to be split. */ - sp = tdp_mmu_alloc_sp(vcpu); - tdp_mmu_init_child_sp(sp, &iter); + sp = tdp_mmu_alloc_sp(vcpu, tdp_iter_child_role(&iter)); + tdp_mmu_init_sp(sp, iter.sptep, iter.gfn); sp->nx_huge_page_disallowed = fault->huge_page_disallowed; @@ -1143,11 +1844,24 @@ return ret; } +/* Used by mmu notifier via kvm_unmap_gfn_range() */ bool kvm_tdp_mmu_unmap_gfn_range(struct kvm *kvm, struct kvm_gfn_range *range, bool flush) { + bool zap_private = false; + + if (kvm_gfn_shared_mask(kvm)) { + if (!range->only_private && !range->only_shared) + /* attributes change */ + zap_private = !(range->arg.attributes & + KVM_MEMORY_ATTRIBUTE_PRIVATE); + else + zap_private = range->only_private; + } + return kvm_tdp_mmu_zap_leafs(kvm, range->slot->as_id, range->start, - range->end, range->may_block, flush); + range->end, range->may_block, flush, + zap_private); } typedef bool (*tdp_handler_t)(struct kvm *kvm, struct tdp_iter *iter, @@ -1166,9 +1880,27 @@ * into this helper allow blocking; it'd be dead, wasteful code. */ for_each_tdp_mmu_root(kvm, root, range->slot->as_id) { + gfn_t start; + gfn_t end; + + /* + * For now, operation on private GPA, e.g. dirty page logging, + * isn't supported yet. + */ + if (is_private_sp(root)) + continue; + rcu_read_lock(); - tdp_root_for_each_leaf_pte(iter, root, range->start, range->end) + /* + * For TDX shared mapping, set GFN shared bit to the range, + * so the handler() doesn't need to set it, to avoid duplicated + * code in multiple handler()s. + */ + start = kvm_gfn_to_shared(kvm, range->start); + end = kvm_gfn_to_shared(kvm, range->end); + + tdp_root_for_each_leaf_pte(iter, root, start, end) ret |= handler(kvm, &iter, range); rcu_read_unlock(); @@ -1241,7 +1973,7 @@ u64 new_spte; /* Huge pages aren't expected to be modified without first being zapped. */ - WARN_ON(pte_huge(range->pte) || range->start + 1 != range->end); + WARN_ON(pte_huge(range->arg.pte) || range->start + 1 != range->end); if (iter->level != PG_LEVEL_4K || !is_shadow_present_pte(iter->old_spte)) @@ -1253,11 +1985,11 @@ * invariant that the PFN of a present * leaf SPTE can never change. * See handle_changed_spte(). */ - tdp_mmu_iter_set_spte(kvm, iter, 0); + tdp_mmu_iter_set_spte(kvm, iter, private_zapped_spte(kvm, iter)); - if (!pte_write(range->pte)) { + if (!pte_write(range->arg.pte)) { new_spte = kvm_mmu_changed_pte_notifier_make_spte(iter->old_spte, - pte_pfn(range->pte)); + pte_pfn(range->arg.pte)); tdp_mmu_iter_set_spte(kvm, iter, new_spte); } @@ -1332,6 +2064,14 @@ lockdep_assert_held_read(&kvm->mmu_lock); + /* + * Because first TDX generation doesn't support write protecting private + * mappings and kvm_arch_dirty_log_supported(kvm) = false, it's a bug + * to reach here for guest TD. + */ + if (WARN_ON_ONCE(!kvm_arch_dirty_log_supported(kvm))) + return false; + for_each_valid_tdp_mmu_root_yield_safe(kvm, root, slot->as_id, true) spte_set |= wrprot_gfn_range(kvm, root, slot->base_gfn, slot->base_gfn + slot->npages, min_level); @@ -1339,7 +2079,9 @@ return spte_set; } -static struct kvm_mmu_page *__tdp_mmu_alloc_sp_for_split(gfp_t gfp) +static struct kvm_mmu_page *__tdp_mmu_alloc_sp_for_split(struct kvm *kvm, gfp_t gfp, + union kvm_mmu_page_role role, + bool can_yield) { struct kvm_mmu_page *sp; @@ -1349,7 +2091,14 @@ if (!sp) return NULL; + sp->role = role; sp->spt = (void *)__get_free_page(gfp); + if (kvm_mmu_page_role_is_private(role)) { + if (kvm_alloc_private_spt_for_split(kvm, sp, gfp, can_yield)) { + free_page((unsigned long)sp->spt); + sp->spt = NULL; + } + } if (!sp->spt) { kmem_cache_free(mmu_page_header_cache, sp); return NULL; @@ -1360,10 +2109,15 @@ static struct kvm_mmu_page *tdp_mmu_alloc_sp_for_split(struct kvm *kvm, struct tdp_iter *iter, - bool shared) + bool shared, + bool can_yield) { + union kvm_mmu_page_role role = tdp_iter_child_role(iter); struct kvm_mmu_page *sp; + KVM_BUG_ON(kvm_mmu_page_role_is_private(role) != + is_private_sptep(iter->sptep), kvm); + /* * Since we are allocating while under the MMU lock we have to be * careful about GFP flags. Use GFP_NOWAIT to avoid blocking on direct @@ -1373,8 +2127,8 @@ * If this allocation fails we drop the lock and retry with reclaim * allowed. */ - sp = __tdp_mmu_alloc_sp_for_split(GFP_NOWAIT | __GFP_ACCOUNT); - if (sp) + sp = __tdp_mmu_alloc_sp_for_split(kvm, GFP_NOWAIT | __GFP_ACCOUNT, role, can_yield); + if (sp || !can_yield) return sp; rcu_read_unlock(); @@ -1385,7 +2139,7 @@ write_unlock(&kvm->mmu_lock); iter->yielded = true; - sp = __tdp_mmu_alloc_sp_for_split(GFP_KERNEL_ACCOUNT); + sp = __tdp_mmu_alloc_sp_for_split(kvm, GFP_KERNEL_ACCOUNT, role, can_yield); if (shared) read_lock(&kvm->mmu_lock); @@ -1467,7 +2221,7 @@ continue; if (!sp) { - sp = tdp_mmu_alloc_sp_for_split(kvm, &iter, shared); + sp = tdp_mmu_alloc_sp_for_split(kvm, &iter, shared, true); if (!sp) { ret = -ENOMEM; trace_kvm_mmu_split_huge_page(iter.gfn, @@ -1480,7 +2234,7 @@ continue; } - tdp_mmu_init_child_sp(sp, &iter); + tdp_mmu_init_sp(sp, iter.sptep, iter.gfn); if (tdp_mmu_split_huge_page(kvm, &iter, sp, shared)) goto retry; @@ -1579,6 +2333,14 @@ lockdep_assert_held_read(&kvm->mmu_lock); + /* + * First TDX generation doesn't support clearing dirty bit, + * since there's no secure EPT API to support it. It is a + * bug to reach here for TDX guest. + */ + if (WARN_ON_ONCE(!kvm_arch_dirty_log_supported(kvm))) + return false; + for_each_valid_tdp_mmu_root_yield_safe(kvm, root, slot->as_id, true) spte_set |= clear_dirty_gfn_range(kvm, root, slot->base_gfn, slot->base_gfn + slot->npages); @@ -1647,6 +2409,13 @@ struct kvm_mmu_page *root; lockdep_assert_held_write(&kvm->mmu_lock); + /* + * First TDX generation doesn't support clearing dirty bit, + * since there's no secure EPT API to support it. For now silently + * ignore KVM_CLEAR_DIRTY_LOG. + */ + if (!kvm_arch_dirty_log_supported(kvm)) + return; for_each_tdp_mmu_root(kvm, root, slot->as_id) clear_dirty_pt_masked(kvm, root, gfn, mask, wrprot); } @@ -1690,7 +2459,7 @@ continue; max_mapping_level = kvm_mmu_max_mapping_level(kvm, slot, - iter.gfn, PG_LEVEL_NUM); + iter.gfn, PG_LEVEL_NUM, false); if (max_mapping_level < iter.level) continue; @@ -1766,6 +2535,15 @@ bool spte_set = false; lockdep_assert_held_write(&kvm->mmu_lock); + + /* + * First TDX generation doesn't support write protecting private + * mappings, silently ignore the request. KVM_GET_DIRTY_LOG etc + * can reach here, no warning. + */ + if (!kvm_arch_dirty_log_supported(kvm)) + return false; + for_each_tdp_mmu_root(kvm, root, slot->as_id) spte_set |= write_protect_gfn(kvm, root, gfn, min_level); @@ -1788,7 +2566,14 @@ *root_level = vcpu->arch.mmu->root_role.level; - tdp_mmu_for_each_pte(iter, mmu, gfn, gfn + 1) { + /* + * mmio page fault isn't supported for protected guest because + * instructions in protected guest memory can't be parsed by VMM. + */ + if (WARN_ON_ONCE(kvm_gfn_shared_mask(vcpu->kvm))) + return leaf; + + tdp_mmu_for_each_pte(iter, mmu, false, gfn, gfn + 1) { leaf = iter.level; sptes[leaf] = iter.old_spte; } @@ -1815,7 +2600,10 @@ gfn_t gfn = addr >> PAGE_SHIFT; tdp_ptep_t sptep = NULL; - tdp_mmu_for_each_pte(iter, mmu, gfn, gfn + 1) { + /* fast page fault for private GPA isn't supported. */ + WARN_ON_ONCE(kvm_is_private_gpa(vcpu->kvm, addr)); + + tdp_mmu_for_each_pte(iter, mmu, false, gfn, gfn + 1) { *spte = iter.old_spte; sptep = iter.sptep; } --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/mmu/tdp_mmu.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/mmu/tdp_mmu.h @@ -7,10 +7,13 @@ #include "spte.h" -int kvm_mmu_init_tdp_mmu(struct kvm *kvm); +void kvm_mmu_init_tdp_mmu(struct kvm *kvm); void kvm_mmu_uninit_tdp_mmu(struct kvm *kvm); -hpa_t kvm_tdp_mmu_get_vcpu_root_hpa(struct kvm_vcpu *vcpu); +hpa_t kvm_tdp_mmu_get_vcpu_root_hpa(struct kvm_vcpu *vcpu, bool private); +hpa_t kvm_tdp_mmu_get_vcpu_root_hpa_no_alloc(struct kvm_vcpu *vcpu, bool private); +hpa_t kvm_tdp_mmu_move_private_pages_from(struct kvm_vcpu *vcpu, + struct kvm_vcpu *src_vcpu); __must_check static inline bool kvm_tdp_mmu_get_root(struct kvm_mmu_page *root) { @@ -21,10 +24,11 @@ bool shared); bool kvm_tdp_mmu_zap_leafs(struct kvm *kvm, int as_id, gfn_t start, - gfn_t end, bool can_yield, bool flush); + gfn_t end, bool can_yield, bool flush, + bool zap_private); bool kvm_tdp_mmu_zap_sp(struct kvm *kvm, struct kvm_mmu_page *sp); void kvm_tdp_mmu_zap_all(struct kvm *kvm); -void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm); +void kvm_tdp_mmu_invalidate_all_roots(struct kvm *kvm, bool skip_private); void kvm_tdp_mmu_zap_invalidated_roots(struct kvm *kvm); int kvm_tdp_mmu_map(struct kvm_vcpu *vcpu, struct kvm_page_fault *fault); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/smm.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/smm.h @@ -142,7 +142,12 @@ static inline int kvm_inject_smi(struct kvm_vcpu *vcpu) { - kvm_make_request(KVM_REQ_SMI, vcpu); + /* + * If SMM isn't supported (e.g. TDX), silently discard SMI request. + * Assume that SMM supported = MSR_IA32_SMBASE supported. + */ + if (static_call(kvm_x86_has_emulated_msr)(vcpu->kvm, MSR_IA32_SMBASE)) + kvm_make_request(KVM_REQ_SMI, vcpu); return 0; } --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/svm/avic.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/svm/avic.c @@ -791,6 +791,7 @@ int ret = 0; unsigned long flags; struct amd_svm_iommu_ir *ir; + u64 entry; /** * In some cases, the existing irte is updated and re-set, @@ -824,6 +825,18 @@ ir->data = pi->ir_data; spin_lock_irqsave(&svm->ir_list_lock, flags); + + /* + * Update the target pCPU for IOMMU doorbells if the vCPU is running. + * If the vCPU is NOT running, i.e. is blocking or scheduled out, KVM + * will update the pCPU info when the vCPU awkened and/or scheduled in. + * See also avic_vcpu_load(). + */ + entry = READ_ONCE(*(svm->avic_physical_id_cache)); + if (entry & AVIC_PHYSICAL_ID_ENTRY_IS_RUNNING_MASK) + amd_iommu_update_ga(entry & AVIC_PHYSICAL_ID_ENTRY_HOST_PHYSICAL_ID_MASK, + true, pi->ir_data); + list_add(&ir->node, &svm->ir_list); spin_unlock_irqrestore(&svm->ir_list_lock, flags); out: @@ -986,10 +999,11 @@ avic_update_iommu_vcpu_affinity(struct kvm_vcpu *vcpu, int cpu, bool r) { int ret = 0; - unsigned long flags; struct amd_svm_iommu_ir *ir; struct vcpu_svm *svm = to_svm(vcpu); + lockdep_assert_held(&svm->ir_list_lock); + if (!kvm_arch_has_assigned_device(vcpu->kvm)) return 0; @@ -997,19 +1011,15 @@ * Here, we go through the per-vcpu ir_list to update all existing * interrupt remapping table entry targeting this vcpu. */ - spin_lock_irqsave(&svm->ir_list_lock, flags); - if (list_empty(&svm->ir_list)) - goto out; + return 0; list_for_each_entry(ir, &svm->ir_list, node) { ret = amd_iommu_update_ga(cpu, r, ir->data); if (ret) - break; + return ret; } -out: - spin_unlock_irqrestore(&svm->ir_list_lock, flags); - return ret; + return 0; } void avic_vcpu_load(struct kvm_vcpu *vcpu, int cpu) @@ -1017,6 +1027,7 @@ u64 entry; int h_physical_id = kvm_cpu_get_apicid(cpu); struct vcpu_svm *svm = to_svm(vcpu); + unsigned long flags; lockdep_assert_preemption_disabled(); @@ -1033,6 +1044,15 @@ if (kvm_vcpu_is_blocking(vcpu)) return; + /* + * Grab the per-vCPU interrupt remapping lock even if the VM doesn't + * _currently_ have assigned devices, as that can change. Holding + * ir_list_lock ensures that either svm_ir_list_add() will consume + * up-to-date entry information, or that this task will wait until + * svm_ir_list_add() completes to set the new target pCPU. + */ + spin_lock_irqsave(&svm->ir_list_lock, flags); + entry = READ_ONCE(*(svm->avic_physical_id_cache)); WARN_ON_ONCE(entry & AVIC_PHYSICAL_ID_ENTRY_IS_RUNNING_MASK); @@ -1042,25 +1062,48 @@ WRITE_ONCE(*(svm->avic_physical_id_cache), entry); avic_update_iommu_vcpu_affinity(vcpu, h_physical_id, true); + + spin_unlock_irqrestore(&svm->ir_list_lock, flags); } void avic_vcpu_put(struct kvm_vcpu *vcpu) { u64 entry; struct vcpu_svm *svm = to_svm(vcpu); + unsigned long flags; lockdep_assert_preemption_disabled(); + /* + * Note, reading the Physical ID entry outside of ir_list_lock is safe + * as only the pCPU that has loaded (or is loading) the vCPU is allowed + * to modify the entry, and preemption is disabled. I.e. the vCPU + * can't be scheduled out and thus avic_vcpu_{put,load}() can't run + * recursively. + */ entry = READ_ONCE(*(svm->avic_physical_id_cache)); /* Nothing to do if IsRunning == '0' due to vCPU blocking. */ if (!(entry & AVIC_PHYSICAL_ID_ENTRY_IS_RUNNING_MASK)) return; + /* + * Take and hold the per-vCPU interrupt remapping lock while updating + * the Physical ID entry even though the lock doesn't protect against + * multiple writers (see above). Holding ir_list_lock ensures that + * either svm_ir_list_add() will consume up-to-date entry information, + * or that this task will wait until svm_ir_list_add() completes to + * mark the vCPU as not running. + */ + spin_lock_irqsave(&svm->ir_list_lock, flags); + avic_update_iommu_vcpu_affinity(vcpu, -1, 0); entry &= ~AVIC_PHYSICAL_ID_ENTRY_IS_RUNNING_MASK; WRITE_ONCE(*(svm->avic_physical_id_cache), entry); + + spin_unlock_irqrestore(&svm->ir_list_lock, flags); + } void avic_refresh_virtual_apic_mode(struct kvm_vcpu *vcpu) --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/svm/nested.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/svm/nested.c @@ -695,10 +695,9 @@ vmcb02->control.tsc_offset = vcpu->arch.tsc_offset; - if (svm->tsc_ratio_msr != kvm_caps.default_tsc_scaling_ratio) { - WARN_ON(!svm->tsc_scaling_enabled); + if (svm->tsc_scaling_enabled && + svm->tsc_ratio_msr != kvm_caps.default_tsc_scaling_ratio) nested_svm_update_tsc_ratio_msr(vcpu); - } vmcb02->control.int_ctl = (svm->nested.ctl.int_ctl & int_ctl_vmcb12_bits) | @@ -1101,8 +1100,8 @@ vmcb_mark_dirty(vmcb01, VMCB_INTERCEPTS); } - if (svm->tsc_ratio_msr != kvm_caps.default_tsc_scaling_ratio) { - WARN_ON(!svm->tsc_scaling_enabled); + if (kvm_caps.has_tsc_control && + vcpu->arch.tsc_scaling_ratio != vcpu->arch.l1_tsc_scaling_ratio) { vcpu->arch.tsc_scaling_ratio = vcpu->arch.l1_tsc_scaling_ratio; __svm_write_tsc_multiplier(vcpu->arch.tsc_scaling_ratio); } --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/svm/sev.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/svm/sev.c @@ -1554,116 +1554,6 @@ return false; } -static int sev_lock_two_vms(struct kvm *dst_kvm, struct kvm *src_kvm) -{ - struct kvm_sev_info *dst_sev = &to_kvm_svm(dst_kvm)->sev_info; - struct kvm_sev_info *src_sev = &to_kvm_svm(src_kvm)->sev_info; - int r = -EBUSY; - - if (dst_kvm == src_kvm) - return -EINVAL; - - /* - * Bail if these VMs are already involved in a migration to avoid - * deadlock between two VMs trying to migrate to/from each other. - */ - if (atomic_cmpxchg_acquire(&dst_sev->migration_in_progress, 0, 1)) - return -EBUSY; - - if (atomic_cmpxchg_acquire(&src_sev->migration_in_progress, 0, 1)) - goto release_dst; - - r = -EINTR; - if (mutex_lock_killable(&dst_kvm->lock)) - goto release_src; - if (mutex_lock_killable_nested(&src_kvm->lock, SINGLE_DEPTH_NESTING)) - goto unlock_dst; - return 0; - -unlock_dst: - mutex_unlock(&dst_kvm->lock); -release_src: - atomic_set_release(&src_sev->migration_in_progress, 0); -release_dst: - atomic_set_release(&dst_sev->migration_in_progress, 0); - return r; -} - -static void sev_unlock_two_vms(struct kvm *dst_kvm, struct kvm *src_kvm) -{ - struct kvm_sev_info *dst_sev = &to_kvm_svm(dst_kvm)->sev_info; - struct kvm_sev_info *src_sev = &to_kvm_svm(src_kvm)->sev_info; - - mutex_unlock(&dst_kvm->lock); - mutex_unlock(&src_kvm->lock); - atomic_set_release(&dst_sev->migration_in_progress, 0); - atomic_set_release(&src_sev->migration_in_progress, 0); -} - -/* vCPU mutex subclasses. */ -enum sev_migration_role { - SEV_MIGRATION_SOURCE = 0, - SEV_MIGRATION_TARGET, - SEV_NR_MIGRATION_ROLES, -}; - -static int sev_lock_vcpus_for_migration(struct kvm *kvm, - enum sev_migration_role role) -{ - struct kvm_vcpu *vcpu; - unsigned long i, j; - - kvm_for_each_vcpu(i, vcpu, kvm) { - if (mutex_lock_killable_nested(&vcpu->mutex, role)) - goto out_unlock; - -#ifdef CONFIG_PROVE_LOCKING - if (!i) - /* - * Reset the role to one that avoids colliding with - * the role used for the first vcpu mutex. - */ - role = SEV_NR_MIGRATION_ROLES; - else - mutex_release(&vcpu->mutex.dep_map, _THIS_IP_); -#endif - } - - return 0; - -out_unlock: - - kvm_for_each_vcpu(j, vcpu, kvm) { - if (i == j) - break; - -#ifdef CONFIG_PROVE_LOCKING - if (j) - mutex_acquire(&vcpu->mutex.dep_map, role, 0, _THIS_IP_); -#endif - - mutex_unlock(&vcpu->mutex); - } - return -EINTR; -} - -static void sev_unlock_vcpus_for_migration(struct kvm *kvm) -{ - struct kvm_vcpu *vcpu; - unsigned long i; - bool first = true; - - kvm_for_each_vcpu(i, vcpu, kvm) { - if (first) - first = false; - else - mutex_acquire(&vcpu->mutex.dep_map, - SEV_NR_MIGRATION_ROLES, 0, _THIS_IP_); - - mutex_unlock(&vcpu->mutex); - } -} - static void sev_migrate_from(struct kvm *dst_kvm, struct kvm *src_kvm) { struct kvm_sev_info *dst = &to_kvm_svm(dst_kvm)->sev_info; @@ -1725,7 +1615,7 @@ * Note, the source is not required to have the same number of * vCPUs as the destination when migrating a vanilla SEV VM. */ - src_vcpu = kvm_get_vcpu(dst_kvm, i); + src_vcpu = kvm_get_vcpu(src_kvm, i); src_svm = to_svm(src_vcpu); /* @@ -1745,25 +1635,6 @@ } } -static int sev_check_source_vcpus(struct kvm *dst, struct kvm *src) -{ - struct kvm_vcpu *src_vcpu; - unsigned long i; - - if (!sev_es_guest(src)) - return 0; - - if (atomic_read(&src->online_vcpus) != atomic_read(&dst->online_vcpus)) - return -EINVAL; - - kvm_for_each_vcpu(i, src_vcpu, src) { - if (!src_vcpu->arch.guest_state_protected) - return -EINVAL; - } - - return 0; -} - int sev_vm_move_enc_context_from(struct kvm *kvm, unsigned int source_fd) { struct kvm_sev_info *dst_sev = &to_kvm_svm(kvm)->sev_info; @@ -1782,17 +1653,18 @@ } source_kvm = f.file->private_data; - ret = sev_lock_two_vms(kvm, source_kvm); + src_sev = &to_kvm_svm(source_kvm)->sev_info; + ret = pre_move_enc_context_from(kvm, source_kvm, + &dst_sev->migration_in_progress, + &src_sev->migration_in_progress); if (ret) goto out_fput; if (sev_guest(kvm) || !sev_guest(source_kvm)) { ret = -EINVAL; - goto out_unlock; + goto out_post; } - src_sev = &to_kvm_svm(source_kvm)->sev_info; - dst_sev->misc_cg = get_current_misc_cg(); cg_cleanup_sev = dst_sev; if (dst_sev->misc_cg != src_sev->misc_cg) { @@ -1802,34 +1674,21 @@ charged = true; } - ret = sev_lock_vcpus_for_migration(kvm, SEV_MIGRATION_SOURCE); - if (ret) - goto out_dst_cgroup; - ret = sev_lock_vcpus_for_migration(source_kvm, SEV_MIGRATION_TARGET); - if (ret) - goto out_dst_vcpu; - - ret = sev_check_source_vcpus(kvm, source_kvm); - if (ret) - goto out_source_vcpu; - sev_migrate_from(kvm, source_kvm); kvm_vm_dead(source_kvm); cg_cleanup_sev = src_sev; ret = 0; -out_source_vcpu: - sev_unlock_vcpus_for_migration(source_kvm); -out_dst_vcpu: - sev_unlock_vcpus_for_migration(kvm); out_dst_cgroup: /* Operates on the source on success, on the destination on failure. */ if (charged) sev_misc_cg_uncharge(cg_cleanup_sev); put_misc_cg(cg_cleanup_sev->misc_cg); cg_cleanup_sev->misc_cg = NULL; -out_unlock: - sev_unlock_two_vms(kvm, source_kvm); +out_post: + post_move_enc_context_from(kvm, source_kvm, + &dst_sev->migration_in_progress, + &src_sev->migration_in_progress); out_fput: fdput(f); return ret; @@ -2062,7 +1921,11 @@ } source_kvm = f.file->private_data; - ret = sev_lock_two_vms(kvm, source_kvm); + source_sev = &to_kvm_svm(source_kvm)->sev_info; + mirror_sev = &to_kvm_svm(kvm)->sev_info; + ret = lock_two_vms_for_migration(kvm, source_kvm, + &mirror_sev->migration_in_progress, + &source_sev->migration_in_progress); if (ret) goto e_source_fput; @@ -2082,9 +1945,7 @@ * The mirror kvm holds an enc_context_owner ref so its asid can't * disappear until we're done with it */ - source_sev = &to_kvm_svm(source_kvm)->sev_info; kvm_get_kvm(source_kvm); - mirror_sev = &to_kvm_svm(kvm)->sev_info; list_add_tail(&mirror_sev->mirror_entry, &source_sev->mirror_vms); /* Set enc_context_owner and copy its encryption context over */ @@ -2105,7 +1966,9 @@ */ e_unlock: - sev_unlock_two_vms(kvm, source_kvm); + unlock_two_vms_for_migration(kvm, source_kvm, + &mirror_sev->migration_in_progress, + &source_sev->migration_in_progress); e_source_fput: fdput(f); return ret; @@ -2881,7 +2744,10 @@ svm->sev_es.ghcb_sa); break; case SVM_VMGEXIT_NMI_COMPLETE: - ret = svm_invoke_exit_handler(vcpu, SVM_EXIT_IRET); + ++vcpu->stat.nmi_window_exits; + svm->nmi_masked = false; + kvm_make_request(KVM_REQ_EVENT, vcpu); + ret = 1; break; case SVM_VMGEXIT_AP_HLT_LOOP: ret = kvm_emulate_ap_reset_hold(vcpu); @@ -2942,6 +2808,32 @@ count, in); } +static void sev_es_vcpu_after_set_cpuid(struct vcpu_svm *svm) +{ + struct kvm_vcpu *vcpu = &svm->vcpu; + + if (boot_cpu_has(X86_FEATURE_V_TSC_AUX)) { + bool v_tsc_aux = guest_cpuid_has(vcpu, X86_FEATURE_RDTSCP) || + guest_cpuid_has(vcpu, X86_FEATURE_RDPID); + + set_msr_interception(vcpu, svm->msrpm, MSR_TSC_AUX, v_tsc_aux, v_tsc_aux); + } +} + +void sev_vcpu_after_set_cpuid(struct vcpu_svm *svm) +{ + struct kvm_vcpu *vcpu = &svm->vcpu; + struct kvm_cpuid_entry2 *best; + + /* For sev guests, the memory encryption bit is not reserved in CR3. */ + best = kvm_find_cpuid_entry(vcpu, 0x8000001F); + if (best) + vcpu->arch.reserved_gpa_bits &= ~(1UL << (best->ebx & 0x3f)); + + if (sev_es_guest(svm->vcpu.kvm)) + sev_es_vcpu_after_set_cpuid(svm); +} + static void sev_es_init_vmcb(struct vcpu_svm *svm) { struct kvm_vcpu *vcpu = &svm->vcpu; @@ -2952,9 +2844,12 @@ /* * An SEV-ES guest requires a VMSA area that is a separate from the * VMCB page. Do not include the encryption mask on the VMSA physical - * address since hardware will access it using the guest key. + * address since hardware will access it using the guest key. Note, + * the VMSA will be NULL if this vCPU is the destination for intrahost + * migration, and will be copied later. */ - svm->vmcb->control.vmsa_pa = __pa(svm->sev_es.vmsa); + if (svm->sev_es.vmsa) + svm->vmcb->control.vmsa_pa = __pa(svm->sev_es.vmsa); /* Can't intercept CR register access, HV can't modify CR registers */ svm_clr_intercept(svm, INTERCEPT_CR0_READ); @@ -2985,14 +2880,6 @@ set_msr_interception(vcpu, svm->msrpm, MSR_IA32_LASTBRANCHTOIP, 1, 1); set_msr_interception(vcpu, svm->msrpm, MSR_IA32_LASTINTFROMIP, 1, 1); set_msr_interception(vcpu, svm->msrpm, MSR_IA32_LASTINTTOIP, 1, 1); - - if (boot_cpu_has(X86_FEATURE_V_TSC_AUX) && - (guest_cpuid_has(&svm->vcpu, X86_FEATURE_RDTSCP) || - guest_cpuid_has(&svm->vcpu, X86_FEATURE_RDPID))) { - set_msr_interception(vcpu, svm->msrpm, MSR_TSC_AUX, 1, 1); - if (guest_cpuid_has(&svm->vcpu, X86_FEATURE_RDTSCP)) - svm_clr_intercept(svm, INTERCEPT_RDTSCP); - } } void sev_init_vmcb(struct vcpu_svm *svm) --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/svm/svm.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/svm/svm.c @@ -365,6 +365,8 @@ svm->vmcb->control.int_state |= SVM_INTERRUPT_SHADOW_MASK; } +static bool svm_can_emulate_instruction(struct kvm_vcpu *vcpu, int emul_type, + void *insn, int insn_len); static int __svm_skip_emulated_instruction(struct kvm_vcpu *vcpu, bool commit_side_effects) @@ -385,6 +387,14 @@ } if (!svm->next_rip) { + /* + * FIXME: Drop this when kvm_emulate_instruction() does the + * right thing and treats "can't emulate" as outright failure + * for EMULTYPE_SKIP. + */ + if (!svm_can_emulate_instruction(vcpu, EMULTYPE_SKIP, NULL, 0)) + return 0; + if (unlikely(!commit_side_effects)) old_rflags = svm->vmcb->save.rflags; @@ -819,8 +829,7 @@ if (intercept == svm->x2avic_msrs_intercepted) return; - if (!x2avic_enabled || - !apic_x2apic_mode(svm->vcpu.arch.apic)) + if (!x2avic_enabled) return; for (i = 0; i < MAX_DIRECT_ACCESS_MSRS; i++) { @@ -2510,12 +2519,13 @@ { struct vcpu_svm *svm = to_svm(vcpu); + WARN_ON_ONCE(sev_es_guest(vcpu->kvm)); + ++vcpu->stat.nmi_window_exits; svm->awaiting_iret_completion = true; svm_clr_iret_intercept(svm); - if (!sev_es_guest(vcpu->kvm)) - svm->nmi_iret_rip = kvm_rip_read(vcpu); + svm->nmi_iret_rip = kvm_rip_read(vcpu); kvm_make_request(KVM_REQ_EVENT, vcpu); return 1; @@ -3918,12 +3928,11 @@ svm->soft_int_injected = false; /* - * If we've made progress since setting HF_IRET_MASK, we've + * If we've made progress since setting awaiting_iret_completion, we've * executed an IRET and can allow NMI injection. */ if (svm->awaiting_iret_completion && - (sev_es_guest(vcpu->kvm) || - kvm_rip_read(vcpu) != svm->nmi_iret_rip)) { + kvm_rip_read(vcpu) != svm->nmi_iret_rip) { svm->awaiting_iret_completion = false; svm->nmi_masked = false; kvm_make_request(KVM_REQ_EVENT, vcpu); @@ -4207,7 +4216,6 @@ static void svm_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) { struct vcpu_svm *svm = to_svm(vcpu); - struct kvm_cpuid_entry2 *best; vcpu->arch.xsaves_enabled = guest_cpuid_has(vcpu, X86_FEATURE_XSAVE) && boot_cpu_has(X86_FEATURE_XSAVE) && @@ -4242,12 +4250,8 @@ set_msr_interception(vcpu, svm->msrpm, MSR_IA32_FLUSH_CMD, 0, !!guest_cpuid_has(vcpu, X86_FEATURE_FLUSH_L1D)); - /* For sev guests, the memory encryption bit is not reserved in CR3. */ - if (sev_guest(vcpu->kvm)) { - best = kvm_find_cpuid_entry(vcpu, 0x8000001F); - if (best) - vcpu->arch.reserved_gpa_bits &= ~(1UL << (best->ebx & 0x3f)); - } + if (sev_guest(vcpu->kvm)) + sev_vcpu_after_set_cpuid(svm); init_vmcb_after_set_cpuid(vcpu); } @@ -4651,16 +4655,25 @@ * and cannot be decrypted by KVM, i.e. KVM would read cyphertext and * decode garbage. * - * Inject #UD if KVM reached this point without an instruction buffer. - * In practice, this path should never be hit by a well-behaved guest, - * e.g. KVM doesn't intercept #UD or #GP for SEV guests, but this path - * is still theoretically reachable, e.g. via unaccelerated fault-like - * AVIC access, and needs to be handled by KVM to avoid putting the - * guest into an infinite loop. Injecting #UD is somewhat arbitrary, - * but its the least awful option given lack of insight into the guest. + * If KVM is NOT trying to simply skip an instruction, inject #UD if + * KVM reached this point without an instruction buffer. In practice, + * this path should never be hit by a well-behaved guest, e.g. KVM + * doesn't intercept #UD or #GP for SEV guests, but this path is still + * theoretically reachable, e.g. via unaccelerated fault-like AVIC + * access, and needs to be handled by KVM to avoid putting the guest + * into an infinite loop. Injecting #UD is somewhat arbitrary, but + * its the least awful option given lack of insight into the guest. + * + * If KVM is trying to skip an instruction, simply resume the guest. + * If a #NPF occurs while the guest is vectoring an INT3/INTO, then KVM + * will attempt to re-inject the INT3/INTO and skip the instruction. + * In that scenario, retrying the INT3/INTO and hoping the guest will + * make forward progress is the only option that has a chance of + * success (and in practice it will work the vast majority of the time). */ if (unlikely(!insn)) { - kvm_queue_exception(vcpu, UD_VECTOR); + if (!(emul_type & EMULTYPE_SKIP)) + kvm_queue_exception(vcpu, UD_VECTOR); return false; } @@ -4771,6 +4784,12 @@ sev_vm_destroy(kvm); } +static bool svm_is_vm_type_supported(unsigned long type) +{ + /* FIXME: Check if CPU is capable of SEV-SNP. */ + return __kvm_is_vm_type_supported(type); +} + static int svm_vm_init(struct kvm *kvm) { if (!pause_filter_count || !pause_filter_thresh) @@ -4799,6 +4818,7 @@ .vcpu_free = svm_vcpu_free, .vcpu_reset = svm_vcpu_reset, + .is_vm_type_supported = svm_is_vm_type_supported, .vm_size = sizeof(struct kvm_svm), .vm_init = svm_vm_init, .vm_destroy = svm_vm_destroy, @@ -4915,6 +4935,7 @@ .complete_emulated_msr = svm_complete_emulated_msr, .vcpu_deliver_sipi_vector = svm_vcpu_deliver_sipi_vector, + .vcpu_deliver_init = kvm_vcpu_deliver_init, .vcpu_get_apicv_inhibit_reasons = avic_vcpu_get_apicv_inhibit_reasons, }; --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/svm/svm.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/svm/svm.h @@ -733,6 +733,7 @@ void sev_hardware_unsetup(void); int sev_cpu_init(struct svm_cpu_data *sd); void sev_init_vmcb(struct vcpu_svm *svm); +void sev_vcpu_after_set_cpuid(struct vcpu_svm *svm); void sev_free_vcpu(struct kvm_vcpu *vcpu); int sev_handle_vmgexit(struct kvm_vcpu *vcpu); int sev_es_string_io(struct vcpu_svm *svm, int size, unsigned int port, int in); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/trace.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/trace.h @@ -8,6 +8,8 @@ #include #include +#include "vmx/tdx_arch.h" + #undef TRACE_SYSTEM #define TRACE_SYSTEM kvm @@ -146,7 +148,242 @@ __entry->a3, __entry->a4, __entry->a5) ); +#define TDG_VP_VMCALL_NAME(x) {x, #x} + +#define kvm_trace_symbol_tdvmcall \ + TDG_VP_VMCALL_NAME(EXIT_REASON_CPUID), \ + TDG_VP_VMCALL_NAME(EXIT_REASON_HLT), \ + TDG_VP_VMCALL_NAME(EXIT_REASON_IO_INSTRUCTION), \ + TDG_VP_VMCALL_NAME(EXIT_REASON_EPT_VIOLATION), \ + TDG_VP_VMCALL_NAME(EXIT_REASON_MSR_READ), \ + TDG_VP_VMCALL_NAME(EXIT_REASON_MSR_WRITE), \ + TDG_VP_VMCALL_NAME(TDG_VP_VMCALL_GET_TD_VM_CALL_INFO), \ + TDG_VP_VMCALL_NAME(TDG_VP_VMCALL_MAP_GPA), \ + TDG_VP_VMCALL_NAME(TDG_VP_VMCALL_GET_QUOTE), \ + TDG_VP_VMCALL_NAME(TDG_VP_VMCALL_REPORT_FATAL_ERROR), \ + TDG_VP_VMCALL_NAME(TDG_VP_VMCALL_SETUP_EVENT_NOTIFY_INTERRUPT) + +TRACE_EVENT(kvm_tdx_hypercall, + TP_PROTO(__u64 subfunction, __u64 reg_mask, __u64 r12, __u64 r13, + __u64 r14, __u64 rbx, __u64 rdi, __u64 rsi, __u64 r8, __u64 r9, + __u64 rdx), + + TP_ARGS(subfunction, reg_mask, r12, r13, r14, rbx, rdi, rsi, r8, r9, rdx), + + TP_STRUCT__entry( + __field( __u64, subfunction ) + __field( __u64, reg_mask ) + __field( __u64, r12 ) + __field( __u64, r13 ) + __field( __u64, r14 ) + __field( __u64, rbx ) + __field( __u64, rdi ) + __field( __u64, rsi ) + __field( __u64, r8 ) + __field( __u64, r9 ) + __field( __u64, rdx ) + ), + + TP_fast_assign( + __entry->subfunction = subfunction; + __entry->reg_mask = reg_mask; + __entry->r12 = r12; + __entry->r13 = r13; + __entry->r14 = r14; + __entry->rbx = rbx; + __entry->rdi = rdi; + __entry->rsi = rsi; + __entry->r8 = r8; + __entry->r9 = r9; + __entry->rdx = rdx; + ), + + TP_printk("%s reg_mask 0x%llx r12 0x%llx r13 0x%llx r14 0x%llx " + "rbx 0x%llx rdi 0x%llx rsi 0x%llx r8 0x%llx r9 0x%llx " + "rdx 0x%llx", + __print_symbolic(__entry->subfunction, + kvm_trace_symbol_tdvmcall), + __entry->reg_mask, __entry->r12, __entry->r13, __entry->r14, + __entry->rbx, __entry->rdi, __entry->rsi, __entry->r8, + __entry->r9, __entry->rdx) +); + +TRACE_EVENT(kvm_tdx_hypercall_done, + TP_PROTO(int r, __u64 subfunction, __u64 status_code, __u64 r12, __u64 r13, + __u64 r14, __u64 rbx, __u64 rdi, __u64 rsi, __u64 r8, __u64 r9, + __u64 rdx), + TP_ARGS(r, subfunction, status_code, r12, r13, r14, rbx, rdi, rsi, r8, r9, rdx), + + TP_STRUCT__entry( + __field( int, r ) + __field( __u64, subfunction ) + __field( __u64, status_code ) + __field( __u64, r12 ) + __field( __u64, r13 ) + __field( __u64, r14 ) + __field( __u64, rbx ) + __field( __u64, rdi ) + __field( __u64, rsi ) + __field( __u64, r8 ) + __field( __u64, r9 ) + __field( __u64, rdx ) + ), + + TP_fast_assign( + __entry->r = r; + __entry->subfunction = subfunction; + __entry->status_code = status_code; + __entry->r12 = r12; + __entry->r13 = r13; + __entry->r14 = r14; + __entry->rbx = rbx; + __entry->rdi = rdi; + __entry->rsi = rsi; + __entry->r8 = r8; + __entry->r9 = r9; + __entry->rdx = rdx; + ), + + TP_printk("%s r 0x%x status_code 0x%llx r12 0x%llx r13 0x%llx r14 0x%llx " + "rbx 0x%llx rdi 0x%llx rsi 0x%llx r8 0x%llx r9 0x%llx " + "rdx 0x%llx", + __print_symbolic(__entry->subfunction, + kvm_trace_symbol_tdvmcall), + __entry->r, __entry->status_code, + __entry->r12, __entry->r13, __entry->r14, __entry->rbx, + __entry->rdi, __entry->rsi, __entry->r8, __entry->r9, + __entry->rdx) +); + +TRACE_EVENT(kvm_tdx_sept_add, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level), + TP_ARGS(tdr, gfn, pfn, level), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + ), + + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level) +); + +TRACE_EVENT(kvm_tdx_sept_remove, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level), + TP_ARGS(tdr, gfn, pfn, level), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + ), + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level) +); + +TRACE_EVENT(kvm_tdx_page_add, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level), + TP_ARGS(tdr, gfn, pfn, level), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + ), + + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level) +); + +TRACE_EVENT(kvm_tdx_page_remove, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level), + TP_ARGS(tdr, gfn, pfn, level), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + ), + + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level) +); + +TRACE_EVENT(kvm_tdx_page_promote, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level, int ret), + TP_ARGS(tdr, gfn, pfn, level, ret), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + __field( int, ret) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + __entry->ret = ret; + ), + + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d ret %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level, ret) +); + +TRACE_EVENT(kvm_tdx_page_demote, + TP_PROTO(u64 tdr, u64 gfn, u64 pfn, unsigned int level, int ret), + TP_ARGS(tdr, gfn, pfn, level, ret), + + TP_STRUCT__entry( + __field( u64, tdr) + __field( u64, gfn) + __field( u64, pfn) + __field( unsigned int, level) + __field( int, ret) + ), + TP_fast_assign( + __entry->tdr = tdr; + __entry->gfn = gfn; + __entry->pfn = pfn; + __entry->level = level; + __entry->ret = ret; + ), + + TP_printk("tdr %llx gfn 0x%016llx pfn 0x%016llx level %d ret %d", + __entry->tdr, __entry->gfn, __entry->pfn, __entry->level, __entry->ret) +); /* * Tracepoint for PIO. --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/common.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/common.h @@ -0,0 +1,170 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ +#ifndef __KVM_X86_VMX_COMMON_H +#define __KVM_X86_VMX_COMMON_H + +#include + +#include + +#include "posted_intr.h" +#include "mmu.h" +#include "vmcs.h" +#include "x86.h" + +extern unsigned long vmx_host_idt_base; +void vmx_do_interrupt_irqoff(unsigned long entry); +void vmx_do_nmi_irqoff(void); + +static inline void vmx_handle_nm_fault_irqoff(struct kvm_vcpu *vcpu) +{ + /* + * Save xfd_err to guest_fpu before interrupt is enabled, so the + * MSR value is not clobbered by the host activity before the guest + * has chance to consume it. + * + * Do not blindly read xfd_err here, since this exception might + * be caused by L1 interception on a platform which doesn't + * support xfd at all. + * + * Do it conditionally upon guest_fpu::xfd. xfd_err matters + * only when xfd contains a non-zero value. + * + * Queuing exception is done in vmx_handle_exit. See comment there. + */ + if (vcpu->arch.guest_fpu.fpstate->xfd) + rdmsrl(MSR_IA32_XFD_ERR, vcpu->arch.guest_fpu.xfd_err); +} + +static inline void vmx_handle_exception_irqoff(struct kvm_vcpu *vcpu, + u32 intr_info) +{ + /* if exit due to PF check for async PF */ + if (is_page_fault(intr_info)) + vcpu->arch.apf.host_apf_flags = kvm_read_and_reset_apf_flags(); + /* if exit due to NM, handle before interrupts are enabled */ + else if (is_nm_fault(intr_info)) + vmx_handle_nm_fault_irqoff(vcpu); + /* Handle machine checks before interrupts are enabled */ + else if (is_machine_check(intr_info)) + kvm_machine_check(); +} + +static inline void vmx_handle_external_interrupt_irqoff(struct kvm_vcpu *vcpu, + u32 intr_info) +{ + unsigned int vector = intr_info & INTR_INFO_VECTOR_MASK; + gate_desc *desc = (gate_desc *)vmx_host_idt_base + vector; + + if (KVM_BUG(!is_external_intr(intr_info), vcpu->kvm, + "unexpected VM-Exit interrupt info: 0x%x", intr_info)) + return; + + kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ); + vmx_do_interrupt_irqoff(gate_offset(desc)); + kvm_after_interrupt(vcpu); + + vcpu->arch.at_instruction_boundary = true; +} + +static inline int __vmx_handle_ept_violation(struct kvm_vcpu *vcpu, gpa_t gpa, + unsigned long exit_qualification, + int err_page_level) +{ + u64 error_code; + + /* Is it a read fault? */ + error_code = (exit_qualification & EPT_VIOLATION_ACC_READ) + ? PFERR_USER_MASK : 0; + /* Is it a write fault? */ + error_code |= (exit_qualification & EPT_VIOLATION_ACC_WRITE) + ? PFERR_WRITE_MASK : 0; + /* Is it a fetch fault? */ + error_code |= (exit_qualification & EPT_VIOLATION_ACC_INSTR) + ? PFERR_FETCH_MASK : 0; + /* ept page table entry is present? */ + error_code |= (exit_qualification & EPT_VIOLATION_RWX_MASK) + ? PFERR_PRESENT_MASK : 0; + + error_code |= (exit_qualification & EPT_VIOLATION_GVA_TRANSLATED) != 0 ? + PFERR_GUEST_FINAL_MASK : PFERR_GUEST_PAGE_MASK; + + if (kvm_is_private_gpa(vcpu->kvm, gpa)) + error_code |= PFERR_GUEST_ENC_MASK; + + if (err_page_level > PG_LEVEL_NONE) + error_code |= (err_page_level << PFERR_LEVEL_START_BIT) & PFERR_LEVEL_MASK; + + return kvm_mmu_page_fault(vcpu, gpa, error_code, NULL, 0); +} + +static inline void kvm_vcpu_trigger_posted_interrupt(struct kvm_vcpu *vcpu, + int pi_vec) +{ +#ifdef CONFIG_SMP + if (vcpu->mode == IN_GUEST_MODE) { + /* + * The vector of the virtual has already been set in the PIR. + * Send a notification event to deliver the virtual interrupt + * unless the vCPU is the currently running vCPU, i.e. the + * event is being sent from a fastpath VM-Exit handler, in + * which case the PIR will be synced to the vIRR before + * re-entering the guest. + * + * When the target is not the running vCPU, the following + * possibilities emerge: + * + * Case 1: vCPU stays in non-root mode. Sending a notification + * event posts the interrupt to the vCPU. + * + * Case 2: vCPU exits to root mode and is still runnable. The + * PIR will be synced to the vIRR before re-entering the guest. + * Sending a notification event is ok as the host IRQ handler + * will ignore the spurious event. + * + * Case 3: vCPU exits to root mode and is blocked. vcpu_block() + * has already synced PIR to vIRR and never blocks the vCPU if + * the vIRR is not empty. Therefore, a blocked vCPU here does + * not wait for any requested interrupts in PIR, and sending a + * notification event also results in a benign, spurious event. + */ + + if (vcpu != kvm_get_running_vcpu()) + apic->send_IPI_mask(get_cpu_mask(vcpu->cpu), pi_vec); + return; + } +#endif + /* + * The vCPU isn't in the guest; wake the vCPU in case it is blocking, + * otherwise do nothing as KVM will grab the highest priority pending + * IRQ via ->sync_pir_to_irr() in vcpu_enter_guest(). + */ + kvm_vcpu_wake_up(vcpu); +} + +/* + * Send interrupt to vcpu via posted interrupt way. + * 1. If target vcpu is running(non-root mode), send posted interrupt + * notification to vcpu and hardware will sync PIR to vIRR atomically. + * 2. If target vcpu isn't running(root mode), kick it to pick up the + * interrupt from PIR in next vmentry. + */ +static inline void __vmx_deliver_posted_interrupt(struct kvm_vcpu *vcpu, + struct pi_desc *pi_desc, int vector) +{ + if (pi_test_and_set_pir(vector, pi_desc)) + return; + + /* If a previous notification has sent the IPI, nothing to do. */ + if (pi_test_and_set_on(pi_desc)) + return; + + /* + * The implied barrier in pi_test_and_set_on() pairs with the smp_mb_*() + * after setting vcpu->mode in vcpu_enter_guest(), thus the vCPU is + * guaranteed to see PID.ON=1 and sync the PIR to IRR if triggering a + * posted interrupt "fails" because vcpu->mode != IN_GUEST_MODE. + */ + kvm_vcpu_trigger_posted_interrupt(vcpu, POSTED_INTR_VECTOR); +} + +#endif /* __KVM_X86_VMX_COMMON_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/main.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/main.c @@ -0,0 +1,1261 @@ +// SPDX-License-Identifier: GPL-2.0 +#include + +#include "x86_ops.h" +#include "vmx.h" +#include "nested.h" +#include "mmu.h" +#include "pmu.h" +#include "tdx.h" +#include "tdx_arch.h" + +static bool enable_tdx __ro_after_init = 1; +module_param_named(tdx, enable_tdx, bool, 0444); + +static bool vt_is_vm_type_supported(unsigned long type) +{ + return __kvm_is_vm_type_supported(type) || + (enable_tdx && tdx_is_vm_type_supported(type)); +} + +static int vt_max_vcpus(struct kvm *kvm) +{ + if (!kvm) + return KVM_MAX_VCPUS; + + if (is_td(kvm)) + return min3(kvm->max_vcpus, KVM_MAX_VCPUS, TDX_MAX_VCPUS); + + return kvm->max_vcpus; +} + +static int vt_flush_remote_tlbs(struct kvm *kvm); +static int vt_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages); + +static int vt_hardware_enable(void) +{ + int ret; + + ret = vmx_hardware_enable(); + if (ret || !enable_tdx) + return ret; + + ret = tdx_cpu_enable(); + if (ret) + vmx_hardware_disable(); + return ret; +} + +static void vt_hardware_disable(void) +{ + /* Note, TDX *and* VMX need to be disabled if TDX is enabled. */ + if (enable_tdx) + tdx_hardware_disable(); + vmx_hardware_disable(); +} + +static __init int vt_hardware_setup(void) +{ + int ret; + + ret = vmx_hardware_setup(); + if (ret) + return ret; + + /* + * As kvm_mmu_set_ept_masks() updates enable_mmio_caching, call it + * before checking enable_mmio_caching. + */ + if (enable_ept) + kvm_mmu_set_ept_masks(enable_ept_ad_bits, + cpu_has_vmx_ept_execute_only()); + /* TDX requires KVM TDP MMU. */ + if (enable_tdx && !tdp_enabled) { + enable_tdx = false; + pr_warn_ratelimited("TDX requires TDP MMU. Please enable TDP MMU for TDX.\n"); + } + + /* TDX requires MMIO caching. */ + if (enable_tdx && !enable_mmio_caching) { + enable_tdx = false; + pr_warn_ratelimited("TDX requires mmio caching. Please enable mmio caching for TDX.\n"); + } + + /* + * TDX KVM overrides flush_remote_tlbs method and assumes + * flush_remote_tlbs_range = NULL that falls back to + * flush_remote_tlbs. Disable TDX if there are conflicts. + */ + if (vt_x86_ops.flush_remote_tlbs || + vt_x86_ops.flush_remote_tlbs_range) { + enable_tdx = false; + pr_warn_ratelimited("TDX requires baremetal. Not Supported on VMM guest.\n"); + } + + enable_tdx = enable_tdx && !tdx_hardware_setup(&vt_x86_ops); + + if (enable_tdx) { + vt_x86_ops.flush_remote_tlbs = vt_flush_remote_tlbs; + vt_x86_ops.flush_remote_tlbs_range = vt_flush_remote_tlbs_range; + } else + vt_x86_ops.protected_apic_has_interrupt = NULL; + + return 0; +} + +static int vt_vm_enable_cap(struct kvm *kvm, struct kvm_enable_cap *cap) +{ + if (is_td(kvm)) + return tdx_vm_enable_cap(kvm, cap); + + return -EINVAL; +} + +static void vt_hardware_unsetup(void) +{ + if (enable_tdx) + tdx_hardware_unsetup(); + vmx_hardware_unsetup(); +} + +static int vt_vm_init(struct kvm *kvm) +{ + if (is_td(kvm)) + return tdx_vm_init(kvm); + + return vmx_vm_init(kvm); +} + +static void vt_flush_shadow_all_private(struct kvm *kvm) +{ + if (is_td(kvm)) + tdx_mmu_release_hkid(kvm); +} + +static void vt_vm_destroy(struct kvm *kvm) +{ + if (is_td(kvm)) + return; + + vmx_vm_destroy(kvm); +} + +static void vt_vm_free(struct kvm *kvm) +{ + if (is_td(kvm)) + tdx_vm_free(kvm); +} + +static int vt_vcpu_precreate(struct kvm *kvm) +{ + if (is_td(kvm)) + return 0; + + return vmx_vcpu_precreate(kvm); +} + +static int vt_vcpu_create(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return tdx_vcpu_create(vcpu); + + return vmx_vcpu_create(vcpu); +} + +static void vt_vcpu_free(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_vcpu_free(vcpu); + return; + } + + vmx_vcpu_free(vcpu); +} + +static void vt_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) +{ + if (is_td_vcpu(vcpu)) { + tdx_vcpu_reset(vcpu, init_event); + return; + } + + vmx_vcpu_reset(vcpu, init_event); +} + +static void vt_prepare_switch_to_guest(struct kvm_vcpu *vcpu) +{ + /* + * All host state is saved/restored across SEAMCALL/SEAMRET, and the + * guest state of a TD is obviously off limits. Deferring MSRs and DRs + * is pointless because the TDX module needs to load *something* so as + * not to expose guest state. + */ + if (is_td_vcpu(vcpu)) { + tdx_prepare_switch_to_guest(vcpu); + return; + } + + vmx_prepare_switch_to_guest(vcpu); +} + +static void vt_vcpu_put(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_vcpu_put(vcpu); + return; + } + + vmx_vcpu_put(vcpu); +} + +static int vt_vcpu_pre_run(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + /* Unconditionally continue to vcpu_run(). */ + return 1; + + return vmx_vcpu_pre_run(vcpu); +} + +static fastpath_t vt_vcpu_run(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return tdx_vcpu_run(vcpu); + + return vmx_vcpu_run(vcpu); +} + +static void vt_vcpu_load(struct kvm_vcpu *vcpu, int cpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_vcpu_load(vcpu, cpu); + return; + } + + vmx_vcpu_load(vcpu, cpu); +} + +static bool vt_protected_apic_has_interrupt(struct kvm_vcpu *vcpu) +{ + KVM_BUG_ON(!is_td_vcpu(vcpu), vcpu->kvm); + + return tdx_protected_apic_has_interrupt(vcpu); +} + +static int vt_handle_exit(struct kvm_vcpu *vcpu, + enum exit_fastpath_completion fastpath) +{ + if (is_td_vcpu(vcpu)) + return tdx_handle_exit(vcpu, fastpath); + + return vmx_handle_exit(vcpu, fastpath); +} + +static void vt_handle_exit_irqoff(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_handle_exit_irqoff(vcpu); + return; + } + + vmx_handle_exit_irqoff(vcpu); +} + +static int vt_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) +{ + if (unlikely(is_td_vcpu(vcpu))) + return tdx_set_msr(vcpu, msr_info); + + return vmx_set_msr(vcpu, msr_info); +} + +/* + * The kvm parameter can be NULL (module initialization, or invocation before + * VM creation). Be sure to check the kvm parameter before using it. + */ +static bool vt_has_emulated_msr(struct kvm *kvm, u32 index) +{ + if (kvm && is_td(kvm)) + return tdx_has_emulated_msr(index, true); + + return vmx_has_emulated_msr(kvm, index); +} + +static int vt_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) +{ + if (unlikely(is_td_vcpu(vcpu))) + return tdx_get_msr(vcpu, msr_info); + + return vmx_get_msr(vcpu, msr_info); +} + +static void vt_msr_filter_changed(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_msr_filter_changed(vcpu); +} + +#ifdef CONFIG_KVM_SMM +static int vt_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection) +{ + if (is_td_vcpu(vcpu)) + return tdx_smi_allowed(vcpu, for_injection); + + return vmx_smi_allowed(vcpu, for_injection); +} + +static int vt_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram) +{ + if (unlikely(is_td_vcpu(vcpu))) + return tdx_enter_smm(vcpu, smram); + + return vmx_enter_smm(vcpu, smram); +} + +static int vt_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram) +{ + if (unlikely(is_td_vcpu(vcpu))) + return tdx_leave_smm(vcpu, smram); + + return vmx_leave_smm(vcpu, smram); +} + +static void vt_enable_smi_window(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_enable_smi_window(vcpu); + return; + } + + /* RSM will cause a vmexit anyway. */ + vmx_enable_smi_window(vcpu); +} +#endif + +static bool vt_can_emulate_instruction(struct kvm_vcpu *vcpu, int emul_type, + void *insn, int insn_len) +{ + if (is_td_vcpu(vcpu)) + return false; + + return vmx_can_emulate_instruction(vcpu, emul_type, insn, insn_len); +} + +static int vt_check_intercept(struct kvm_vcpu *vcpu, + struct x86_instruction_info *info, + enum x86_intercept_stage stage, + struct x86_exception *exception) +{ + /* + * This call back is triggered by the x86 instruction emulator. TDX + * doesn't allow guest memory inspection. + */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return X86EMUL_UNHANDLEABLE; + + return vmx_check_intercept(vcpu, info, stage, exception); +} + +static bool vt_apic_init_signal_blocked(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return true; + + return vmx_apic_init_signal_blocked(vcpu); +} + +static void vt_set_virtual_apic_mode(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return tdx_set_virtual_apic_mode(vcpu); + + return vmx_set_virtual_apic_mode(vcpu); +} + +static void vt_apicv_post_state_restore(struct kvm_vcpu *vcpu) +{ + struct pi_desc *pi = vcpu_to_pi_desc(vcpu); + + pi_clear_on(pi); + memset(pi->pir, 0, sizeof(pi->pir)); +} + +static void vt_hwapic_irr_update(struct kvm_vcpu *vcpu, int max_irr) +{ + if (is_td_vcpu(vcpu)) + return; + + return vmx_hwapic_irr_update(vcpu, max_irr); +} + +static void vt_hwapic_isr_update(int max_isr) +{ + if (is_td_vcpu(kvm_get_running_vcpu())) + return; + + return vmx_hwapic_isr_update(max_isr); +} + +static bool vt_guest_apic_has_interrupt(struct kvm_vcpu *vcpu) +{ + /* TDX doesn't support L2 at the moment. */ + if (WARN_ON_ONCE(is_td_vcpu(vcpu))) + return false; + + return vmx_guest_apic_has_interrupt(vcpu); +} + +static int vt_sync_pir_to_irr(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return -1; + + return vmx_sync_pir_to_irr(vcpu); +} + +static void vt_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector) +{ + if (is_td_vcpu(apic->vcpu)) { + tdx_deliver_interrupt(apic, delivery_mode, trig_mode, + vector); + return; + } + + vmx_deliver_interrupt(apic, delivery_mode, trig_mode, vector); +} + +static void vt_vcpu_deliver_sipi_vector(struct kvm_vcpu *vcpu, u8 vector) +{ + if (is_td_vcpu(vcpu)) + return; + + kvm_vcpu_deliver_sipi_vector(vcpu, vector); +} + +static void vt_vcpu_deliver_init(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + /* TDX doesn't support INIT. Ignore INIT event */ + vcpu->arch.mp_state = KVM_MP_STATE_RUNNABLE; + return; + } + + kvm_vcpu_deliver_init(vcpu); +} + +static int vt_vcpu_check_cpuid(struct kvm_vcpu *vcpu, + struct kvm_cpuid_entry2 *e2, int nent) +{ + if (is_td_vcpu(vcpu)) + return tdx_vcpu_check_cpuid(vcpu, e2, nent); + + return 0; +} + +static void vt_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_vcpu_after_set_cpuid(vcpu); +} + +static void vt_update_exception_bitmap(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_update_exception_bitmap(vcpu); +} + +static u64 vt_get_segment_base(struct kvm_vcpu *vcpu, int seg) +{ + if (is_td_vcpu(vcpu)) + return tdx_get_segment_base(vcpu, seg); + + return vmx_get_segment_base(vcpu, seg); +} + +static void vt_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, + int seg) +{ + if (is_td_vcpu(vcpu)) { + tdx_get_segment(vcpu, var, seg); + return; + } + + vmx_get_segment(vcpu, var, seg); +} + +static void vt_set_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, + int seg) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_segment(vcpu, var, seg); +} + +static int vt_get_cpl(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return tdx_get_cpl(vcpu); + + return vmx_get_cpl(vcpu); +} + +static void vt_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l) +{ + if (is_td_vcpu(vcpu)) { + *db = 0; + *l = 0; + return; + } + + vmx_get_cs_db_l_bits(vcpu, db, l); +} + +static bool vt_is_valid_cr0(struct kvm_vcpu *vcpu, unsigned long cr0) +{ + if (is_td_vcpu(vcpu)) + return true; + + return vmx_is_valid_cr0(vcpu, cr0); +} + +static void vt_set_cr0(struct kvm_vcpu *vcpu, unsigned long cr0) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_cr0(vcpu, cr0); +} + +static bool vt_is_valid_cr4(struct kvm_vcpu *vcpu, unsigned long cr4) +{ + if (is_td_vcpu(vcpu)) + return true; + + return vmx_is_valid_cr4(vcpu, cr4); +} + +static void vt_set_cr4(struct kvm_vcpu *vcpu, unsigned long cr4) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_cr4(vcpu, cr4); +} + +static int vt_set_efer(struct kvm_vcpu *vcpu, u64 efer) +{ + if (is_td_vcpu(vcpu)) + return 0; + + return vmx_set_efer(vcpu, efer); +} + +static void vt_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +{ + if (is_td_vcpu(vcpu)) { + memset(dt, 0, sizeof(*dt)); + return; + } + + vmx_get_idt(vcpu, dt); +} + +static void vt_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_idt(vcpu, dt); +} + +static void vt_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +{ + if (is_td_vcpu(vcpu)) { + memset(dt, 0, sizeof(*dt)); + return; + } + + vmx_get_gdt(vcpu, dt); +} + +static void vt_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_gdt(vcpu, dt); +} + +static void vt_set_dr7(struct kvm_vcpu *vcpu, unsigned long val) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_dr7(vcpu, val); +} + +static void vt_sync_dirty_debug_regs(struct kvm_vcpu *vcpu) +{ + /* + * MOV-DR exiting is always cleared for TD guest, even in debug mode. + * Thus KVM_DEBUGREG_WONT_EXIT can never be set and it should never + * reach here for TD vcpu. + */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return; + + vmx_sync_dirty_debug_regs(vcpu); +} + +static void vt_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg) +{ + if (is_td_vcpu(vcpu)) { + tdx_cache_reg(vcpu, reg); + return; + } + + vmx_cache_reg(vcpu, reg); +} + +static unsigned long vt_get_rflags(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return tdx_get_rflags(vcpu); + + return vmx_get_rflags(vcpu); +} + +static void vt_set_rflags(struct kvm_vcpu *vcpu, unsigned long rflags) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_rflags(vcpu, rflags); +} + +static bool vt_get_if_flag(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return false; + + return vmx_get_if_flag(vcpu); +} + +static void vt_flush_tlb_all(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_flush_tlb(vcpu); + return; + } + + vmx_flush_tlb_all(vcpu); +} + +static void vt_flush_tlb_current(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_flush_tlb_current(vcpu); + return; + } + + vmx_flush_tlb_current(vcpu); +} + +static int vt_flush_remote_tlbs(struct kvm *kvm) +{ + if (is_td(kvm)) + return tdx_sept_flush_remote_tlbs(kvm); + + /* + * fallback to KVM_REQ_TLB_FLUSH. + * See kvm_arch_flush_remote_tlb() and kvm_flush_remote_tlbs(). + */ + return -EOPNOTSUPP; +} + +static int vt_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages) +{ + if (is_td(kvm)) + return tdx_sept_flush_remote_tlbs_range(kvm, gfn, nr_pages); + + /* fallback to flush_remote_tlbs method */ + return -EOPNOTSUPP; +} + +static void vt_flush_tlb_gva(struct kvm_vcpu *vcpu, gva_t addr) +{ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return; + + vmx_flush_tlb_gva(vcpu, addr); +} + +static void vt_flush_tlb_guest(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_flush_tlb_guest(vcpu); +} + +static void vt_inject_nmi(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + tdx_inject_nmi(vcpu); + return; + } + + vmx_inject_nmi(vcpu); +} + +static int vt_nmi_allowed(struct kvm_vcpu *vcpu, bool for_injection) +{ + /* + * The TDX module manages NMI windows and NMI reinjection, and hides NMI + * blocking, all KVM can do is throw an NMI over the wall. + */ + if (is_td_vcpu(vcpu)) + return true; + + return vmx_nmi_allowed(vcpu, for_injection); +} + +static bool vt_get_nmi_mask(struct kvm_vcpu *vcpu) +{ + /* + * Assume NMIs are always unmasked. KVM could query PEND_NMI and treat + * NMIs as masked if a previous NMI is still pending, but SEAMCALLs are + * expensive and the end result is unchanged as the only relevant usage + * of get_nmi_mask() is to limit the number of pending NMIs, i.e. it + * only changes whether KVM or the TDX module drops an NMI. + */ + if (is_td_vcpu(vcpu)) + return false; + + return vmx_get_nmi_mask(vcpu); +} + +static void vt_set_nmi_mask(struct kvm_vcpu *vcpu, bool masked) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_nmi_mask(vcpu, masked); +} + +static void vt_enable_nmi_window(struct kvm_vcpu *vcpu) +{ + /* Refer the comment in vt_get_nmi_mask(). */ + if (is_td_vcpu(vcpu)) + return; + + vmx_enable_nmi_window(vcpu); +} + +static void vt_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, + int pgd_level) +{ + if (is_td_vcpu(vcpu)) { + tdx_load_mmu_pgd(vcpu, root_hpa, pgd_level); + return; + } + + vmx_load_mmu_pgd(vcpu, root_hpa, pgd_level); +} + +static void vt_sched_in(struct kvm_vcpu *vcpu, int cpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_sched_in(vcpu, cpu); +} + +static void vt_set_interrupt_shadow(struct kvm_vcpu *vcpu, int mask) +{ + if (is_td_vcpu(vcpu)) + return; + vmx_set_interrupt_shadow(vcpu, mask); +} + +static u32 vt_get_interrupt_shadow(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return 0; + + return vmx_get_interrupt_shadow(vcpu); +} + +static void vt_patch_hypercall(struct kvm_vcpu *vcpu, + unsigned char *hypercall) +{ + /* + * Because guest memory is protected, guest can't be patched. TD kernel + * is modified to use TDG.VP.VMCAL for hypercall. + */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return; + + vmx_patch_hypercall(vcpu, hypercall); +} + +static void vt_inject_irq(struct kvm_vcpu *vcpu, bool reinjected) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_inject_irq(vcpu, reinjected); +} + +static void vt_inject_exception(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_inject_exception(vcpu); +} + +static void vt_cancel_injection(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_cancel_injection(vcpu); +} + +static int vt_interrupt_allowed(struct kvm_vcpu *vcpu, bool for_injection) +{ + if (is_td_vcpu(vcpu)) + return true; + + return vmx_interrupt_allowed(vcpu, for_injection); +} + +static void vt_enable_irq_window(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_enable_irq_window(vcpu); +} + +static void vt_request_immediate_exit(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) { + __kvm_request_immediate_exit(vcpu); + return; + } + + vmx_request_immediate_exit(vcpu); +} + +static void vt_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, + u64 *info1, u64 *info2, u32 *intr_info, u32 *error_code) +{ + if (is_td_vcpu(vcpu)) { + tdx_get_exit_info(vcpu, reason, info1, info2, intr_info, + error_code); + return; + } + + vmx_get_exit_info(vcpu, reason, info1, info2, intr_info, error_code); +} + + +static void vt_update_cr8_intercept(struct kvm_vcpu *vcpu, int tpr, int irr) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_update_cr8_intercept(vcpu, tpr, irr); +} + +static void vt_set_apic_access_page_addr(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_set_apic_access_page_addr(vcpu); +} + +static void vt_refresh_apicv_exec_ctrl(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_refresh_apicv_exec_ctrl(vcpu); +} + +static void vt_load_eoi_exitmap(struct kvm_vcpu *vcpu, u64 *eoi_exit_bitmap) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_load_eoi_exitmap(vcpu, eoi_exit_bitmap); +} + +static int vt_set_tss_addr(struct kvm *kvm, unsigned int addr) +{ + if (is_td(kvm)) + return 0; + + return vmx_set_tss_addr(kvm, addr); +} + +static int vt_set_identity_map_addr(struct kvm *kvm, u64 ident_addr) +{ + if (is_td(kvm)) + return 0; + + return vmx_set_identity_map_addr(kvm, ident_addr); +} + +static u8 vt_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio) +{ + if (is_td_vcpu(vcpu)) + return tdx_get_mt_mask(vcpu, gfn, is_mmio); + + return vmx_get_mt_mask(vcpu, gfn, is_mmio); +} + +static u64 vt_get_l2_tsc_offset(struct kvm_vcpu *vcpu) +{ + /* TDX doesn't support L2 guest at the moment. */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return 0; + + return vmx_get_l2_tsc_offset(vcpu); +} + +static u64 vt_get_l2_tsc_multiplier(struct kvm_vcpu *vcpu) +{ + /* TDX doesn't support L2 guest at the moment. */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return 0; + + return vmx_get_l2_tsc_multiplier(vcpu); +} + +static void vt_write_tsc_offset(struct kvm_vcpu *vcpu, u64 offset) +{ + /* In TDX, tsc offset can't be changed. */ + if (is_td_vcpu(vcpu)) + return; + + vmx_write_tsc_offset(vcpu, offset); +} + +static void vt_write_tsc_multiplier(struct kvm_vcpu *vcpu, u64 multiplier) +{ + /* In TDX, tsc multiplier can't be changed. */ + if (is_td_vcpu(vcpu)) + return; + + vmx_write_tsc_multiplier(vcpu, multiplier); +} + +static void vt_update_cpu_dirty_logging(struct kvm_vcpu *vcpu) +{ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return; + + vmx_update_cpu_dirty_logging(vcpu); +} + +#ifdef CONFIG_X86_64 +static int vt_set_hv_timer(struct kvm_vcpu *vcpu, u64 guest_deadline_tsc, + bool *expired) +{ + /* VMX-preemption timer isn't available for TDX. */ + if (is_td_vcpu(vcpu)) + return -EINVAL; + + return vmx_set_hv_timer(vcpu, guest_deadline_tsc, expired); +} + +static void vt_cancel_hv_timer(struct kvm_vcpu *vcpu) +{ + /* VMX-preemption timer can't be set. See vt_set_hv_timer(). */ + if (KVM_BUG_ON(is_td_vcpu(vcpu), vcpu->kvm)) + return; + + vmx_cancel_hv_timer(vcpu); +} +#endif + +static void vt_setup_mce(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return; + + vmx_setup_mce(vcpu); +} + +static int vt_mem_enc_ioctl(struct kvm *kvm, void __user *argp) +{ + if (!is_td(kvm)) + return -ENOTTY; + + return tdx_vm_ioctl(kvm, argp); +} + +static int vt_vcpu_mem_enc_ioctl(struct kvm_vcpu *vcpu, void __user *argp) +{ + if (!is_td_vcpu(vcpu)) + return -EINVAL; + + return tdx_vcpu_ioctl(vcpu, argp); +} + +static int vt_move_enc_context_from(struct kvm *kvm, unsigned int source_fd) +{ + if (!is_td(kvm)) + return -ENOTTY; + + return tdx_vm_move_enc_context_from(kvm, source_fd); +} + +#define VMX_REQUIRED_APICV_INHIBITS \ + (BIT(APICV_INHIBIT_REASON_DISABLE)| \ + BIT(APICV_INHIBIT_REASON_ABSENT) | \ + BIT(APICV_INHIBIT_REASON_HYPERV) | \ + BIT(APICV_INHIBIT_REASON_BLOCKIRQ) | \ + BIT(APICV_INHIBIT_REASON_PHYSICAL_ID_ALIASED) | \ + BIT(APICV_INHIBIT_REASON_APIC_ID_MODIFIED) | \ + BIT(APICV_INHIBIT_REASON_APIC_BASE_MODIFIED) | \ + BIT(APICV_INHIBIT_REASON_TDX)) + +struct kvm_x86_ops vt_x86_ops __initdata = { + .name = KBUILD_MODNAME, + + .check_processor_compatibility = vmx_check_processor_compat, + + .hardware_unsetup = vt_hardware_unsetup, + .offline_cpu = tdx_offline_cpu, + + .hardware_enable = vt_hardware_enable, + .hardware_disable = vt_hardware_disable, + .has_emulated_msr = vt_has_emulated_msr, + + .is_vm_type_supported = vt_is_vm_type_supported, + .max_vcpus = vt_max_vcpus, + .vm_size = sizeof(struct kvm_vmx), + .vm_enable_cap = vt_vm_enable_cap, + .vm_init = vt_vm_init, + .flush_shadow_all_private = vt_flush_shadow_all_private, + .vm_destroy = vt_vm_destroy, + .vm_free = vt_vm_free, + + .vcpu_precreate = vt_vcpu_precreate, + .vcpu_create = vt_vcpu_create, + .vcpu_free = vt_vcpu_free, + .vcpu_reset = vt_vcpu_reset, + + .prepare_switch_to_guest = vt_prepare_switch_to_guest, + .vcpu_load = vt_vcpu_load, + .vcpu_put = vt_vcpu_put, + + .update_exception_bitmap = vt_update_exception_bitmap, + .get_msr_feature = vmx_get_msr_feature, + .get_msr = vt_get_msr, + .set_msr = vt_set_msr, + .get_segment_base = vt_get_segment_base, + .get_segment = vt_get_segment, + .set_segment = vt_set_segment, + .get_cpl = vt_get_cpl, + .get_cs_db_l_bits = vt_get_cs_db_l_bits, + .is_valid_cr0 = vt_is_valid_cr0, + .set_cr0 = vt_set_cr0, + .is_valid_cr4 = vt_is_valid_cr4, + .set_cr4 = vt_set_cr4, + .set_efer = vt_set_efer, + .get_idt = vt_get_idt, + .set_idt = vt_set_idt, + .get_gdt = vt_get_gdt, + .set_gdt = vt_set_gdt, + .set_dr7 = vt_set_dr7, + .sync_dirty_debug_regs = vt_sync_dirty_debug_regs, + .cache_reg = vt_cache_reg, + .get_rflags = vt_get_rflags, + .set_rflags = vt_set_rflags, + .get_if_flag = vt_get_if_flag, + + .flush_tlb_all = vt_flush_tlb_all, + .flush_tlb_current = vt_flush_tlb_current, + .flush_tlb_gva = vt_flush_tlb_gva, + .flush_tlb_guest = vt_flush_tlb_guest, + + .vcpu_pre_run = vt_vcpu_pre_run, + .vcpu_run = vt_vcpu_run, + .handle_exit = vt_handle_exit, + .skip_emulated_instruction = vmx_skip_emulated_instruction, + .update_emulated_instruction = vmx_update_emulated_instruction, + .set_interrupt_shadow = vt_set_interrupt_shadow, + .get_interrupt_shadow = vt_get_interrupt_shadow, + .patch_hypercall = vt_patch_hypercall, + .inject_irq = vt_inject_irq, + .inject_nmi = vt_inject_nmi, + .inject_exception = vt_inject_exception, + .cancel_injection = vt_cancel_injection, + .interrupt_allowed = vt_interrupt_allowed, + .nmi_allowed = vt_nmi_allowed, + .get_nmi_mask = vt_get_nmi_mask, + .set_nmi_mask = vt_set_nmi_mask, + .enable_nmi_window = vt_enable_nmi_window, + .enable_irq_window = vt_enable_irq_window, + .update_cr8_intercept = vt_update_cr8_intercept, + .set_virtual_apic_mode = vt_set_virtual_apic_mode, + .set_apic_access_page_addr = vt_set_apic_access_page_addr, + .refresh_apicv_exec_ctrl = vt_refresh_apicv_exec_ctrl, + .load_eoi_exitmap = vt_load_eoi_exitmap, + .apicv_post_state_restore = vt_apicv_post_state_restore, + .required_apicv_inhibits = VMX_REQUIRED_APICV_INHIBITS, + .hwapic_irr_update = vt_hwapic_irr_update, + .hwapic_isr_update = vt_hwapic_isr_update, + .guest_apic_has_interrupt = vt_guest_apic_has_interrupt, + .sync_pir_to_irr = vt_sync_pir_to_irr, + .deliver_interrupt = vt_deliver_interrupt, + .dy_apicv_has_pending_interrupt = pi_has_pending_interrupt, + .protected_apic_has_interrupt = vt_protected_apic_has_interrupt, + + .set_tss_addr = vt_set_tss_addr, + .set_identity_map_addr = vt_set_identity_map_addr, + .get_mt_mask = vt_get_mt_mask, + + .get_exit_info = vt_get_exit_info, + + .vcpu_check_cpuid = vt_vcpu_check_cpuid, + .vcpu_after_set_cpuid = vt_vcpu_after_set_cpuid, + + .has_wbinvd_exit = cpu_has_vmx_wbinvd_exit, + + .get_l2_tsc_offset = vt_get_l2_tsc_offset, + .get_l2_tsc_multiplier = vt_get_l2_tsc_multiplier, + .write_tsc_offset = vt_write_tsc_offset, + .write_tsc_multiplier = vt_write_tsc_multiplier, + + .load_mmu_pgd = vt_load_mmu_pgd, + + .check_intercept = vt_check_intercept, + .handle_exit_irqoff = vt_handle_exit_irqoff, + + .request_immediate_exit = vt_request_immediate_exit, + + .sched_in = vt_sched_in, + + .cpu_dirty_log_size = PML_ENTITY_NUM, + .update_cpu_dirty_logging = vt_update_cpu_dirty_logging, + + .nested_ops = &vmx_nested_ops, + + .pi_update_irte = vmx_pi_update_irte, + .pi_start_assignment = vmx_pi_start_assignment, + +#ifdef CONFIG_X86_64 + .set_hv_timer = vt_set_hv_timer, + .cancel_hv_timer = vt_cancel_hv_timer, +#endif + + .setup_mce = vt_setup_mce, + +#ifdef CONFIG_KVM_SMM + .smi_allowed = vt_smi_allowed, + .enter_smm = vt_enter_smm, + .leave_smm = vt_leave_smm, + .enable_smi_window = vt_enable_smi_window, +#endif + + .can_emulate_instruction = vt_can_emulate_instruction, + .apic_init_signal_blocked = vt_apic_init_signal_blocked, + .migrate_timers = vmx_migrate_timers, + + .msr_filter_changed = vt_msr_filter_changed, + .complete_emulated_msr = kvm_complete_insn_gp, + + .vcpu_deliver_sipi_vector = vt_vcpu_deliver_sipi_vector, + .vcpu_deliver_init = vt_vcpu_deliver_init, + + .mem_enc_ioctl = vt_mem_enc_ioctl, + .vcpu_mem_enc_ioctl = vt_vcpu_mem_enc_ioctl, + + .vm_move_enc_context_from = vt_move_enc_context_from, +}; + +struct kvm_x86_init_ops vt_init_ops __initdata = { + .hardware_setup = vt_hardware_setup, + .handle_intel_pt_intr = NULL, + + .runtime_ops = &vt_x86_ops, + .pmu_ops = &intel_pmu_ops, +}; + +static int __init vt_init(void) +{ + unsigned int vcpu_size, vcpu_align; + int r; + + if (!kvm_is_vmx_supported()) + return -EOPNOTSUPP; + + /* + * Note, hv_init_evmcs() touches only VMX knobs, i.e. there's nothing + * to unwind if a later step fails. + */ + hv_init_evmcs(); + + /* + * kvm_x86_ops is updated with vt_x86_ops. vt_x86_ops.vm_size must + * be set before kvm_x86_vendor_init(). + */ + vcpu_size = sizeof(struct vcpu_vmx); + vcpu_align = __alignof__(struct vcpu_vmx); + if (enable_tdx) { + vt_x86_ops.vm_size = max_t(unsigned int, vt_x86_ops.vm_size, + sizeof(struct kvm_tdx)); + vcpu_size = max_t(unsigned int, vcpu_size, + sizeof(struct vcpu_tdx)); + vcpu_align = max_t(unsigned int, vcpu_align, + __alignof__(struct vcpu_tdx)); + } + + r = vmx_init(); + if (r) + goto err_vmx_init; + + r = kvm_x86_vendor_init(&vt_init_ops); + if (r) + goto err_vmx_init; + + /* + * Common KVM initialization _must_ come last, after this, /dev/kvm is + * exposed to userspace! + */ + r = kvm_init(vcpu_size, vcpu_align, THIS_MODULE); + if (r) + goto err_kvm_init; + + return 0; + +err_kvm_init: + kvm_x86_vendor_exit(); +err_vmx_init: + vmx_exit(); + return r; +} +module_init(vt_init); + +static void vt_exit(void) +{ + kvm_exit(); + kvm_x86_vendor_exit(); + vmx_exit(); +} +module_exit(vt_exit); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/pmu_intel.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/pmu_intel.c @@ -19,6 +19,7 @@ #include "lapic.h" #include "nested.h" #include "pmu.h" +#include "tdx.h" #define MSR_PMC_FULL_WIDTH_BIT (MSR_IA32_PMC0 - MSR_IA32_PERFCTR0) @@ -40,6 +41,26 @@ /* mapping between fixed pmc index and intel_arch_events array */ static int fixed_pmc_events[] = {1, 0, 7}; +struct lbr_desc *vcpu_to_lbr_desc(struct kvm_vcpu *vcpu) +{ +#ifdef CONFIG_INTEL_TDX_HOST + if (is_td_vcpu(vcpu)) + return &to_tdx(vcpu)->lbr_desc; +#endif + + return &to_vmx(vcpu)->lbr_desc; +} + +struct x86_pmu_lbr *vcpu_to_lbr_records(struct kvm_vcpu *vcpu) +{ +#ifdef CONFIG_INTEL_TDX_HOST + if (is_td_vcpu(vcpu)) + return &to_tdx(vcpu)->lbr_desc.records; +#endif + + return &to_vmx(vcpu)->lbr_desc.records; +} + static void reprogram_fixed_counters(struct kvm_pmu *pmu, u64 data) { struct kvm_pmc *pmc; @@ -149,6 +170,23 @@ return get_gp_pmc(pmu, msr, MSR_IA32_PMC0); } +bool intel_pmu_lbr_is_compatible(struct kvm_vcpu *vcpu) +{ + if (is_td_vcpu(vcpu)) + return false; + return cpuid_model_is_consistent(vcpu); +} + +bool intel_pmu_lbr_is_enabled(struct kvm_vcpu *vcpu) +{ + struct x86_pmu_lbr *lbr = vcpu_to_lbr_records(vcpu); + + if (is_td_vcpu(vcpu)) + return false; + + return lbr->nr && (vcpu_get_perf_capabilities(vcpu) & PMU_CAP_LBR_FMT); +} + static bool intel_pmu_is_valid_lbr_msr(struct kvm_vcpu *vcpu, u32 index) { struct x86_pmu_lbr *records = vcpu_to_lbr_records(vcpu); @@ -255,6 +293,9 @@ PERF_SAMPLE_BRANCH_USER, }; + if (WARN_ON_ONCE(is_td_vcpu(vcpu))) + return 0; + if (unlikely(lbr_desc->event)) { __set_bit(INTEL_PMC_IDX_FIXED_VLBR, pmu->pmc_in_use); return 0; @@ -551,7 +592,7 @@ INTEL_PMC_MAX_GENERIC, pmu->nr_arch_fixed_counters); perf_capabilities = vcpu_get_perf_capabilities(vcpu); - if (cpuid_model_is_consistent(vcpu) && + if (intel_pmu_lbr_is_compatible(vcpu) && (perf_capabilities & PMU_CAP_LBR_FMT)) x86_perf_get_lbr(&lbr_desc->records); else @@ -607,6 +648,9 @@ struct kvm_pmc *pmc = NULL; int i; + if (is_td_vcpu(vcpu)) + return; + for (i = 0; i < KVM_INTEL_PMC_MAX_GENERIC; i++) { pmc = &pmu->gp_counters[i]; --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/pmu_intel.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/pmu_intel.h @@ -0,0 +1,28 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __KVM_X86_VMX_PMU_INTEL_H +#define __KVM_X86_VMX_PMU_INTEL_H + +struct lbr_desc *vcpu_to_lbr_desc(struct kvm_vcpu *vcpu); +struct x86_pmu_lbr *vcpu_to_lbr_records(struct kvm_vcpu *vcpu); + +bool intel_pmu_lbr_is_compatible(struct kvm_vcpu *vcpu); +bool intel_pmu_lbr_is_enabled(struct kvm_vcpu *vcpu); +int intel_pmu_create_guest_lbr_event(struct kvm_vcpu *vcpu); + +struct lbr_desc { + /* Basic info about guest LBR records. */ + struct x86_pmu_lbr records; + + /* + * Emulate LBR feature via passthrough LBR registers when the + * per-vcpu guest LBR event is scheduled on the current pcpu. + * + * The records may be inaccurate if the host reclaims the LBR. + */ + struct perf_event *event; + + /* True if LBRs are marked as not intercepted in the MSR bitmap */ + bool msr_passthrough; +}; + +#endif /* __KVM_X86_VMX_PMU_INTEL_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/posted_intr.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/posted_intr.c @@ -11,6 +11,7 @@ #include "posted_intr.h" #include "trace.h" #include "vmx.h" +#include "tdx.h" /* * Maintain a per-CPU list of vCPUs that need to be awakened by wakeup_handler() @@ -31,9 +32,29 @@ */ static DEFINE_PER_CPU(raw_spinlock_t, wakeup_vcpus_on_cpu_lock); -static inline struct pi_desc *vcpu_to_pi_desc(struct kvm_vcpu *vcpu) +/* + * The layout of the head of struct vcpu_vmx and struct vcpu_tdx must match with + * struct vcpu_pi. + */ +static_assert(offsetof(struct vcpu_pi, pi_desc) == + offsetof(struct vcpu_vmx, pi_desc)); +static_assert(offsetof(struct vcpu_pi, pi_wakeup_list) == + offsetof(struct vcpu_vmx, pi_wakeup_list)); +#ifdef CONFIG_INTEL_TDX_HOST +static_assert(offsetof(struct vcpu_pi, pi_desc) == + offsetof(struct vcpu_tdx, pi_desc)); +static_assert(offsetof(struct vcpu_pi, pi_wakeup_list) == + offsetof(struct vcpu_tdx, pi_wakeup_list)); +#endif + +static inline struct vcpu_pi *vcpu_to_pi(struct kvm_vcpu *vcpu) +{ + return (struct vcpu_pi *)vcpu; +} + +struct pi_desc *vcpu_to_pi_desc(struct kvm_vcpu *vcpu) { - return &(to_vmx(vcpu)->pi_desc); + return &vcpu_to_pi(vcpu)->pi_desc; } static int pi_try_set_control(struct pi_desc *pi_desc, u64 *pold, u64 new) @@ -52,8 +73,8 @@ void vmx_vcpu_pi_load(struct kvm_vcpu *vcpu, int cpu) { - struct pi_desc *pi_desc = vcpu_to_pi_desc(vcpu); - struct vcpu_vmx *vmx = to_vmx(vcpu); + struct vcpu_pi *vcpu_pi = vcpu_to_pi(vcpu); + struct pi_desc *pi_desc = &vcpu_pi->pi_desc; struct pi_desc old, new; unsigned long flags; unsigned int dest; @@ -90,7 +111,7 @@ */ if (pi_desc->nv == POSTED_INTR_WAKEUP_VECTOR) { raw_spin_lock(&per_cpu(wakeup_vcpus_on_cpu_lock, vcpu->cpu)); - list_del(&vmx->pi_wakeup_list); + list_del(&vcpu_pi->pi_wakeup_list); raw_spin_unlock(&per_cpu(wakeup_vcpus_on_cpu_lock, vcpu->cpu)); } @@ -145,15 +166,15 @@ */ static void pi_enable_wakeup_handler(struct kvm_vcpu *vcpu) { - struct pi_desc *pi_desc = vcpu_to_pi_desc(vcpu); - struct vcpu_vmx *vmx = to_vmx(vcpu); + struct vcpu_pi *vcpu_pi = vcpu_to_pi(vcpu); + struct pi_desc *pi_desc = &vcpu_pi->pi_desc; struct pi_desc old, new; unsigned long flags; local_irq_save(flags); raw_spin_lock(&per_cpu(wakeup_vcpus_on_cpu_lock, vcpu->cpu)); - list_add_tail(&vmx->pi_wakeup_list, + list_add_tail(&vcpu_pi->pi_wakeup_list, &per_cpu(wakeup_vcpus_on_cpu, vcpu->cpu)); raw_spin_unlock(&per_cpu(wakeup_vcpus_on_cpu_lock, vcpu->cpu)); @@ -190,7 +211,8 @@ * notification vector is switched to the one that calls * back to the pi_wakeup_handler() function. */ - return vmx_can_use_ipiv(vcpu) || vmx_can_use_vtd_pi(vcpu->kvm); + return (vmx_can_use_ipiv(vcpu) && !is_td_vcpu(vcpu)) || + vmx_can_use_vtd_pi(vcpu->kvm); } void vmx_vcpu_pi_put(struct kvm_vcpu *vcpu) @@ -200,7 +222,8 @@ if (!vmx_needs_pi_wakeup(vcpu)) return; - if (kvm_vcpu_is_blocking(vcpu) && !vmx_interrupt_blocked(vcpu)) + if (kvm_vcpu_is_blocking(vcpu) && + (is_td_vcpu(vcpu) || !vmx_interrupt_blocked(vcpu))) pi_enable_wakeup_handler(vcpu); /* --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/posted_intr.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/posted_intr.h @@ -94,6 +94,19 @@ (unsigned long *)&pi_desc->control); } +struct vcpu_pi { + struct kvm_vcpu vcpu; + + /* Posted interrupt descriptor */ + struct pi_desc pi_desc; + + /* Used if this vCPU is waiting for PI notification wakeup. */ + struct list_head pi_wakeup_list; + /* Until here common layout betwwn vcpu_vmx and vcpu_tdx. */ +}; + +struct pi_desc *vcpu_to_pi_desc(struct kvm_vcpu *vcpu); + void vmx_vcpu_pi_load(struct kvm_vcpu *vcpu, int cpu); void vmx_vcpu_pi_put(struct kvm_vcpu *vcpu); void pi_wakeup_handler(void); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx.c @@ -0,0 +1,3853 @@ +// SPDX-License-Identifier: GPL-2.0 +#include +#include +#include + +#include +#include +#include + +#include "capabilities.h" +#include "x86_ops.h" +#include "common.h" +#include "mmu.h" +#include "tdx.h" +#include "vmx.h" +#include "x86.h" + +#include +#include "trace.h" + +#undef pr_fmt +#define pr_fmt(fmt) KBUILD_MODNAME ": " fmt + +#define TDX_MAX_NR_CPUID_CONFIGS \ + ((TDSYSINFO_STRUCT_SIZE - \ + offsetof(struct tdsysinfo_struct, cpuid_configs)) \ + / sizeof(struct tdx_cpuid_config)) + +int tdx_vm_enable_cap(struct kvm *kvm, struct kvm_enable_cap *cap) +{ + int r; + + switch (cap->cap) { + case KVM_CAP_MAX_VCPUS: { + if (cap->flags || cap->args[0] == 0) + return -EINVAL; + if (cap->args[0] > KVM_MAX_VCPUS) + return -E2BIG; + if (cap->args[0] > TDX_MAX_VCPUS) + return -E2BIG; + + mutex_lock(&kvm->lock); + if (kvm->created_vcpus) + r = -EBUSY; + else { + kvm->max_vcpus = cap->args[0]; + r = 0; + } + mutex_unlock(&kvm->lock); + break; + } + default: + r = -EINVAL; + break; + } + return r; +} + +struct tdx_info { + u8 nr_tdcs_pages; + u8 nr_tdvpx_pages; +}; + +/* Info about the TDX module. */ +static struct tdx_info tdx_info __ro_after_init; + +/* + * Some TDX SEAMCALLs (TDH.MNG.CREATE, TDH.PHYMEM.CACHE.WB, + * TDH.MNG.KEY.RECLAIMID, TDH.MNG.KEY.FREEID etc) tries to acquire a global lock + * internally in TDX module. If failed, TDX_OPERAND_BUSY is returned without + * spinning or waiting due to a constraint on execution time. It's caller's + * responsibility to avoid race (or retry on TDX_OPERAND_BUSY). Use this mutex + * to avoid race in TDX module because the kernel knows better about scheduling. + */ +static DEFINE_MUTEX(tdx_lock); +static struct mutex *tdx_mng_key_config_lock; +static atomic_t nr_configured_hkid; + +/* + * A per-CPU list of TD vCPUs associated with a given CPU. Used when a CPU + * is brought down to invoke TDH_VP_FLUSH on the approapriate TD vCPUS. + * Protected by interrupt mask. This list is manipulated in process context + * of vcpu and IPI callback. See tdx_flush_vp_on_cpu(). + */ +static DEFINE_PER_CPU(struct list_head, associated_tdvcpus); + +static __always_inline hpa_t set_hkid_to_hpa(hpa_t pa, u16 hkid) +{ + return pa | ((hpa_t)hkid << boot_cpu_data.x86_phys_bits); +} + +static __always_inline unsigned long tdexit_exit_qual(struct kvm_vcpu *vcpu) +{ + return to_tdx(vcpu)->exit_qualification; +} + +static __always_inline unsigned long tdexit_ext_exit_qual(struct kvm_vcpu *vcpu) +{ + return to_tdx(vcpu)->ext_exit_qualification; +} + +static __always_inline unsigned long tdexit_gpa(struct kvm_vcpu *vcpu) +{ + return to_tdx(vcpu)->exit_gpa; +} + +static __always_inline unsigned long tdexit_intr_info(struct kvm_vcpu *vcpu) +{ + return to_tdx(vcpu)->exit_intr_info; +} + +#define BUILD_TDVMCALL_ACCESSORS(param, gpr) \ +static __always_inline \ +unsigned long tdvmcall_##param##_read(struct kvm_vcpu *vcpu) \ +{ \ + return kvm_##gpr##_read(vcpu); \ +} \ +static __always_inline void tdvmcall_##param##_write(struct kvm_vcpu *vcpu, \ + unsigned long val) \ +{ \ + kvm_##gpr##_write(vcpu, val); \ +} +BUILD_TDVMCALL_ACCESSORS(a0, r12); +BUILD_TDVMCALL_ACCESSORS(a1, r13); +BUILD_TDVMCALL_ACCESSORS(a2, r14); +BUILD_TDVMCALL_ACCESSORS(a3, r15); + +static __always_inline unsigned long tdvmcall_exit_type(struct kvm_vcpu *vcpu) +{ + return kvm_r10_read(vcpu); +} +static __always_inline unsigned long tdvmcall_leaf(struct kvm_vcpu *vcpu) +{ + return kvm_r11_read(vcpu); +} +static __always_inline void tdvmcall_set_return_code(struct kvm_vcpu *vcpu, + long val) +{ + kvm_r10_write(vcpu, val); +} +static __always_inline void tdvmcall_set_return_val(struct kvm_vcpu *vcpu, + unsigned long val) +{ + kvm_r11_write(vcpu, val); +} + +static inline bool is_td_vcpu_created(struct vcpu_tdx *tdx) +{ + return tdx->tdvpr_pa; +} + +static inline bool is_td_created(struct kvm_tdx *kvm_tdx) +{ + return kvm_tdx->tdr_pa; +} + +static inline void tdx_hkid_free(struct kvm_tdx *kvm_tdx) +{ + tdx_guest_keyid_free(kvm_tdx->hkid); + kvm_tdx->hkid = 0; + misc_cg_uncharge(MISC_CG_RES_TDX, kvm_tdx->misc_cg, 1); + put_misc_cg(kvm_tdx->misc_cg); + kvm_tdx->misc_cg = NULL; +} + +static inline bool is_hkid_assigned(struct kvm_tdx *kvm_tdx) +{ + return kvm_tdx->hkid > 0; +} + +static inline bool is_td_finalized(struct kvm_tdx *kvm_tdx) +{ + return kvm_tdx->finalized; +} + +static inline void tdx_disassociate_vp(struct kvm_vcpu *vcpu) +{ + list_del(&to_tdx(vcpu)->cpu_list); + + /* + * Ensure tdx->cpu_list is updated is before setting vcpu->cpu to -1, + * otherwise, a different CPU can see vcpu->cpu = -1 and add the vCPU + * to its list before its deleted from this CPUs list. + */ + smp_wmb(); + + vcpu->cpu = -1; +} + +static void tdx_disassociate_vp_arg(void *vcpu) +{ + tdx_disassociate_vp(vcpu); +} + +static void tdx_disassociate_vp_on_cpu(struct kvm_vcpu *vcpu) +{ + int cpu = vcpu->cpu; + + if (unlikely(cpu == -1)) + return; + + smp_call_function_single(cpu, tdx_disassociate_vp_arg, vcpu, 1); +} + +static void tdx_clear_page(unsigned long page_pa, int size) +{ + const void *zero_page = (const void *) __va(page_to_phys(ZERO_PAGE(0))); + void *page = __va(page_pa); + unsigned long i; + + WARN_ON_ONCE(size % PAGE_SIZE); + /* + * When re-assign one page from old keyid to a new keyid, MOVDIR64B is + * required to clear/write the page with new keyid to prevent integrity + * error when read on the page with new keyid. + * + * clflush doesn't flush cache with HKID set. The cache line could be + * poisoned (even without MKTME-i), clear the poison bit. + */ + for (i = 0; i < size; i += 64) + movdir64b(page + i, zero_page); + /* + * MOVDIR64B store uses WC buffer. Prevent following memory reads + * from seeing potentially poisoned cache. + */ + __mb(); +} + +static int tdx_reclaim_page(hpa_t pa, enum pg_level level, + bool do_wb, u16 hkid) +{ + struct tdx_module_args out; + u64 err; + + do { + err = tdh_phymem_page_reclaim(pa, &out); + /* + * TDH.PHYMEM.PAGE.RECLAIM is allowed only when TD is shutdown. + * state. i.e. destructing TD. + * TDH.PHYMEM.PAGE.RECLAIM requires TDR and target page. + * Because we're destructing TD, it's rare to contend with TDR. + */ + } while (unlikely(err == (TDX_OPERAND_BUSY | TDX_OPERAND_ID_RCX))); + if (WARN_ON_ONCE(err)) { + pr_err("%s:%d:%s pa 0x%llx level %d hkid 0x%x do_wb %d\n", + __FILE__, __LINE__, __func__, + pa, level, hkid, do_wb); + pr_tdx_error(TDH_PHYMEM_PAGE_RECLAIM, err, &out); + return -EIO; + } + /* out.r8 == tdx sept page level */ + WARN_ON_ONCE(out.r8 != pg_level_to_tdx_sept_level(level)); + + if (do_wb && level == PG_LEVEL_4K) { + /* + * Only TDR page gets into this path. No contention is expected + * because of the last page of TD. + */ + err = tdh_phymem_page_wbinvd(set_hkid_to_hpa(pa, hkid)); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_PHYMEM_PAGE_WBINVD, err, NULL); + return -EIO; + } + } + + tdx_set_page_present_level(pa, level); + tdx_clear_page(pa, KVM_HPAGE_SIZE(level)); + return 0; +} + +static void tdx_reclaim_td_page(unsigned long td_page_pa) +{ + WARN_ON_ONCE(!td_page_pa); + + /* + * TDCX are being reclaimed. TDX module maps TDCX with HKID + * assigned to the TD. Here the cache associated to the TD + * was already flushed by TDH.PHYMEM.CACHE.WB before here, So + * cache doesn't need to be flushed again. + */ + if (tdx_reclaim_page(td_page_pa, PG_LEVEL_4K, false, 0)) + /* + * Leak the page on failure: + * tdx_reclaim_page() returns an error if and only if there's an + * unexpected, fatal error, e.g. a SEAMCALL with bad params, + * incorrect concurrency in KVM, a TDX Module bug, etc. + * Retrying at a later point is highly unlikely to be + * successful. + * No log here as tdx_reclaim_page() already did. + */ + return; + free_page((unsigned long)__va(td_page_pa)); +} + +struct tdx_flush_vp_arg { + struct kvm_vcpu *vcpu; + u64 err; +}; + +static void tdx_flush_vp(void *arg_) +{ + struct tdx_flush_vp_arg *arg = arg_; + struct kvm_vcpu *vcpu = arg->vcpu; + u64 err; + + arg->err = 0; + lockdep_assert_irqs_disabled(); + + /* Task migration can race with CPU offlining. */ + if (unlikely(vcpu->cpu != raw_smp_processor_id())) + return; + + /* + * No need to do TDH_VP_FLUSH if the vCPU hasn't been initialized. The + * list tracking still needs to be updated so that it's correct if/when + * the vCPU does get initialized. + */ + if (is_td_vcpu_created(to_tdx(vcpu))) { + /* + * No need to retry. TDX Resources needed for TDH.VP.FLUSH are, + * TDVPR as exclusive, TDR as shared, and TDCS as shared. This + * vp flush function is called when destructing vcpu/TD or vcpu + * migration. No other thread uses TDVPR in those cases. + */ + err = tdh_vp_flush(to_tdx(vcpu)->tdvpr_pa); + if (unlikely(err && err != TDX_VCPU_NOT_ASSOCIATED)) { + /* + * This function is called in IPI context. Do not use + * printk to avoid console semaphore. + * The caller prints out the error message, instead. + */ + if (err) + arg->err = err; + } + } + + tdx_disassociate_vp(vcpu); +} + +static void tdx_flush_vp_on_cpu(struct kvm_vcpu *vcpu) +{ + struct tdx_flush_vp_arg arg = { + .vcpu = vcpu, + }; + int cpu = vcpu->cpu; + + if (unlikely(cpu == -1)) + return; + + smp_call_function_single(cpu, tdx_flush_vp, &arg, 1); + if (WARN_ON_ONCE(arg.err)) { + pr_err("cpu: %d ", cpu); + pr_tdx_error(TDH_VP_FLUSH, arg.err, NULL); + } +} + +void tdx_hardware_disable(void) +{ + int cpu = raw_smp_processor_id(); + struct list_head *tdvcpus = &per_cpu(associated_tdvcpus, cpu); + struct tdx_flush_vp_arg arg; + struct vcpu_tdx *tdx, *tmp; + unsigned long flags; + + local_irq_save(flags); + /* Safe variant needed as tdx_disassociate_vp() deletes the entry. */ + list_for_each_entry_safe(tdx, tmp, tdvcpus, cpu_list) { + arg.vcpu = &tdx->vcpu; + tdx_flush_vp(&arg); + } + local_irq_restore(flags); +} + +static int tdx_do_tdh_phymem_cache_wb(void *param) +{ + u64 err = 0; + + do { + err = tdh_phymem_cache_wb(!!err); + } while (err == TDX_INTERRUPTED_RESUMABLE); + + /* Other thread may have done for us. */ + if (err == TDX_NO_HKID_READY_TO_WBCACHE) + err = TDX_SUCCESS; + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_PHYMEM_CACHE_WB, err, NULL); + return -EIO; + } + + return 0; +} + +void tdx_mmu_release_hkid(struct kvm *kvm) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + cpumask_var_t packages; + bool cpumask_allocated; + struct kvm_vcpu *vcpu; + unsigned long j; + u64 err; + int ret; + int i; + + if (!is_hkid_assigned(kvm_tdx)) + return; + + if (!is_td_created(kvm_tdx)) + goto free_hkid; + + kvm_for_each_vcpu(j, vcpu, kvm) + tdx_flush_vp_on_cpu(vcpu); + + mutex_lock(&tdx_lock); + err = tdh_mng_vpflushdone(kvm_tdx->tdr_pa); + mutex_unlock(&tdx_lock); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_VPFLUSHDONE, err, NULL); + pr_err("tdh_mng_vpflushdone failed. HKID %d is leaked.\n", + kvm_tdx->hkid); + return; + } + + cpumask_allocated = zalloc_cpumask_var(&packages, GFP_KERNEL); + cpus_read_lock(); + for_each_online_cpu(i) { + if (cpumask_allocated && + cpumask_test_and_set_cpu(topology_physical_package_id(i), + packages)) + continue; + + /* + * We can destroy multiple the guest TDs simultaneously. + * Prevent tdh_phymem_cache_wb from returning TDX_BUSY by + * serialization. + */ + mutex_lock(&tdx_lock); + ret = smp_call_on_cpu(i, tdx_do_tdh_phymem_cache_wb, NULL, 1); + mutex_unlock(&tdx_lock); + if (ret) + break; + } + cpus_read_unlock(); + free_cpumask_var(packages); + + mutex_lock(&tdx_lock); + err = tdh_mng_key_freeid(kvm_tdx->tdr_pa); + mutex_unlock(&tdx_lock); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_KEY_FREEID, err, NULL); + pr_err("tdh_mng_key_freeid failed. HKID %d is leaked.\n", + kvm_tdx->hkid); + return; + } else + atomic_dec(&nr_configured_hkid); + +free_hkid: + tdx_hkid_free(kvm_tdx); +} + +static void __tdx_vm_free(struct kvm *kvm) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + int i; + + /* + * tdx_mmu_release_hkid() failed to reclaim HKID. Something went wrong + * heavily with TDX module. Give up freeing TD pages. As the function + * already warned, don't warn it again. + */ + if (is_hkid_assigned(kvm_tdx)) + return; + + if (kvm_tdx->tdcs_pa) { + for (i = 0; i < tdx_info.nr_tdcs_pages; i++) { + if (!kvm_tdx->tdcs_pa[i]) + continue; + tdx_reclaim_td_page(kvm_tdx->tdcs_pa[i]); + tdx_unaccount_ctl_page(kvm); + } + kfree(kvm_tdx->tdcs_pa); + kvm_tdx->tdcs_pa = NULL; + } + + if (!kvm_tdx->tdr_pa) + return; + /* + * TDX module maps TDR with TDX global HKID. TDX module may access TDR + * while operating on TD (Especially reclaiming TDCS). Cache flush with + * TDX global HKID is needed. + */ + if (tdx_reclaim_page(kvm_tdx->tdr_pa, PG_LEVEL_4K, true, tdx_global_keyid)) + return; + + tdx_unaccount_ctl_page(kvm); + free_page((unsigned long)__va(kvm_tdx->tdr_pa)); + kvm_tdx->tdr_pa = 0; + + kfree(kvm_tdx->cpuid); + kvm_tdx->cpuid = NULL; +} + +void tdx_vm_free(struct kvm *kvm) +{ + __tdx_vm_free(kvm); +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + if (WARN_ON_ONCE(atomic64_read(&to_kvm_tdx(kvm)->ctl_pages) || + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_512G - PG_LEVEL_4K]) || + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_1G - PG_LEVEL_4K]) || + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_2M - PG_LEVEL_4K]) || + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_4K - PG_LEVEL_4K]) || + atomic64_read(&to_kvm_tdx(kvm)->td_pages))) { + pr_warn_ratelimited("control %lld sept 512G %lld 1G %lld 2M %lld 4K %lld td %lld pages are left\n", + atomic64_read(&to_kvm_tdx(kvm)->ctl_pages), + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_512G - PG_LEVEL_4K]), + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_1G - PG_LEVEL_4K]), + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_2M - PG_LEVEL_4K]), + atomic64_read(&to_kvm_tdx(kvm)->sept_pages[PG_LEVEL_4K - PG_LEVEL_4K]), + atomic64_read(&to_kvm_tdx(kvm)->td_pages)); + } +#endif +} + +static int tdx_do_tdh_mng_key_config(void *param) +{ + hpa_t *tdr_p = param; + u64 err; + + do { + err = tdh_mng_key_config(*tdr_p); + + /* + * If it failed to generate a random key, retry it because this + * is typically caused by an entropy error of the CPU's random + * number generator. + */ + } while (err == TDX_KEY_GENERATION_FAILED); + + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_KEY_CONFIG, err, NULL); + return -EIO; + } + + return 0; +} + +int tdx_vm_init(struct kvm *kvm) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + + /* + * Because guest TD is protected, VMM can't parse the instruction in TD. + * Instead, guest uses MMIO hypercall. For unmodified device driver, + * #VE needs to be injected for MMIO and #VE handler in TD converts MMIO + * instruction into MMIO hypercall. + * + * SPTE value for MMIO needs to be setup so that #VE is injected into + * TD instead of triggering EPT MISCONFIG. + * - RWX=0 so that EPT violation is triggered. + * - suppress #VE bit is cleared to inject #VE. + */ + kvm_mmu_set_mmio_spte_value(kvm, 0); + + /* TDH.MEM.PAGE.AUG supports up to 2MB page. */ + kvm->arch.tdp_max_page_level = PG_LEVEL_2M; + + kvm_tdx->has_range_blocked = false; + + /* + * This function initializes only KVM software construct. It doesn't + * initialize TDX stuff, e.g. TDCS, TDR, TDCX, HKID etc. + * It is handled by KVM_TDX_INIT_VM, __tdx_td_init(). + */ + + /* + * TDX has its own limit of the number of vcpus in addition to + * KVM_MAX_VCPUS. + */ + kvm->max_vcpus = min(kvm->max_vcpus, TDX_MAX_VCPUS); + + return 0; +} + +u8 tdx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio) +{ + if (is_mmio) + return MTRR_TYPE_UNCACHABLE << VMX_EPT_MT_EPTE_SHIFT; + + if (!kvm_arch_has_noncoherent_dma(vcpu->kvm)) + return (MTRR_TYPE_WRBACK << VMX_EPT_MT_EPTE_SHIFT) | VMX_EPT_IPAT_BIT; + + /* TDX enforces CR0.CD = 0 and KVM MTRR emulation enforces writeback. */ + return MTRR_TYPE_WRBACK << VMX_EPT_MT_EPTE_SHIFT; +} + +int tdx_vcpu_create(struct kvm_vcpu *vcpu) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + struct vcpu_tdx *tdx = to_tdx(vcpu); + + /* + * On cpu creation, cpuid entry is blank. Forcibly enable + * X2APIC feature to allow X2APIC. + * Because vcpu_reset() can't return error, allocation is done here. + */ + WARN_ON_ONCE(vcpu->arch.cpuid_entries); + WARN_ON_ONCE(vcpu->arch.cpuid_nent); + + /* TDX only supports x2APIC, which requires an in-kernel local APIC. */ + if (!vcpu->arch.apic) + return -EINVAL; + + fpstate_set_confidential(&vcpu->arch.guest_fpu); + vcpu->arch.apic->guest_apic_protected = true; + INIT_LIST_HEAD(&tdx->pi_wakeup_list); + + vcpu->arch.efer = EFER_SCE | EFER_LME | EFER_LMA | EFER_NX; + + vcpu->arch.switch_db_regs = KVM_DEBUGREG_AUTO_SWITCH; + vcpu->arch.cr0_guest_owned_bits = -1ul; + vcpu->arch.cr4_guest_owned_bits = -1ul; + + vcpu->arch.tsc_offset = to_kvm_tdx(vcpu->kvm)->tsc_offset; + vcpu->arch.l1_tsc_offset = vcpu->arch.tsc_offset; + /* + * TODO: support off-TD debug. If TD DEBUG is enabled, guest state + * can be accessed. guest_state_protected = false. and kvm ioctl to + * access CPU states should be usable for user space VMM (e.g. qemu). + * + * vcpu->arch.guest_state_protected = + * !(to_kvm_tdx(vcpu->kvm)->attributes & TDX_TD_ATTRIBUTE_DEBUG); + */ + vcpu->arch.guest_state_protected = true; + + if ((kvm_tdx->xfam & XFEATURE_MASK_XTILE) == XFEATURE_MASK_XTILE) + vcpu->arch.xfd_no_write_intercept = true; + + tdx->host_state_need_save = true; + tdx->host_state_need_restore = false; + + tdx->pi_desc.nv = POSTED_INTR_VECTOR; + tdx->pi_desc.sn = 1; + + return 0; +} + +int tdx_vcpu_check_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid_entry2 *e2, int nent) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + const struct tdsysinfo_struct *tdsysinfo; + int i; + + tdsysinfo = tdx_get_sysinfo(); + if (!tdsysinfo) + return -EOPNOTSUPP; + + /* + * Simple check that new cpuid is consistent with created one. + * For simplicity, only trivial check. Don't try comprehensive checks + * with the cpuid virtualization table in the TDX module spec. + */ + for (i = 0; i < tdsysinfo->num_cpuid_config; i++) { + const struct tdx_cpuid_config *config = &tdsysinfo->cpuid_configs[i]; + u32 index = config->sub_leaf == TDX_CPUID_NO_SUBLEAF ? 0 : config->sub_leaf; + const struct kvm_cpuid_entry2 *old = + kvm_find_cpuid_entry2(kvm_tdx->cpuid, kvm_tdx->cpuid_nent, + config->leaf, index); + const struct kvm_cpuid_entry2 *new = kvm_find_cpuid_entry2(e2, nent, + config->leaf, index); + + if (!!old != !!new) + return -EINVAL; + if (!old && !new) + continue; + + if ((old->eax ^ new->eax) & config->eax || + (old->ebx ^ new->ebx) & config->ebx || + (old->ecx ^ new->ecx) & config->ecx || + (old->edx ^ new->edx) & config->edx) + return -EINVAL; + } + return 0; +} + +void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + vmx_vcpu_pi_load(vcpu, cpu); + if (vcpu->cpu == cpu) + return; + + tdx_flush_vp_on_cpu(vcpu); + + local_irq_disable(); + /* + * Pairs with the smp_wmb() in tdx_disassociate_vp() to ensure + * vcpu->cpu is read before tdx->cpu_list. + */ + smp_rmb(); + + list_add(&tdx->cpu_list, &per_cpu(associated_tdvcpus, cpu)); + local_irq_enable(); +} + +bool tdx_protected_apic_has_interrupt(struct kvm_vcpu *vcpu) +{ + bool ret = pi_has_pending_interrupt(vcpu); + union tdx_vcpu_state_details details; + struct vcpu_tdx *tdx = to_tdx(vcpu); + + if (ret || vcpu->arch.mp_state != KVM_MP_STATE_HALTED) + return true; + + if (tdx->interrupt_disabled_hlt) + return false; + + /* + * This is for the case where the virtual interrupt is recognized, + * i.e. set in vmcs.RVI, between the STI and "HLT". KVM doesn't have + * access to RVI and the interrupt is no longer in the PID (because it + * was "recognized". It doesn't get delivered in the guest because the + * TDCALL completes before interrupts are enabled. + * + * TDX modules sets RVI while in an STI interrupt shadow. + * - TDExit(typically TDG.VP.VMCALL) from the guest to TDX module. + * The interrupt shadow at this point is gone. + * - It knows that there is an interrupt that can be delivered + * (RVI > PPR && EFLAGS.IF=1, the other conditions of 29.2.2 don't + * matter) + * - It forwards the TDExit nevertheless, to a clueless hypervisor that + * has no way to glean either RVI or PPR. + */ + if (xchg(&tdx->buggy_hlt_workaround, 0)) + return true; + + /* + * This is needed for device assignment. Interrupts can arrive from + * the assigned devices. Because tdx.buggy_hlt_workaround can't be set + * by VMM, use TDX SEAMCALL to query pending interrupts. + */ + details.full = td_state_non_arch_read64(tdx, TD_VCPU_STATE_DETAILS_NON_ARCH); + return !!details.vmxip; +} + +void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + if (!tdx->host_state_need_save) + return; + + if (likely(is_64bit_mm(current->mm))) + tdx->msr_host_kernel_gs_base = current->thread.gsbase; + else + tdx->msr_host_kernel_gs_base = read_msr(MSR_KERNEL_GS_BASE); + + tdx->host_state_need_save = false; +} + +static void tdx_prepare_switch_to_host(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + tdx->host_state_need_save = true; + if (!tdx->host_state_need_restore) + return; + + wrmsrl(MSR_KERNEL_GS_BASE, tdx->msr_host_kernel_gs_base); + tdx->host_state_need_restore = false; +} + +void tdx_vcpu_put(struct kvm_vcpu *vcpu) +{ + vmx_vcpu_pi_put(vcpu); + tdx_prepare_switch_to_host(vcpu); +} + +void tdx_vcpu_free(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + int i; + + /* + * This methods can be called when vcpu allocation/initialization + * failed. So it's possible that hkid, tdvpx and tdvpr are not assigned + * yet. + */ + if (is_hkid_assigned(to_kvm_tdx(vcpu->kvm))) { + WARN_ON_ONCE(tdx->tdvpx_pa); + WARN_ON_ONCE(tdx->tdvpr_pa); + return; + } + + /* + * When destroying VM, kvm_unload_vcpu_mmu() calls vcpu_load() for every + * vcpu after they already disassociated from the per cpu list by + * tdx_mmu_release_hkid(). So we need to disassociate them again, + * otherwise the freed vcpu data will be accessed when do + * list_{del,add}() on associated_tdvcpus list later. + */ + tdx_disassociate_vp_on_cpu(vcpu); + WARN_ON_ONCE(vcpu->cpu != -1); + + if (tdx->tdvpx_pa) { + for (i = 0; i < tdx_info.nr_tdvpx_pages; i++) { + if (!tdx->tdvpx_pa[i]) + continue; + tdx_reclaim_td_page(tdx->tdvpx_pa[i]); + tdx_unaccount_ctl_page(vcpu->kvm); + } + kfree(tdx->tdvpx_pa); + tdx->tdvpx_pa = NULL; + } + if (tdx->tdvpr_pa) { + tdx_reclaim_td_page(tdx->tdvpr_pa); + tdx->tdvpr_pa = 0; + tdx_unaccount_ctl_page(vcpu->kvm); + } +} + +void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) +{ + + /* vcpu_deliver_init method silently discards INIT event. */ + if (KVM_BUG_ON(init_event, vcpu->kvm)) + return; + if (KVM_BUG_ON(is_td_vcpu_created(to_tdx(vcpu)), vcpu->kvm)) + return; + + /* + * Don't update mp_state to runnable because more initialization + * is needed by TDX_VCPU_INIT. + */ +} + +static void tdx_complete_interrupts(struct kvm_vcpu *vcpu) +{ + /* Avoid costly SEAMCALL if no nmi was injected */ + if (vcpu->arch.nmi_injected) + vcpu->arch.nmi_injected = td_management_read8(to_tdx(vcpu), + TD_VCPU_PEND_NMI); +} + +struct tdx_uret_msr { + u32 msr; + unsigned int slot; + u64 defval; +}; + +static struct tdx_uret_msr tdx_uret_msrs[] = { + {.msr = MSR_SYSCALL_MASK, .defval = 0x20200 }, + {.msr = MSR_STAR,}, + {.msr = MSR_LSTAR,}, + {.msr = MSR_TSC_AUX,}, +}; +static unsigned int tdx_uret_tsx_ctrl_slot; + +static void tdx_user_return_update_cache(struct kvm_vcpu *vcpu) +{ + int i; + + for (i = 0; i < ARRAY_SIZE(tdx_uret_msrs); i++) + kvm_user_return_update_cache(tdx_uret_msrs[i].slot, + tdx_uret_msrs[i].defval); + /* + * TSX_CTRL is reset to 0 if guest TSX is supported. Otherwise + * preserved. + */ + if (to_kvm_tdx(vcpu->kvm)->tsx_supported && tdx_uret_tsx_ctrl_slot != -1) + kvm_user_return_update_cache(tdx_uret_tsx_ctrl_slot, 0); +} + +static void tdx_restore_host_xsave_state(struct kvm_vcpu *vcpu) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + + if (static_cpu_has(X86_FEATURE_XSAVE) && + host_xcr0 != (kvm_tdx->xfam & kvm_caps.supported_xcr0)) + xsetbv(XCR_XFEATURE_ENABLED_MASK, host_xcr0); + if (static_cpu_has(X86_FEATURE_XSAVES) && + /* PT can be exposed to TD guest regardless of KVM's XSS support */ + host_xss != (kvm_tdx->xfam & + (kvm_caps.supported_xss | XFEATURE_MASK_PT | TDX_TD_XFAM_CET))) + wrmsrl(MSR_IA32_XSS, host_xss); + if (static_cpu_has(X86_FEATURE_PKU) && + (kvm_tdx->xfam & XFEATURE_MASK_PKRU)) + write_pkru(vcpu->arch.host_pkru); +} + +static noinstr void tdx_vcpu_enter_exit(struct vcpu_tdx *tdx) +{ + /* + * Avoid section mismatch with to_tdx() with KVM_VM_BUG(). The caller + * should call to_tdx(). + */ + struct kvm_vcpu *vcpu = &tdx->vcpu; + + guest_state_enter_irqoff(); + + /* + * struct tdx_module_args and struct kvm_vcpu_arch::args must be same + * layout to use __seamcall_saved_ret(). + */ +#define WORD_SIZE (BITS_PER_LONG / 8) +#define BUG_ON_ARG_OFFSET(arg_reg, vcpu_reg) \ + BUILD_BUG_ON(offsetof(struct tdx_module_args, arg_reg) != \ + VCPU_REGS_ ## vcpu_reg * WORD_SIZE); + + BUG_ON_ARG_OFFSET(rax_unused, RAX); + BUG_ON_ARG_OFFSET(rcx, RCX); + BUG_ON_ARG_OFFSET(rdx, RDX); + BUG_ON_ARG_OFFSET(rbx, RBX); + BUG_ON_ARG_OFFSET(rsp_unused, RSP); + BUG_ON_ARG_OFFSET(rbp_unused, RBP); + BUG_ON_ARG_OFFSET(rsi, RSI); + BUG_ON_ARG_OFFSET(rdi, RDI); + BUG_ON_ARG_OFFSET(r8, R8); + BUG_ON_ARG_OFFSET(r9, R9); + BUG_ON_ARG_OFFSET(r10, R10); + BUG_ON_ARG_OFFSET(r11, R11); + BUG_ON_ARG_OFFSET(r12, R12); + BUG_ON_ARG_OFFSET(r13, R13); + BUG_ON_ARG_OFFSET(r14, R14); + BUG_ON_ARG_OFFSET(r15, R15); + +#undef BUG_ON_ARG_OFFSET +#undef WORD_SIZE + + /* + * TODO: micro optimization: + * copyin/copyout registers only if (tdx->tdvmvall.regs_mask != 0) + * which means TDG.VP.VMCALL. + */ + vcpu->arch.regs[VCPU_REGS_RCX] = tdx->tdvpr_pa; + tdx->exit_reason.full = __seamcall_saved_ret(TDH_VP_ENTER, + (struct tdx_module_args*)vcpu->arch.regs); + WARN_ON_ONCE(!kvm_rebooting && + (tdx->exit_reason.full & TDX_SW_ERROR) == TDX_SW_ERROR); + + if ((u16)tdx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI && + is_nmi(tdexit_intr_info(vcpu))) { + kvm_before_interrupt(vcpu, KVM_HANDLING_NMI); + vmx_do_nmi_irqoff(); + kvm_after_interrupt(vcpu); + } + guest_state_exit_irqoff(); +} + +fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + if (unlikely(!tdx->initialized)) + return -EINVAL; + if (unlikely(vcpu->kvm->vm_bugged)) { + tdx->exit_reason.full = TDX_NON_RECOVERABLE_VCPU; + return EXIT_FASTPATH_NONE; + } + + trace_kvm_entry(vcpu); + + if (pi_test_on(&tdx->pi_desc)) { + apic->send_IPI_self(POSTED_INTR_VECTOR); + + kvm_wait_lapic_expire(vcpu); + } + + tdx_vcpu_enter_exit(tdx); + + tdx_user_return_update_cache(vcpu); + perf_restore_debug_store(); + tdx_restore_host_xsave_state(vcpu); + tdx->host_state_need_restore = true; + + tdx->exit_qualification = kvm_rcx_read(vcpu); + tdx->ext_exit_qualification = kvm_rdx_read(vcpu); + tdx->exit_gpa = kvm_r8_read(vcpu); + tdx->exit_intr_info = kvm_r9_read(vcpu); + if (tdx->exit_reason.basic == EXIT_REASON_TDCALL) + tdx->tdvmcall.rcx = kvm_rcx_read(vcpu); + else + tdx->tdvmcall.rcx = 0; + + trace_kvm_exit(vcpu, KVM_ISA_VMX); + + tdx_complete_interrupts(vcpu); + + vcpu->arch.regs_avail &= ~VMX_REGS_LAZY_LOAD_SET; + + return EXIT_FASTPATH_NONE; +} + +void tdx_inject_nmi(struct kvm_vcpu *vcpu) +{ + td_management_write8(to_tdx(vcpu), TD_VCPU_PEND_NMI, 1); +} + +void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + u16 exit_reason = tdx->exit_reason.basic; + + if (exit_reason == EXIT_REASON_EXTERNAL_INTERRUPT) + vmx_handle_external_interrupt_irqoff(vcpu, + tdexit_intr_info(vcpu)); + else if (exit_reason == EXIT_REASON_EXCEPTION_NMI) + vmx_handle_exception_irqoff(vcpu, tdexit_intr_info(vcpu)); + else if (unlikely(tdx->exit_reason.non_recoverable || + tdx->exit_reason.error)) { + /* + * The only reason it gets EXIT_REASON_OTHER_SMI is there is an + * #MSMI(Machine Check System Management Interrupt) with + * exit_qualification bit 0 set in TD guest. + * The #MSMI is delivered right after SEAMCALL returns, + * and an #MC is delivered to host kernel after SMI handler + * returns. + * + * The #MC right after SEAMCALL is fixed up and skipped in #MC + * handler because it's an #MC happens in TD guest we cannot + * handle it with host's context. + * + * Call KVM's machine check handler explicitly here. + */ + if (tdx->exit_reason.basic == EXIT_REASON_OTHER_SMI) { + unsigned long exit_qual; + + exit_qual = tdexit_exit_qual(vcpu); + if (exit_qual & TD_EXIT_OTHER_SMI_IS_MSMI) + kvm_machine_check(); + } + } +} + +static int tdx_handle_exception(struct kvm_vcpu *vcpu) +{ + u32 intr_info = tdexit_intr_info(vcpu); + + if (is_nmi(intr_info) || is_machine_check(intr_info)) + return 1; + + if (to_kvm_tdx(vcpu->kvm)->attributes & TDX_TD_ATTRIBUTE_DEBUG) { + vcpu->run->exit_reason = KVM_EXIT_DEBUG; + vcpu->mmio_needed = 0; + vcpu->run->debug.arch.dr6 = 0; + vcpu->run->debug.arch.dr7 = 0; + vcpu->run->debug.arch.pc = kvm_get_linear_rip(vcpu); + vcpu->run->debug.arch.exception = intr_info & 0xff; + return 0; + } + + kvm_pr_unimpl("unexpected exception 0x%x(exit_reason 0x%llx qual 0x%lx)\n", + intr_info, + to_tdx(vcpu)->exit_reason.full, tdexit_exit_qual(vcpu)); + return -EFAULT; +} + +static int tdx_handle_external_interrupt(struct kvm_vcpu *vcpu) +{ + ++vcpu->stat.irq_exits; + return 1; +} + +static int tdx_handle_triple_fault(struct kvm_vcpu *vcpu) +{ + if (to_kvm_tdx(vcpu->kvm)->attributes & TDX_TD_ATTRIBUTE_DEBUG) + pr_err("triple fault at 0x%lx\n", kvm_rip_read(vcpu)); + vcpu->run->exit_reason = KVM_EXIT_SHUTDOWN; + vcpu->mmio_needed = 0; + return 0; +} + +static int tdx_emulate_vmcall(struct kvm_vcpu *vcpu) +{ + unsigned long nr, a0, a1, a2, a3, ret; + + /* + * ABI for KVM tdvmcall argument: + * In Guest-Hypervisor Communication Interface(GHCI) specification, + * Non-zero leaf number (R10 != 0) is defined to indicate + * vendor-specific. KVM uses this for KVM hypercall. NOTE: KVM + * hypercall number starts from one. Zero isn't used for KVM hypercall + * number. + * + * R10: KVM hypercall number + * arguments: R11, R12, R13, R14. + */ + nr = kvm_r10_read(vcpu); + a0 = kvm_r11_read(vcpu); + a1 = kvm_r12_read(vcpu); + a2 = kvm_r13_read(vcpu); + a3 = kvm_r14_read(vcpu); + + ret = __kvm_emulate_hypercall(vcpu, nr, a0, a1, a2, a3, true); + + tdvmcall_set_return_code(vcpu, ret); + + return 1; +} + +static int tdx_complete_vp_vmcall(struct kvm_vcpu *vcpu) +{ + struct kvm_tdx_vmcall *tdx_vmcall = &vcpu->run->tdx.u.vmcall; + __u64 reg_mask = kvm_rcx_read(vcpu); + +#define COPY_REG(MASK, REG) \ + do { \ + if (reg_mask & TDX_VMCALL_REG_MASK_ ## MASK) \ + kvm_## REG ## _write(vcpu, tdx_vmcall->out_ ## REG); \ + } while (0) + + + COPY_REG(R10, r10); + COPY_REG(R11, r11); + COPY_REG(R12, r12); + COPY_REG(R13, r13); + COPY_REG(R14, r14); + COPY_REG(R15, r15); + COPY_REG(RBX, rbx); + COPY_REG(RDI, rdi); + COPY_REG(RSI, rsi); + COPY_REG(R8, r8); + COPY_REG(R9, r9); + COPY_REG(RDX, rdx); + +#undef COPY_REG + + return 1; +} + +static int tdx_vp_vmcall_to_user(struct kvm_vcpu *vcpu) +{ + struct kvm_tdx_vmcall *tdx_vmcall = &vcpu->run->tdx.u.vmcall; + __u64 reg_mask; + + vcpu->arch.complete_userspace_io = tdx_complete_vp_vmcall; + memset(tdx_vmcall, 0, sizeof(*tdx_vmcall)); + + vcpu->run->exit_reason = KVM_EXIT_TDX; + vcpu->run->tdx.type = KVM_EXIT_TDX_VMCALL; + + reg_mask = kvm_rcx_read(vcpu); + tdx_vmcall->reg_mask = reg_mask; + +#define COPY_REG(MASK, REG) \ + do { \ + if (reg_mask & TDX_VMCALL_REG_MASK_ ## MASK) { \ + tdx_vmcall->in_ ## REG = kvm_ ## REG ## _read(vcpu); \ + tdx_vmcall->out_ ## REG = tdx_vmcall->in_ ## REG; \ + } \ + } while (0) + + + COPY_REG(R10, r10); + COPY_REG(R11, r11); + COPY_REG(R12, r12); + COPY_REG(R13, r13); + COPY_REG(R14, r14); + COPY_REG(R15, r15); + COPY_REG(RBX, rbx); + COPY_REG(RDI, rdi); + COPY_REG(RSI, rsi); + COPY_REG(R8, r8); + COPY_REG(R9, r9); + COPY_REG(RDX, rdx); + +#undef COPY_REG + + /* notify userspace to handle the request */ + return 0; +} + +static int tdx_emulate_cpuid(struct kvm_vcpu *vcpu) +{ + u32 eax, ebx, ecx, edx; + + /* EAX and ECX for cpuid is stored in R12 and R13. */ + eax = tdvmcall_a0_read(vcpu); + ecx = tdvmcall_a1_read(vcpu); + + kvm_cpuid(vcpu, &eax, &ebx, &ecx, &edx, false); + + tdvmcall_a0_write(vcpu, eax); + tdvmcall_a1_write(vcpu, ebx); + tdvmcall_a2_write(vcpu, ecx); + tdvmcall_a3_write(vcpu, edx); + + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + + return 1; +} + +static int tdx_emulate_hlt(struct kvm_vcpu *vcpu) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + /* See tdx_protected_apic_has_interrupt() to avoid heavy seamcall */ + tdx->interrupt_disabled_hlt = tdvmcall_a0_read(vcpu); + + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + return kvm_emulate_halt_noskip(vcpu); +} + +static int tdx_complete_pio_in(struct kvm_vcpu *vcpu) +{ + struct x86_emulate_ctxt *ctxt = vcpu->arch.emulate_ctxt; + unsigned long val = 0; + int ret; + + WARN_ON_ONCE(vcpu->arch.pio.count != 1); + + ret = ctxt->ops->pio_in_emulated(ctxt, vcpu->arch.pio.size, + vcpu->arch.pio.port, &val, 1); + WARN_ON_ONCE(!ret); + + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + tdvmcall_set_return_val(vcpu, val); + + return 1; +} + +static int tdx_emulate_io(struct kvm_vcpu *vcpu) +{ + struct x86_emulate_ctxt *ctxt = vcpu->arch.emulate_ctxt; + unsigned long val = 0; + unsigned int port; + int size, ret; + bool write; + + ++vcpu->stat.io_exits; + + size = tdvmcall_a0_read(vcpu); + write = tdvmcall_a1_read(vcpu); + port = tdvmcall_a2_read(vcpu); + + if (size != 1 && size != 2 && size != 4) { + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_INVALID_OPERAND); + return 1; + } + + if (write) { + val = tdvmcall_a3_read(vcpu); + ret = ctxt->ops->pio_out_emulated(ctxt, size, port, &val, 1); + + /* No need for a complete_userspace_io callback. */ + vcpu->arch.pio.count = 0; + } else { + ret = ctxt->ops->pio_in_emulated(ctxt, size, port, &val, 1); + if (!ret) + vcpu->arch.complete_userspace_io = tdx_complete_pio_in; + else + tdvmcall_set_return_val(vcpu, val); + } + if (ret) + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + return ret; +} + +static int tdx_complete_mmio(struct kvm_vcpu *vcpu) +{ + unsigned long val = 0; + gpa_t gpa; + int size; + + KVM_BUG_ON(vcpu->mmio_needed != 1, vcpu->kvm); + vcpu->mmio_needed = 0; + + if (!vcpu->mmio_is_write) { + gpa = vcpu->mmio_fragments[0].gpa; + size = vcpu->mmio_fragments[0].len; + + memcpy(&val, vcpu->run->mmio.data, size); + tdvmcall_set_return_val(vcpu, val); + trace_kvm_mmio(KVM_TRACE_MMIO_READ, size, gpa, &val); + } + return 1; +} + +static inline int tdx_mmio_write(struct kvm_vcpu *vcpu, gpa_t gpa, int size, + unsigned long val) +{ + if (kvm_iodevice_write(vcpu, &vcpu->arch.apic->dev, gpa, size, &val) && + kvm_io_bus_write(vcpu, KVM_MMIO_BUS, gpa, size, &val)) + return -EOPNOTSUPP; + + trace_kvm_mmio(KVM_TRACE_MMIO_WRITE, size, gpa, &val); + return 0; +} + +static inline int tdx_mmio_read(struct kvm_vcpu *vcpu, gpa_t gpa, int size) +{ + unsigned long val; + + if (kvm_iodevice_read(vcpu, &vcpu->arch.apic->dev, gpa, size, &val) && + kvm_io_bus_read(vcpu, KVM_MMIO_BUS, gpa, size, &val)) + return -EOPNOTSUPP; + + tdvmcall_set_return_val(vcpu, val); + trace_kvm_mmio(KVM_TRACE_MMIO_READ, size, gpa, &val); + return 0; +} + +static int tdx_emulate_mmio(struct kvm_vcpu *vcpu) +{ + struct kvm_memory_slot *slot; + int size, write, r; + unsigned long val; + gpa_t gpa; + + KVM_BUG_ON(vcpu->mmio_needed, vcpu->kvm); + + size = tdvmcall_a0_read(vcpu); + write = tdvmcall_a1_read(vcpu); + gpa = tdvmcall_a2_read(vcpu); + val = write ? tdvmcall_a3_read(vcpu) : 0; + + if (size != 1 && size != 2 && size != 4 && size != 8) + goto error; + if (write != 0 && write != 1) + goto error; + + /* Strip the shared bit, allow MMIO with and without it set. */ + gpa = gpa & ~gfn_to_gpa(kvm_gfn_shared_mask(vcpu->kvm)); + + if (size > 8u || ((gpa + size - 1) ^ gpa) & PAGE_MASK) + goto error; + + slot = kvm_vcpu_gfn_to_memslot(vcpu, gpa_to_gfn(gpa)); + if (slot && !(slot->flags & KVM_MEMSLOT_INVALID)) + goto error; + + if (!kvm_io_bus_write(vcpu, KVM_FAST_MMIO_BUS, gpa, 0, NULL)) { + trace_kvm_fast_mmio(gpa); + return 1; + } + + if (write) + r = tdx_mmio_write(vcpu, gpa, size, val); + else + r = tdx_mmio_read(vcpu, gpa, size); + if (!r) { + /* Kernel completed device emulation. */ + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + return 1; + } + + /* Request the device emulation to userspace device model. */ + vcpu->mmio_needed = 1; + vcpu->mmio_is_write = write; + vcpu->arch.complete_userspace_io = tdx_complete_mmio; + + vcpu->run->mmio.phys_addr = gpa; + vcpu->run->mmio.len = size; + vcpu->run->mmio.is_write = write; + vcpu->run->exit_reason = KVM_EXIT_MMIO; + + if (write) { + memcpy(vcpu->run->mmio.data, &val, size); + } else { + vcpu->mmio_fragments[0].gpa = gpa; + vcpu->mmio_fragments[0].len = size; + trace_kvm_mmio(KVM_TRACE_MMIO_READ_UNSATISFIED, size, gpa, NULL); + } + return 0; + +error: + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_INVALID_OPERAND); + return 1; +} + +static int tdx_emulate_rdmsr(struct kvm_vcpu *vcpu) +{ + u32 index = tdvmcall_a0_read(vcpu); + u64 data; + + if (!kvm_msr_allowed(vcpu, index, KVM_MSR_FILTER_READ) || + kvm_get_msr(vcpu, index, &data)) { + trace_kvm_msr_read_ex(index); + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_INVALID_OPERAND); + return 1; + } + trace_kvm_msr_read(index, data); + + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + tdvmcall_set_return_val(vcpu, data); + return 1; +} + +static int tdx_emulate_wrmsr(struct kvm_vcpu *vcpu) +{ + u32 index = tdvmcall_a0_read(vcpu); + u64 data = tdvmcall_a1_read(vcpu); + + if (!kvm_msr_allowed(vcpu, index, KVM_MSR_FILTER_WRITE) || + kvm_set_msr(vcpu, index, data)) { + trace_kvm_msr_write_ex(index, data); + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_INVALID_OPERAND); + return 1; + } + + trace_kvm_msr_write(index, data); + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + return 1; +} + +static int tdx_get_td_vm_call_info(struct kvm_vcpu *vcpu) +{ + if (tdvmcall_a0_read(vcpu)) + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_INVALID_OPERAND); + else { + tdvmcall_set_return_code(vcpu, TDG_VP_VMCALL_SUCCESS); + kvm_r11_write(vcpu, 0); + tdvmcall_a0_write(vcpu, 0); + tdvmcall_a1_write(vcpu, 0); + tdvmcall_a2_write(vcpu, 0); + } + return 1; +} + +static int handle_tdvmcall(struct kvm_vcpu *vcpu) +{ + int r; + + if (tdvmcall_exit_type(vcpu)) + return tdx_emulate_vmcall(vcpu); + + trace_kvm_tdx_hypercall(tdvmcall_leaf(vcpu), kvm_rcx_read(vcpu), + kvm_r12_read(vcpu), kvm_r13_read(vcpu), kvm_r14_read(vcpu), + kvm_rbx_read(vcpu), kvm_rdi_read(vcpu), kvm_rsi_read(vcpu), + kvm_r8_read(vcpu), kvm_r9_read(vcpu), kvm_rdx_read(vcpu)); + + switch (tdvmcall_leaf(vcpu)) { + case EXIT_REASON_CPUID: + r = tdx_emulate_cpuid(vcpu); + break; + case EXIT_REASON_HLT: + r = tdx_emulate_hlt(vcpu); + break; + case EXIT_REASON_IO_INSTRUCTION: + r = tdx_emulate_io(vcpu); + break; + case EXIT_REASON_EPT_VIOLATION: + r = tdx_emulate_mmio(vcpu); + break; + case EXIT_REASON_MSR_READ: + r = tdx_emulate_rdmsr(vcpu); + break; + case EXIT_REASON_MSR_WRITE: + r = tdx_emulate_wrmsr(vcpu); + break; + case TDG_VP_VMCALL_GET_TD_VM_CALL_INFO: + r = tdx_get_td_vm_call_info(vcpu); + break; + default: + /* + * Unknown VMCALL. Toss the request to the user space VMM, + * e.g. qemu, as it may know how to handle. + * + * Those VMCALLs require user space VMM: + * TDG_VP_VMCALL_REPORT_FATAL_ERROR, TDG_VP_VMCALL_MAP_GPA, + * TDG_VP_VMCALL_SETUP_EVENT_NOTIFY_INTERRUPT, and + * TDG_VP_VMCALL_GET_QUOTE. + */ + r = tdx_vp_vmcall_to_user(vcpu); + break; + } + + trace_kvm_tdx_hypercall_done(r, kvm_r11_read(vcpu), kvm_r10_read(vcpu), + kvm_r12_read(vcpu), kvm_r13_read(vcpu), kvm_r14_read(vcpu), + kvm_rbx_read(vcpu), kvm_rdi_read(vcpu), kvm_rsi_read(vcpu), + kvm_r8_read(vcpu), kvm_r9_read(vcpu), kvm_rdx_read(vcpu)); + return r; +} + +void tdx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, int pgd_level) +{ + td_vmcs_write64(to_tdx(vcpu), SHARED_EPT_POINTER, root_hpa & PAGE_MASK); +} + +static void tdx_measure_page(struct kvm_tdx *kvm_tdx, hpa_t gpa, int size) +{ + struct tdx_module_args out; + u64 err; + int i; + + WARN_ON_ONCE(size % TDX_EXTENDMR_CHUNKSIZE); + + for (i = 0; i < size; i += TDX_EXTENDMR_CHUNKSIZE) { + err = tdh_mr_extend(kvm_tdx->tdr_pa, gpa + i, &out); + if (KVM_BUG_ON(err, &kvm_tdx->kvm)) { + pr_tdx_error(TDH_MR_EXTEND, err, &out); + break; + } + } +} + +static void tdx_unpin(struct kvm *kvm, gfn_t gfn, kvm_pfn_t pfn, + enum pg_level level) +{ + int i; + + for (i = 0; i < KVM_PAGES_PER_HPAGE(level); i++) + put_page(pfn_to_page(pfn + i)); +} + +static int tdx_sept_set_private_spte(struct kvm *kvm, gfn_t gfn, + enum pg_level level, kvm_pfn_t pfn) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + hpa_t hpa = pfn_to_hpa(pfn); + gpa_t gpa = gfn_to_gpa(gfn); + struct tdx_module_args out; + hpa_t source_pa; + bool measure; + u64 err; + int i; + + if (WARN_ON_ONCE(is_error_noslot_pfn(pfn) || + !kvm_pfn_to_refcounted_page(pfn))) + return 0; + + /* + * Because restricted mem doesn't support page migration with + * a_ops->migrate_page (yet), no callback isn't triggered for KVM on + * page migration. Until restricted mem supports page migration, + * prevent page migration. + * TODO: Once restricted mem introduces callback on page migration, + * implement it and remove get_page/put_page(). + */ + for (i = 0; i < KVM_PAGES_PER_HPAGE(level); i++) + get_page(pfn_to_page(pfn + i)); + + /* Build-time faults are induced and handled via TDH_MEM_PAGE_ADD. */ + if (likely(is_td_finalized(kvm_tdx))) { + err = tdh_mem_page_aug(kvm_tdx->tdr_pa, gpa, tdx_level, hpa, &out); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) { + tdx_unpin(kvm, gfn, pfn, level); + return -EAGAIN; + } + if (unlikely(err == (TDX_EPT_ENTRY_NOT_FREE | TDX_OPERAND_ID_RCX))) { + /* + * TDX 1.0 may return TDX_EPT_ENTRY_NOT_FREE without + * SEPT entry. TDX 1.5 (or later) returns + * TDX_EPT_ENTRY_STATE_INCORRECT. Emulate it. + */ + err = tdh_mem_sept_rd(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_SEPT_RD, err, &out); + tdx_unpin(kvm, gfn, pfn, level); + return -EIO; + } + err = TDX_EPT_ENTRY_STATE_INCORRECT | TDX_OPERAND_ID_RCX; + } + if (unlikely(err == (TDX_EPT_ENTRY_STATE_INCORRECT | TDX_OPERAND_ID_RCX))) { + union tdx_sept_entry entry = { + .raw = out.rcx, + }; + union tdx_sept_level_state level_state = { + .raw = out.rdx, + }; + + /* + * TD.attribute.sept_ve_disable=1 and EPT violation on + * pending page. Probably it's a race condition or a bug + * for guest TD to access unaccepted region. Let vcpu + * retry with the expectation of a race condition so that + * other vcpu would accept the page. + */ + if (level_state.level == tdx_level && + level_state.state == TDX_SEPT_PENDING && + entry.leaf && entry.hpa == hpa && entry.sve) { + tdx_unpin(kvm, gfn, pfn, level); + WARN_ON_ONCE(!(to_kvm_tdx(kvm)->attributes & + BIT(28) /* =ATTR_SEPT_VE_DISABLE) */)); + WARN_ON_ONCE(1); + return -EAGAIN; + } + + /* Someone updated the entry to the same value. */ + if (level_state.level == tdx_level && + level_state.state == TDX_SEPT_PRESENT && + entry.leaf && entry.hpa == hpa) { + tdx_unpin(kvm, gfn, pfn, level); + return -EAGAIN; + } + } + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_PAGE_AUG, err, &out); + tdx_unpin(kvm, gfn, pfn, level); + return -EIO; + } + tdx_account_td_pages(kvm, level); + trace_kvm_tdx_page_add(kvm_tdx->tdr_pa, gfn, pfn, level); + return 0; + } + + /* + * KVM_INIT_MEM_REGION, tdx_init_mem_region(), supports only 4K page + * because tdh_mem_page_add() supports only 4K page. + */ + if (KVM_BUG_ON(level != PG_LEVEL_4K, kvm)) + return -EINVAL; + + /* + * In case of TDP MMU, fault handler can run concurrently. Note + * 'source_pa' is a TD scope variable, meaning if there are multiple + * threads reaching here with all needing to access 'source_pa', it + * will break. However fortunately this won't happen, because below + * TDH_MEM_PAGE_ADD code path is only used when VM is being created + * before it is running, using KVM_TDX_INIT_MEM_REGION ioctl (which + * always uses vcpu 0's page table and protected by vcpu->mutex). + */ + if (KVM_BUG_ON(kvm_tdx->source_pa == INVALID_PAGE, kvm)) { + tdx_unpin(kvm, gfn, pfn, level); + return -EINVAL; + } + + source_pa = kvm_tdx->source_pa & ~KVM_TDX_MEASURE_MEMORY_REGION; + measure = kvm_tdx->source_pa & KVM_TDX_MEASURE_MEMORY_REGION; + kvm_tdx->source_pa = INVALID_PAGE; + + do { + err = tdh_mem_page_add(kvm_tdx->tdr_pa, gpa, tdx_level, hpa, + source_pa, &out); + /* + * This path is executed during populating initial guest memory + * image. i.e. before running any vcpu. Race is rare. + */ + } while (unlikely(err == TDX_ERROR_SEPT_BUSY)); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_PAGE_ADD, err, &out); + tdx_unpin(kvm, gfn, pfn, level); + return -EIO; + } else if (measure) + tdx_measure_page(kvm_tdx, gpa, KVM_HPAGE_SIZE(level)); + + tdx_account_td_pages(kvm, level); + trace_kvm_tdx_page_add(kvm_tdx->tdr_pa, gfn, pfn, level); + return 0; +} + +static int tdx_sept_drop_private_spte(struct kvm *kvm, gfn_t gfn, + enum pg_level level, kvm_pfn_t pfn) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct tdx_module_args out; + gpa_t gpa = gfn_to_gpa(gfn); + hpa_t hpa = pfn_to_hpa(pfn); + hpa_t hpa_with_hkid; + int r = 0; + u64 err; + int i; + + if (unlikely(!is_hkid_assigned(kvm_tdx))) { + /* + * The HKID assigned to this TD was already freed and cache + * was already flushed. We don't have to flush again. + */ + err = tdx_reclaim_page(hpa, level, false, 0); + if (KVM_BUG_ON(err, kvm)) { + pr_err("%s:%d:%s gfn 0x%llx level 0x%x pfn 0x%llx\n", + __FILE__, __LINE__, __func__, gfn, level, pfn); + return -EIO; + } + tdx_unpin(kvm, gfn, pfn, level); + tdx_unaccount_td_pages(kvm, level); + trace_kvm_tdx_page_remove(kvm_tdx->tdr_pa, gfn, pfn, level); + return 0; + } + + do { + /* + * When zapping private page, write lock is held. So no race + * condition with other vcpu sept operation. Race only with + * TDH.VP.ENTER. + */ + err = tdh_mem_page_remove(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + } while (unlikely(err == TDX_ERROR_SEPT_BUSY)); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_PAGE_REMOVE, err, &out); + return -EIO; + } + + for (i = 0; i < KVM_PAGES_PER_HPAGE(level); i++) { + hpa_with_hkid = set_hkid_to_hpa(hpa, (u16)kvm_tdx->hkid); + do { + /* + * TDX_OPERAND_BUSY can happen on locking PAMT entry. + * Because this page was removed above, other thread + * shouldn't be repeatedly operating on this page. + * Simple retry should work. + */ + err = tdh_phymem_page_wbinvd(hpa_with_hkid); + } while (unlikely(err == (TDX_OPERAND_BUSY | TDX_OPERAND_ID_RCX))); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_PHYMEM_PAGE_WBINVD, err, NULL); + r = -EIO; + } else { + tdx_set_page_present(hpa); + tdx_clear_page(hpa, PAGE_SIZE); + tdx_unpin(kvm, gfn + i, pfn + i, PG_LEVEL_4K); + } + hpa += PAGE_SIZE; + } + tdx_unaccount_td_pages(kvm, level); + trace_kvm_tdx_page_remove(kvm_tdx->tdr_pa, gfn, pfn, level); + return r; +} + +static int tdx_sept_link_private_spt(struct kvm *kvm, gfn_t gfn, + enum pg_level level, void *private_spt) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + gpa_t gpa = gfn_to_gpa(gfn); + hpa_t hpa = __pa(private_spt); + struct tdx_module_args out; + u64 err; + + err = tdh_mem_sept_add(kvm_tdx->tdr_pa, gpa, tdx_level, hpa, &out); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) + return -EAGAIN; + if (unlikely(err == (TDX_EPT_ENTRY_NOT_FREE | TDX_OPERAND_ID_RCX))) { + err = tdh_mem_sept_rd(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_SEPT_RD, err, &out); + return -EIO; + } + err = TDX_EPT_ENTRY_STATE_INCORRECT | TDX_OPERAND_ID_RCX; + } + if (unlikely(err == (TDX_EPT_ENTRY_STATE_INCORRECT | TDX_OPERAND_ID_RCX))) { + union tdx_sept_entry entry = { + .raw = out.rcx, + }; + union tdx_sept_level_state level_state = { + .raw = out.rdx, + }; + + /* someone updated the entry with same value. */ + if (level_state.level == tdx_level && + level_state.state == TDX_SEPT_PRESENT && + !entry.leaf && entry.hpa == hpa) + return -EAGAIN; + } + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_SEPT_ADD, err, &out); + return -EIO; + } + + /* level is for parent's. */ + tdx_account_sept_page(kvm, level - 1); + trace_kvm_tdx_sept_add(kvm_tdx->tdr_pa, gfn, hpa >> PAGE_SHIFT, level - 1); + return 0; +} + +static int tdx_sept_split_private_spt(struct kvm *kvm, gfn_t gfn, + enum pg_level level, void *private_spt) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + gpa_t gpa = gfn_to_gpa(gfn) & KVM_HPAGE_MASK(level); + hpa_t hpa = __pa(private_spt); + struct tdx_module_args out; + u64 err; + + /* See comment in tdx_sept_set_private_spte() */ + do { + err = tdh_mem_page_demote(kvm_tdx->tdr_pa, gpa, tdx_level, hpa, &out); + } while (err == TDX_INTERRUPTED_RESTARTABLE); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) { + trace_kvm_tdx_page_demote(kvm_tdx->tdr_pa, gfn, hpa >> PAGE_SHIFT, + level, -EAGAIN); + return -EAGAIN; + } + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_PAGE_DEMOTE, err, &out); + trace_kvm_tdx_page_demote(kvm_tdx->tdr_pa, gfn, hpa >> PAGE_SHIFT, level, -EIO); + return -EIO; + } + + tdx_account_sept_page(kvm, level - 1); + trace_kvm_tdx_page_demote(kvm_tdx->tdr_pa, gfn, hpa >> PAGE_SHIFT, level, 0); + return 0; +} + +static int tdx_sept_merge_private_spt(struct kvm *kvm, gfn_t gfn, + enum pg_level level, void *private_spt) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct tdx_module_args out; + gpa_t gpa = gfn_to_gpa(gfn) & KVM_HPAGE_MASK(level); + u64 err; + + /* See comment in tdx_sept_set_private_spte() */ + do { + err = tdh_mem_page_promote(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + } while (err == TDX_INTERRUPTED_RESTARTABLE); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) { + trace_kvm_tdx_page_promote(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level, -EAGAIN); + return -EAGAIN; + } + if (unlikely(err == (TDX_EPT_INVALID_PROMOTE_CONDITIONS | + TDX_OPERAND_ID_RCX))) { + /* + * Some pages are accepted, some pending. Need to wait for TD + * to accept all pages. Tell it the caller. + */ + trace_kvm_tdx_page_promote(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level, -EAGAIN); + return -EAGAIN; + } + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_PAGE_PROMOTE, err, &out); + trace_kvm_tdx_page_promote(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level, -EIO); + return -EIO; + } + WARN_ON_ONCE(out.rcx != __pa(private_spt)); + + /* + * TDH.MEM.PAGE.PROMOTE frees the Secure-EPT page for the lower level. + * Flush cache for reuse. + */ + do { + err = tdh_phymem_page_wbinvd(set_hkid_to_hpa(__pa(private_spt), + to_kvm_tdx(kvm)->hkid)); + } while (unlikely(err == (TDX_OPERAND_BUSY | TDX_OPERAND_ID_RCX))); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_PHYMEM_PAGE_WBINVD, err, NULL); + trace_kvm_tdx_page_promote(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level, -EIO); + return -EIO; + } + + tdx_set_page_present(__pa(private_spt)); + tdx_clear_page(__pa(private_spt), PAGE_SIZE); + tdx_unaccount_sept_page(kvm, level - 1); + trace_kvm_tdx_page_promote(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level, 0); + return 0; +} + +static int tdx_sept_zap_private_spte(struct kvm *kvm, gfn_t gfn, + enum pg_level level) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + gpa_t gpa = gfn_to_gpa(gfn) & KVM_HPAGE_MASK(level); + struct tdx_module_args out; + u64 err; + + /* This can be called when destructing guest TD after freeing HKID. */ + if (unlikely(!is_hkid_assigned(kvm_tdx))) + return 0; + + err = tdh_mem_range_block(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) + return -EAGAIN; + if (unlikely(err == (TDX_GPA_RANGE_ALREADY_BLOCKED | TDX_OPERAND_ID_RCX))) + return -EAGAIN; + + WRITE_ONCE(kvm_tdx->has_range_blocked, true); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_RANGE_BLOCK, err, &out); + return -EIO; + } + return 0; +} + +/* + * TLB shoot down procedure: + * There is a global epoch counter and each vcpu has local epoch counter. + * - TDH.MEM.RANGE.BLOCK(TDR. level, range) on one vcpu + * This blocks the subsequenct creation of TLB translation on that range. + * This corresponds to clear the present bit(all RXW) in EPT entry + * - TDH.MEM.TRACK(TDR): advances the epoch counter which is global. + * - IPI to remote vcpus + * - TDExit and re-entry with TDH.VP.ENTER on remote vcpus + * - On re-entry, TDX module compares the local epoch counter with the global + * epoch counter. If the local epoch counter is older than the global epoch + * counter, update the local epoch counter and flushes TLB. + */ +static void tdx_track(struct kvm_tdx *kvm_tdx) +{ + u64 err; + + KVM_BUG_ON(!is_hkid_assigned(kvm_tdx), &kvm_tdx->kvm); + /* If TD isn't finalized, it's before any vcpu running. */ + if (unlikely(!is_td_finalized(kvm_tdx))) + return; + + /* + * tdx_flush_tlb() waits for this function to issue TDH.MEM.TRACK() by + * the counter. The counter is used instead of bool because multiple + * TDH_MEM_TRACK() can be issued concurrently by multiple vcpus. + */ + atomic_inc(&kvm_tdx->tdh_mem_track); + /* + * KVM_REQ_TLB_FLUSH waits for the empty IPI handler, ack_flush(), with + * KVM_REQUEST_WAIT. + */ + kvm_make_all_cpus_request(&kvm_tdx->kvm, KVM_REQ_TLB_FLUSH); + + do { + /* + * kvm_flush_remote_tlbs() doesn't allow to return error and + * retry. + */ + err = tdh_mem_track(kvm_tdx->tdr_pa); + } while (unlikely((err & TDX_SEAMCALL_STATUS_MASK) == TDX_OPERAND_BUSY)); + + /* Release remote vcpu waiting for TDH.MEM.TRACK in tdx_flush_tlb(). */ + atomic_dec(&kvm_tdx->tdh_mem_track); + + if (KVM_BUG_ON(err, &kvm_tdx->kvm)) + pr_tdx_error(TDH_MEM_TRACK, err, NULL); + +} + +static int tdx_sept_unzap_private_spte(struct kvm *kvm, gfn_t gfn, + enum pg_level level) +{ + int tdx_level = pg_level_to_tdx_sept_level(level); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + gpa_t gpa = gfn_to_gpa(gfn) & KVM_HPAGE_MASK(level); + struct tdx_module_args out; + u64 err; + + do { + err = tdh_mem_range_unblock(kvm_tdx->tdr_pa, gpa, tdx_level, &out); + + /* + * tdh_mem_range_block() is accompanied with tdx_track() via kvm + * remote tlb flush. Wait for the caller of + * tdh_mem_range_block() to complete TDX track. + */ + } while (err == (TDX_TLB_TRACKING_NOT_DONE | TDX_OPERAND_ID_SEPT)); + if (unlikely(err == TDX_ERROR_SEPT_BUSY)) + return -EAGAIN; + if (unlikely(err == (TDX_GPA_RANGE_NOT_BLOCKED | TDX_OPERAND_ID_RCX))) + return -EAGAIN; + if (unlikely(err == (TDX_EPT_ENTRY_STATE_INCORRECT | TDX_OPERAND_ID_RCX))) { + union tdx_sept_level_state level_state = { + .raw = out.rdx, + }; + + if (level_state.level == tdx_level && + (level_state.state == TDX_SEPT_PRESENT || + level_state.state == TDX_SEPT_PENDING)) { + return -EAGAIN; + } + } + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_RANGE_UNBLOCK, err, &out); + return -EIO; + } + return 0; +} + +static int tdx_sept_free_private_spt(struct kvm *kvm, gfn_t gfn, + enum pg_level level, void *private_spt) +{ + /* +1 to remove this SEPT page from the parent's entry. */ + gpa_t parent_gpa = gfn_to_gpa(gfn) & KVM_HPAGE_MASK(level + 1); + int parent_tdx_level = pg_level_to_tdx_sept_level(level + 1); + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct tdx_module_args out; + u64 err; + + /* + * The HKID assigned to this TD was already freed and cache was + * already flushed. We don't have to flush again. + */ + if (!is_hkid_assigned(kvm_tdx)) { + int r; + + r = tdx_reclaim_page(__pa(private_spt), PG_LEVEL_4K, false, 0); + if (!r) { + tdx_unaccount_sept_page(kvm, level); + trace_kvm_tdx_sept_remove(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level); + } + return r; + } + + /* + * Inefficient. But this is only called for deleting memslot + * which isn't performance critical path. + * + * free_private_spt() is (obviously) called when a shadow page is being + * zapped. KVM doesn't (yet) zap private SPs while the TD is active. + * Note: This function is for private shadow page. Not for private + * guest page. private guest page can be zapped during TD is active. + * shared <-> private conversion and slot move/deletion. + */ + do { + err = tdh_mem_range_block(kvm_tdx->tdr_pa, parent_gpa, + parent_tdx_level, &out); + } while (unlikely(err == TDX_ERROR_SEPT_BUSY)); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_RANGE_BLOCK, err, &out); + return -EIO; + } + + tdx_track(kvm_tdx); + + err = tdh_mem_sept_remove(kvm_tdx->tdr_pa, parent_gpa, + parent_tdx_level, &out); + if (KVM_BUG_ON(err, kvm)) { + pr_tdx_error(TDH_MEM_SEPT_REMOVE, err, &out); + return -EIO; + } + tdx_unaccount_sept_page(kvm, level); + + err = tdh_phymem_page_wbinvd(set_hkid_to_hpa(__pa(private_spt), + kvm_tdx->hkid)); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_PHYMEM_PAGE_WBINVD, err, NULL); + return -EIO; + } + tdx_set_page_present(__pa(private_spt)); + tdx_clear_page(__pa(private_spt), PAGE_SIZE); + trace_kvm_tdx_sept_remove(kvm_tdx->tdr_pa, gfn, + __pa(private_spt) >> PAGE_SHIFT, level); + return 0; +} + +int tdx_sept_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages) +{ + struct kvm_tdx *kvm_tdx; + + if (unlikely(!is_td(kvm))) + return -EOPNOTSUPP; + + kvm_tdx = to_kvm_tdx(kvm); + if (is_hkid_assigned(kvm_tdx)) + tdx_track(kvm_tdx); + + return 0; +} + +int tdx_sept_flush_remote_tlbs(struct kvm *kvm) +{ + return tdx_sept_flush_remote_tlbs_range(kvm, 0, -1ULL); +} + +static int tdx_sept_remove_private_spte(struct kvm *kvm, gfn_t gfn, + enum pg_level level, kvm_pfn_t pfn) +{ + /* + * TDX requires TLB tracking before dropping private page. Do + * it here, although it is also done later. + * If hkid isn't assigned, the guest is destroying and no vcpu + * runs further. TLB shootdown isn't needed. + * + * TODO: implement with_range version for optimization. + * kvm_flush_remote_tlbs_with_address(kvm, gfn, 1); + * => tdx_sept_flush_remote_tlbs_range(kvm, gfn, + * KVM_PAGES_PER_HPAGE(level)); + */ + if (is_hkid_assigned(to_kvm_tdx(kvm))) + kvm_flush_remote_tlbs(kvm); + + return tdx_sept_drop_private_spte(kvm, gfn, level, pfn); +} + +void tdx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector) +{ + struct kvm_vcpu *vcpu = apic->vcpu; + struct vcpu_tdx *tdx = to_tdx(vcpu); + + /* See comment in tdx_protected_apic_has_interrupt(). */ + tdx->buggy_hlt_workaround = 1; + /* TDX supports only posted interrupt. No lapic emulation. */ + __vmx_deliver_posted_interrupt(vcpu, &tdx->pi_desc, vector); +} + +static int tdx_handle_ept_violation(struct kvm_vcpu *vcpu) +{ + union tdx_ext_exit_qualification ext_exit_qual; + unsigned long exit_qual; + int err_page_level = 0; + + ext_exit_qual.full = tdexit_ext_exit_qual(vcpu); + + if (ext_exit_qual.type >= NUM_EXT_EXIT_QUAL) { + pr_err("EPT violation at gpa 0x%lx, with invalid ext exit qualification type 0x%x\n", + tdexit_gpa(vcpu), ext_exit_qual.type); + kvm_vm_bugged(vcpu->kvm); + return 0; + } else if (ext_exit_qual.type == EXT_EXIT_QUAL_ACCEPT) { + err_page_level = tdx_sept_level_to_pg_level(ext_exit_qual.req_sept_level); + } + + if (kvm_is_private_gpa(vcpu->kvm, tdexit_gpa(vcpu))) { + /* + * Always treat SEPT violations as write faults. Ignore the + * EXIT_QUALIFICATION reported by TDX-SEAM for SEPT violations. + * TD private pages are always RWX in the SEPT tables, + * i.e. they're always mapped writable. Just as importantly, + * treating SEPT violations as write faults is necessary to + * avoid COW allocations, which will cause TDAUGPAGE failures + * due to aliasing a single HPA to multiple GPAs. + */ +#define TDX_SEPT_VIOLATION_EXIT_QUAL EPT_VIOLATION_ACC_WRITE + exit_qual = TDX_SEPT_VIOLATION_EXIT_QUAL; + } else { + exit_qual = tdexit_exit_qual(vcpu); + if (exit_qual & EPT_VIOLATION_ACC_INSTR) { + pr_warn("kvm: TDX instr fetch to shared GPA = 0x%lx @ RIP = 0x%lx\n", + tdexit_gpa(vcpu), kvm_rip_read(vcpu)); + vcpu->run->exit_reason = KVM_EXIT_EXCEPTION; + vcpu->run->ex.exception = PF_VECTOR; + vcpu->run->ex.error_code = exit_qual; + return 0; + } + } + + trace_kvm_page_fault(vcpu, tdexit_gpa(vcpu), exit_qual); + return __vmx_handle_ept_violation(vcpu, tdexit_gpa(vcpu), exit_qual, err_page_level); +} + +static int tdx_handle_ept_misconfig(struct kvm_vcpu *vcpu) +{ + WARN_ON_ONCE(1); + + vcpu->run->exit_reason = KVM_EXIT_UNKNOWN; + vcpu->run->hw.hardware_exit_reason = EXIT_REASON_EPT_MISCONFIG; + + return 0; +} + +static int tdx_handle_bus_lock_vmexit(struct kvm_vcpu *vcpu) +{ + /* + * When EXIT_REASON_BUS_LOCK, bus_lock_detected bit is not necessarily + * set. Enforce the bit set so that tdx_handle_exit() will handle it + * uniformly. + */ + to_tdx(vcpu)->exit_reason.bus_lock_detected = true; + return 1; +} + +static int __tdx_handle_exit(struct kvm_vcpu *vcpu, fastpath_t fastpath) +{ + union tdx_exit_reason exit_reason = to_tdx(vcpu)->exit_reason; + + /* See the comment of tdh_sept_seamcall(). */ + if (unlikely(exit_reason.full == (TDX_OPERAND_BUSY | TDX_OPERAND_ID_SEPT))) + return 1; + + /* + * TDH.VP.ENTRY checks TD EPOCH which contend with TDH.MEM.TRACK and + * vcpu TDH.VP.ENTER. + */ + if (unlikely(exit_reason.full == (TDX_OPERAND_BUSY | TDX_OPERAND_ID_TD_EPOCH))) + return 1; + + if (unlikely(exit_reason.full == (TDX_INCONSISTENT_MSR | MSR_IA32_TSX_CTRL))) { + pr_err_once("TDX module is outdated. Use v1.0.3 or newer.\n"); + return 1; + } + + if (unlikely(exit_reason.full == TDX_SEAMCALL_UD)) { + kvm_spurious_fault(); + /* + * In the case of reboot or kexec, loop with TDH.VP.ENTER and + * TDX_SEAMCALL_UD to avoid unnecessarily activity. + */ + return 1; + } + + if (unlikely(exit_reason.non_recoverable || exit_reason.error)) { + if (unlikely(exit_reason.basic == EXIT_REASON_TRIPLE_FAULT)) + return tdx_handle_triple_fault(vcpu); + + kvm_pr_unimpl("TD exit 0x%llx, %d hkid 0x%x hkid pa 0x%llx\n", + exit_reason.full, exit_reason.basic, + to_kvm_tdx(vcpu->kvm)->hkid, + set_hkid_to_hpa(0, to_kvm_tdx(vcpu->kvm)->hkid)); + + /* + * tdx_handle_exit_irqoff() handled EXIT_REASON_OTHER_SMI. It + * must be handled before enabling preemption because it's #MC. + */ + goto unhandled_exit; + } + + /* + * When TDX module saw VMEXIT_REASON_FAILED_VMENTER_MC etc, TDH.VP.ENTER + * returns with TDX_SUCCESS | exit_reason with failed_vmentry = 1. + * Because TDX module maintains TD VMCS correctness, usually vmentry + * failure shouldn't happen. In some corner cases it can happen. For + * example + * - machine check during entry: EXIT_REASON_MCE_DURING_VMENTRY + * - TDH.VP.WR with debug TD. VMM can corrupt TD VMCS + * - EXIT_REASON_INVALID_STATE + * - EXIT_REASON_MSR_LOAD_FAIL + */ + if (unlikely(exit_reason.failed_vmentry)) { + pr_err("TDExit: exit_reason 0x%016llx qualification=%016lx ext_qualification=%016lx\n", + exit_reason.full, tdexit_exit_qual(vcpu), tdexit_ext_exit_qual(vcpu)); + vcpu->run->exit_reason = KVM_EXIT_FAIL_ENTRY; + vcpu->run->fail_entry.hardware_entry_failure_reason + = exit_reason.full; + vcpu->run->fail_entry.cpu = vcpu->arch.last_vmentry_cpu; + + return 0; + } + + WARN_ON_ONCE(fastpath != EXIT_FASTPATH_NONE); + + switch (exit_reason.basic) { + case EXIT_REASON_EXCEPTION_NMI: + return tdx_handle_exception(vcpu); + case EXIT_REASON_EXTERNAL_INTERRUPT: + return tdx_handle_external_interrupt(vcpu); + case EXIT_REASON_TDCALL: + return handle_tdvmcall(vcpu); + case EXIT_REASON_EPT_VIOLATION: + return tdx_handle_ept_violation(vcpu); + case EXIT_REASON_EPT_MISCONFIG: + return tdx_handle_ept_misconfig(vcpu); + case EXIT_REASON_OTHER_SMI: + /* + * Unlike VMX, all the SMI in SEAM non-root mode (i.e. when + * TD guest vcpu is running) will cause TD exit to TDX module, + * then SEAMRET to KVM. Once it exits to KVM, SMI is delivered + * and handled right away. + * + * - If it's an Machine Check System Management Interrupt + * (MSMI), it's handled above due to non_recoverable bit set. + * - If it's not an MSMI, don't need to do anything here. + */ + return 1; + case EXIT_REASON_BUS_LOCK: + tdx_handle_bus_lock_vmexit(vcpu); + return 1; + default: + break; + } + +unhandled_exit: + vcpu->run->exit_reason = KVM_EXIT_INTERNAL_ERROR; + vcpu->run->internal.suberror = KVM_INTERNAL_ERROR_UNEXPECTED_EXIT_REASON; + vcpu->run->internal.ndata = 2; + vcpu->run->internal.data[0] = exit_reason.full; + vcpu->run->internal.data[1] = vcpu->arch.last_vmentry_cpu; + return 0; +} + +int tdx_handle_exit(struct kvm_vcpu *vcpu, fastpath_t exit_fastpath) +{ + int ret = __tdx_handle_exit(vcpu, exit_fastpath); + + /* Exit to user space when bus-lock was detected in the guest TD. */ + if (unlikely(to_tdx(vcpu)->exit_reason.bus_lock_detected)) { + if (ret > 0) + vcpu->run->exit_reason = KVM_EXIT_X86_BUS_LOCK; + + vcpu->run->flags |= KVM_RUN_X86_BUS_LOCK; + return 0; + } + return ret; +} + +void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, + u64 *info1, u64 *info2, u32 *intr_info, u32 *error_code) +{ + struct vcpu_tdx *tdx = to_tdx(vcpu); + + *reason = tdx->exit_reason.full; + + *info1 = tdexit_exit_qual(vcpu); + *info2 = tdexit_ext_exit_qual(vcpu); + + *intr_info = tdexit_intr_info(vcpu); + *error_code = 0; +} + +static bool tdx_is_emulated_kvm_msr(u32 index, bool write) +{ + switch (index) { + case MSR_KVM_POLL_CONTROL: + return true; + default: + return false; + } +} + +bool tdx_has_emulated_msr(u32 index, bool write) +{ + switch (index) { + case MSR_IA32_UCODE_REV: + case MSR_IA32_ARCH_CAPABILITIES: + case MSR_IA32_POWER_CTL: + case MSR_MTRRcap: + case MSR_IA32_CR_PAT: + case MSR_MTRRdefType: + case MSR_IA32_TSC_DEADLINE: + case MSR_IA32_MISC_ENABLE: + case MSR_PLATFORM_INFO: + case MSR_MISC_FEATURES_ENABLES: + case MSR_IA32_MCG_CAP: + case MSR_IA32_MCG_STATUS: + case MSR_IA32_MCG_CTL: + case MSR_IA32_MCG_EXT_CTL: + case MSR_IA32_MC0_CTL ... MSR_IA32_MCx_CTL(KVM_MAX_MCE_BANKS) - 1: + case MSR_IA32_MC0_CTL2 ... MSR_IA32_MCx_CTL2(KVM_MAX_MCE_BANKS) - 1: + /* MSR_IA32_MCx_{CTL, STATUS, ADDR, MISC, CTL2} */ + return true; + case APIC_BASE_MSR ... APIC_BASE_MSR + 0xff: + /* + * x2APIC registers that are virtualized by the CPU can't be + * emulated, KVM doesn't have access to the virtual APIC page. + */ + switch (index) { + case X2APIC_MSR(APIC_TASKPRI): + case X2APIC_MSR(APIC_PROCPRI): + case X2APIC_MSR(APIC_EOI): + case X2APIC_MSR(APIC_ISR) ... X2APIC_MSR(APIC_ISR + APIC_ISR_NR): + case X2APIC_MSR(APIC_TMR) ... X2APIC_MSR(APIC_TMR + APIC_ISR_NR): + case X2APIC_MSR(APIC_IRR) ... X2APIC_MSR(APIC_IRR + APIC_ISR_NR): + return false; + default: + return true; + } + case MSR_IA32_FEAT_CTL: + case MSR_IA32_APICBASE: + case MSR_EFER: + return !write; + case 0x4b564d00 ... 0x4b564dff: + /* KVM custom MSRs */ + return tdx_is_emulated_kvm_msr(index, write); + default: + return false; + } +} + +int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) +{ + switch (msr->index) { + case MSR_IA32_FEAT_CTL: + /* + * MCE and MCA are advertised via cpuid. guest kernel could + * check if LMCE is enabled or not. + */ + msr->data = FEAT_CTL_LOCKED; + if (vcpu->arch.mcg_cap & MCG_LMCE_P) + msr->data |= FEAT_CTL_LMCE_ENABLED; + return 0; + case MSR_IA32_MCG_EXT_CTL: + if (!msr->host_initiated && !(vcpu->arch.mcg_cap & MCG_LMCE_P)) + return 1; + msr->data = vcpu->arch.mcg_ext_ctl; + return 0; + case MSR_MTRRcap: + /* + * Override kvm_mtrr_get_msr() which hardcodes the value. + * Report SMRR = 0, WC = 0, FIX = 0 VCNT = 0 to disable MTRR + * effectively. + */ + msr->data = 0; + return 0; + case MSR_MTRRdefType: + /* + * FIXME: Xen convention to disable guest MTRR: + * The guest kernel pretends as if MTRR isn't available when + * CPUID.MTRR = 1 (MTRR available) and MTRRdefType.enable = 0 + * (MTRRs disabled) as BIOS hand-off state. Which is deviation + * from SDM. MTRRdefType.enable = 0 means all memory access is + * UC according to the SDM. + * + * The TD guest kernel has to disable MTRR otherwise it tries + * program MTRRs to disable caching. CR4.CD=1 results in the + * unexpected #VE and the guest kernel panic. As workaround, + * utilize the Xen convention in the guest kernel. + * E(MTRR enable)=0, FE(fixed range MTRR enable)=0, + * default memory type=WB + */ + msr->data = MTRR_TYPE_WRBACK; + return 0; + default: + if (tdx_has_emulated_msr(msr->index, false)) + return kvm_get_msr_common(vcpu, msr); + return 1; + } +} + +int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) +{ + switch (msr->index) { + case MSR_IA32_MCG_EXT_CTL: + if (!msr->host_initiated && !(vcpu->arch.mcg_cap & MCG_LMCE_P)) + return 1; + vcpu->arch.mcg_ext_ctl = msr->data; + return 0; + case MSR_MTRRdefType: + /* + * Allow writeback only for all memory. + * Because it's reported that fixed range MTRR isn't supported + * and VCNT=0, enforce MTRRDefType.FE = 0 and don't care + * variable range MTRRs. Only default memory type matters. + * + * bit 11 E: MTRR enable/disable + * bit 12 FE: Fixed-range MTRRs enable/disable + * (E, FE) = (1, 1): enable MTRR and Fixed range MTRR + * (E, FE) = (1, 0): enable MTRR, disable Fixed range MTRR + * (E, FE) = (0, *): disable all MTRRs. all physical memory + * is UC + */ + if (msr->data != ((1 << 11) | MTRR_TYPE_WRBACK)) + return 1; + return kvm_set_msr_common(vcpu, msr); + default: + if (tdx_has_emulated_msr(msr->index, true)) + return kvm_set_msr_common(vcpu, msr); + return 1; + } +} + +#ifdef CONFIG_KVM_SMM +int tdx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection) +{ + /* SMI isn't supported for TDX. */ + WARN_ON_ONCE(1); + return false; +} + +int tdx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram) +{ + /* smi_allowed() is always false for TDX as above. */ + WARN_ON_ONCE(1); + return 0; +} + +int tdx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram) +{ + WARN_ON_ONCE(1); + return 0; +} + +void tdx_enable_smi_window(struct kvm_vcpu *vcpu) +{ + /* SMI isn't supported for TDX. Silently discard SMI request. */ + WARN_ON_ONCE(1); + vcpu->arch.smi_pending = false; +} +#endif + +void tdx_set_virtual_apic_mode(struct kvm_vcpu *vcpu) +{ + /* Only x2APIC mode is supported for TD. */ + WARN_ON_ONCE(kvm_get_apic_mode(vcpu) != LAPIC_MODE_X2APIC); +} + +int tdx_get_cpl(struct kvm_vcpu *vcpu) +{ + return 0; +} + +void tdx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg) +{ + kvm_register_mark_available(vcpu, reg); + switch (reg) { + case VCPU_REGS_RSP: + case VCPU_REGS_RIP: + case VCPU_EXREG_PDPTR: + case VCPU_EXREG_CR0: + case VCPU_EXREG_CR3: + case VCPU_EXREG_CR4: + break; + default: + KVM_BUG_ON(1, vcpu->kvm); + break; + } +} + +unsigned long tdx_get_rflags(struct kvm_vcpu *vcpu) +{ + return 0; +} + +u64 tdx_get_segment_base(struct kvm_vcpu *vcpu, int seg) +{ + return 0; +} + +void tdx_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg) +{ + memset(var, 0, sizeof(*var)); +} + +static int tdx_get_capabilities(struct kvm_tdx_cmd *cmd) +{ + struct kvm_tdx_capabilities __user *user_caps; + const struct tdsysinfo_struct *tdsysinfo; + struct kvm_tdx_capabilities *caps = NULL; + int ret = 0; + + BUILD_BUG_ON(sizeof(struct kvm_tdx_cpuid_config) != + sizeof(struct tdx_cpuid_config)); + + if (cmd->flags) + return -EINVAL; + + tdsysinfo = tdx_get_sysinfo(); + if (!tdsysinfo) + return -EOPNOTSUPP; + + caps = kmalloc(sizeof(*caps), GFP_KERNEL); + if (!caps) + return -ENOMEM; + + user_caps = (void __user *)cmd->data; + if (copy_from_user(caps, user_caps, sizeof(*caps))) { + ret = -EFAULT; + goto out; + } + + if (caps->nr_cpuid_configs < tdsysinfo->num_cpuid_config) { + ret = -E2BIG; + goto out; + } + + *caps = (struct kvm_tdx_capabilities) { + .attrs_fixed0 = tdsysinfo->attributes_fixed0, + .attrs_fixed1 = tdsysinfo->attributes_fixed1, + .xfam_fixed0 = tdsysinfo->xfam_fixed0, + .xfam_fixed1 = tdsysinfo->xfam_fixed1, + .supported_gpaw = TDX_CAP_GPAW_48 | + (kvm_get_shadow_phys_bits() >= 52 && + cpu_has_vmx_ept_5levels()) ? TDX_CAP_GPAW_52 : 0, + .nr_cpuid_configs = tdsysinfo->num_cpuid_config, + .padding = 0, + }; + + if (copy_to_user(user_caps, caps, sizeof(*caps))) { + ret = -EFAULT; + goto out; + } + if (copy_to_user(user_caps->cpuid_configs, &tdsysinfo->cpuid_configs, + tdsysinfo->num_cpuid_config * + sizeof(struct tdx_cpuid_config))) { + ret = -EFAULT; + } + +out: + /* kfree() accepts NULL. */ + kfree(caps); + return ret; +} + +static int setup_tdparams_eptp_controls(struct kvm_cpuid2 *cpuid, + struct td_params *td_params) +{ + const struct kvm_cpuid_entry2 *entry; + int max_pa = 36; + + entry = kvm_find_cpuid_entry2(cpuid->entries, cpuid->nent, 0x80000008, 0); + if (entry) + max_pa = entry->eax & 0xff; + + td_params->eptp_controls = VMX_EPTP_MT_WB; + /* + * No CPU supports 4-level && max_pa > 48. + * "5-level paging and 5-level EPT" section 4.1 4-level EPT + * "4-level EPT is limited to translating 48-bit guest-physical + * addresses." + * cpu_has_vmx_ept_5levels() check is just in case. + */ + if (!cpu_has_vmx_ept_5levels() && max_pa > 48) + return -EINVAL; + if (cpu_has_vmx_ept_5levels() && max_pa > 48) { + td_params->eptp_controls |= VMX_EPTP_PWL_5; + td_params->exec_controls |= TDX_EXEC_CONTROL_MAX_GPAW; + } else { + td_params->eptp_controls |= VMX_EPTP_PWL_4; + } + + return 0; +} + +static void setup_tdparams_cpuids(struct kvm *kvm, + const struct tdsysinfo_struct *tdsysinfo, + struct kvm_cpuid2 *cpuid, + struct td_params *td_params) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + int i; + + /* + * td_params.cpuid_values: The number and the order of cpuid_value must + * be same to the one of struct tdsysinfo.{num_cpuid_config, cpuid_configs} + * It's assumed that td_params was zeroed. + */ + kvm_tdx->cpuid_nent = 0; + for (i = 0; i < tdsysinfo->num_cpuid_config; i++) { + const struct tdx_cpuid_config *config = &tdsysinfo->cpuid_configs[i]; + /* TDX_CPUID_NO_SUBLEAF in TDX CPUID_CONFIG means index = 0. */ + u32 index = config->sub_leaf == TDX_CPUID_NO_SUBLEAF ? 0 : config->sub_leaf; + const struct kvm_cpuid_entry2 *entry = + kvm_find_cpuid_entry2(cpuid->entries, cpuid->nent, + config->leaf, index); + struct tdx_cpuid_value *value = &td_params->cpuid_values[i]; + + if (!entry) + continue; + + /* + * tdsysinfo.cpuid_configs[].{eax, ebx, ecx, edx} + * bit 1 means it can be configured to zero or one. + * bit 0 means it must be zero. + * Mask out non-configurable bits. + */ + value->eax = entry->eax & config->eax; + value->ebx = entry->ebx & config->ebx; + value->ecx = entry->ecx & config->ecx; + value->edx = entry->edx & config->edx; + + /* Remember the setting to check for KVM_SET_CPUID2. */ + kvm_tdx->cpuid[kvm_tdx->cpuid_nent] = *entry; + kvm_tdx->cpuid_nent++; + } +} + +static int setup_tdparams_xfam(struct kvm_cpuid2 *cpuid, struct td_params *td_params) +{ + const struct kvm_cpuid_entry2 *entry; + u64 guest_supported_xcr0; + u64 guest_supported_xss; + + /* Setup td_params.xfam */ + entry = kvm_find_cpuid_entry2(cpuid->entries, cpuid->nent, 0xd, 0); + if (entry) + guest_supported_xcr0 = (entry->eax | ((u64)entry->edx << 32)); + else + guest_supported_xcr0 = 0; + guest_supported_xcr0 &= kvm_caps.supported_xcr0; + + entry = kvm_find_cpuid_entry2(cpuid->entries, cpuid->nent, 0xd, 1); + if (entry) + guest_supported_xss = (entry->ecx | ((u64)entry->edx << 32)); + else + guest_supported_xss = 0; + + /* PT can be exposed to TD guest regardless of KVM's XSS support */ + guest_supported_xss &= + (kvm_caps.supported_xss | XFEATURE_MASK_PT | TDX_TD_XFAM_CET); + + td_params->xfam = guest_supported_xcr0 | guest_supported_xss; + if (td_params->xfam & XFEATURE_MASK_LBR) { + /* + * TODO: once KVM supports LBR(save/restore LBR related + * registers around TDENTER), remove this guard. + */ +#define MSG_LBR "TD doesn't support LBR yet. KVM needs to save/restore IA32_LBR_DEPTH properly.\n" + pr_warn(MSG_LBR); + return -EOPNOTSUPP; + } + + return 0; +} + +static bool tdparams_tsx_supported(struct kvm_cpuid2 *cpuid) +{ + const struct kvm_cpuid_entry2 *entry; + u64 mask; + u32 ebx; + + entry = kvm_find_cpuid_entry2(cpuid->entries, cpuid->nent, 0x7, 0); + if (entry) + ebx = entry->ebx; + else + ebx = 0; + + mask = __feature_bit(X86_FEATURE_HLE) | __feature_bit(X86_FEATURE_RTM); + return ebx & mask; +} + +static int setup_tdparams(struct kvm *kvm, struct td_params *td_params, + struct kvm_tdx_init_vm *init_vm) +{ + struct kvm_cpuid2 *cpuid = &init_vm->cpuid; + const struct tdsysinfo_struct *tdsysinfo; + int ret; + + tdsysinfo = tdx_get_sysinfo(); + if (!tdsysinfo) + return -EOPNOTSUPP; + if (kvm->created_vcpus) + return -EBUSY; + + if (td_params->attributes & TDX_TD_ATTRIBUTE_PERFMON) { + /* + * TODO: save/restore PMU related registers around TDENTER. + * Once it's done, remove this guard. + */ +#define MSG_PERFMON "TD doesn't support perfmon yet. KVM needs to save/restore host perf registers properly.\n" + pr_warn(MSG_PERFMON); + return -EOPNOTSUPP; + } + + td_params->max_vcpus = kvm->max_vcpus; + td_params->attributes = init_vm->attributes; + td_params->tsc_frequency = TDX_TSC_KHZ_TO_25MHZ(kvm->arch.default_tsc_khz); + + ret = setup_tdparams_eptp_controls(cpuid, td_params); + if (ret) + return ret; + setup_tdparams_cpuids(kvm, tdsysinfo, cpuid, td_params); + ret = setup_tdparams_xfam(cpuid, td_params); + if (ret) + return ret; + +#define MEMCPY_SAME_SIZE(dst, src) \ + do { \ + BUILD_BUG_ON(sizeof(dst) != sizeof(src)); \ + memcpy((dst), (src), sizeof(dst)); \ + } while (0) + + MEMCPY_SAME_SIZE(td_params->mrconfigid, init_vm->mrconfigid); + MEMCPY_SAME_SIZE(td_params->mrowner, init_vm->mrowner); + MEMCPY_SAME_SIZE(td_params->mrownerconfig, init_vm->mrownerconfig); + + to_kvm_tdx(kvm)->tsx_supported = tdparams_tsx_supported(cpuid); + return 0; +} + +static int __tdx_td_init(struct kvm *kvm, struct td_params *td_params, + u64 *seamcall_err) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct tdx_module_args out; + cpumask_var_t packages; + unsigned long *tdcs_pa = NULL; + unsigned long tdr_pa = 0; + unsigned long va; + int ret, i; + u64 err; + + *seamcall_err = 0; + ret = tdx_guest_keyid_alloc(); + if (ret < 0) + return ret; + kvm_tdx->hkid = ret; + kvm_tdx->misc_cg = get_current_misc_cg(); + ret = misc_cg_try_charge(MISC_CG_RES_TDX, kvm_tdx->misc_cg, 1); + if (ret) + goto free_hkid; + + va = __get_free_page(GFP_KERNEL_ACCOUNT); + if (!va) + goto free_hkid; + tdr_pa = __pa(va); + + tdcs_pa = kcalloc(tdx_info.nr_tdcs_pages, sizeof(*kvm_tdx->tdcs_pa), + GFP_KERNEL_ACCOUNT | __GFP_ZERO); + if (!tdcs_pa) + goto free_tdr; + for (i = 0; i < tdx_info.nr_tdcs_pages; i++) { + va = __get_free_page(GFP_KERNEL_ACCOUNT); + if (!va) + goto free_tdcs; + tdcs_pa[i] = __pa(va); + } + + if (!zalloc_cpumask_var(&packages, GFP_KERNEL)) { + ret = -ENOMEM; + goto free_tdcs; + } + cpus_read_lock(); + /* + * Need at least one CPU of the package to be online in order to + * program all packages for host key id. Check it. + */ + for_each_present_cpu(i) + cpumask_set_cpu(topology_physical_package_id(i), packages); + for_each_online_cpu(i) + cpumask_clear_cpu(topology_physical_package_id(i), packages); + if (!cpumask_empty(packages)) { + ret = -EIO; + /* + * Because it's hard for human operator to figure out the + * reason, warn it. + */ +#define MSG_ALLPKG "All packages need to have online CPU to create TD. Online CPU and retry.\n" + pr_warn_ratelimited(MSG_ALLPKG); + goto free_packages; + } + + /* + * Acquire global lock to avoid TDX_OPERAND_BUSY: + * TDH.MNG.CREATE and other APIs try to lock the global Key Owner + * Table (KOT) to track the assigned TDX private HKID. It doesn't spin + * to acquire the lock, returns TDX_OPERAND_BUSY instead, and let the + * caller to handle the contention. This is because of time limitation + * usable inside the TDX module and OS/VMM knows better about process + * scheduling. + * + * APIs to acquire the lock of KOT: + * TDH.MNG.CREATE, TDH.MNG.KEY.FREEID, TDH.MNG.VPFLUSHDONE, and + * TDH.PHYMEM.CACHE.WB. + */ + mutex_lock(&tdx_lock); + err = tdh_mng_create(tdr_pa, kvm_tdx->hkid); + mutex_unlock(&tdx_lock); + if (err == TDX_RND_NO_ENTROPY) { + ret = -EAGAIN; + goto free_packages; + } + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_CREATE, err, NULL); + ret = -EIO; + goto free_packages; + } + kvm_tdx->tdr_pa = tdr_pa; + tdx_account_ctl_page(kvm); + + for_each_online_cpu(i) { + int pkg = topology_physical_package_id(i); + + if (cpumask_test_and_set_cpu(pkg, packages)) + continue; + + /* + * Program the memory controller in the package with an + * encryption key associated to a TDX private host key id + * assigned to this TDR. Concurrent operations on same memory + * controller results in TDX_OPERAND_BUSY. Avoid this race by + * mutex. + */ + mutex_lock(&tdx_mng_key_config_lock[pkg]); + ret = smp_call_on_cpu(i, tdx_do_tdh_mng_key_config, + &kvm_tdx->tdr_pa, true); + mutex_unlock(&tdx_mng_key_config_lock[pkg]); + if (ret) + break; + } + if (!ret) + atomic_inc(&nr_configured_hkid); + cpus_read_unlock(); + free_cpumask_var(packages); + if (ret) { + i = 0; + goto teardown; + } + + kvm_tdx->tdcs_pa = tdcs_pa; + for (i = 0; i < tdx_info.nr_tdcs_pages; i++) { + err = tdh_mng_addcx(kvm_tdx->tdr_pa, tdcs_pa[i]); + if (err == TDX_RND_NO_ENTROPY) { + /* Here it's hard to allow userspace to retry. */ + ret = -EBUSY; + goto teardown; + } + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_ADDCX, err, NULL); + ret = -EIO; + goto teardown; + } + tdx_account_ctl_page(kvm); + } + + err = tdh_mng_init(kvm_tdx->tdr_pa, __pa(td_params), &out); + if ((err & TDX_SEAMCALL_STATUS_MASK) == TDX_OPERAND_INVALID) { + /* + * Because a user gives operands, don't warn. + * Return a hint to the user because it's sometimes hard for the + * user to figure out which operand is invalid. SEAMCALL status + * code includes which operand caused invalid operand error. + */ + *seamcall_err = err; + ret = -EINVAL; + goto teardown; + } else if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MNG_INIT, err, &out); + ret = -EIO; + goto teardown; + } + + kvm_set_apicv_inhibit(kvm, APICV_INHIBIT_REASON_TDX); + + return 0; + + /* + * The sequence for freeing resources from a partially initialized TD + * varies based on where in the initialization flow failure occurred. + * Simply use the full teardown and destroy, which naturally play nice + * with partial initialization. + */ +teardown: + for (; i < tdx_info.nr_tdcs_pages; i++) { + if (tdcs_pa[i]) { + free_page((unsigned long)__va(tdcs_pa[i])); + tdcs_pa[i] = 0; + } + } + if (!kvm_tdx->tdcs_pa) + kfree(tdcs_pa); + tdx_mmu_release_hkid(kvm); + tdx_vm_free(kvm); + return ret; + +free_packages: + cpus_read_unlock(); + free_cpumask_var(packages); +free_tdcs: + for (i = 0; i < tdx_info.nr_tdcs_pages; i++) { + if (tdcs_pa[i]) + free_page((unsigned long)__va(tdcs_pa[i])); + } + kfree(tdcs_pa); + kvm_tdx->tdcs_pa = NULL; + +free_tdr: + if (tdr_pa) + free_page((unsigned long)__va(tdr_pa)); + kvm_tdx->tdr_pa = 0; +free_hkid: + if (is_hkid_assigned(kvm_tdx)) + tdx_hkid_free(kvm_tdx); + return ret; +} + +static int tdx_td_init(struct kvm *kvm, struct kvm_tdx_cmd *cmd) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct kvm_tdx_init_vm *init_vm = NULL; + struct td_params *td_params = NULL; + int ret; + + BUILD_BUG_ON(sizeof(*init_vm) != 8 * 1024); + BUILD_BUG_ON(sizeof(struct td_params) != 1024); + + if (is_hkid_assigned(kvm_tdx)) + return -EINVAL; + + if (cmd->flags) + return -EINVAL; + + WARN_ON_ONCE(kvm_tdx->cpuid); + kvm_tdx->cpuid = kzalloc(flex_array_size(init_vm, cpuid.entries, KVM_MAX_CPUID_ENTRIES), + GFP_KERNEL); + if (!kvm_tdx->cpuid) + return -ENOMEM; + + init_vm = kzalloc(struct_size(init_vm, cpuid.entries, KVM_MAX_CPUID_ENTRIES), + GFP_KERNEL); + if (!init_vm) { + ret = -ENOMEM; + goto out; + } + if (copy_from_user(init_vm, (void __user *)cmd->data, sizeof(*init_vm))) { + ret = -EFAULT; + goto out; + } + if (init_vm->cpuid.nent > KVM_MAX_CPUID_ENTRIES) { + ret = -E2BIG; + goto out; + } + if (copy_from_user(init_vm->cpuid.entries, + (void __user *)cmd->data + sizeof(*init_vm), + flex_array_size(init_vm, cpuid.entries, init_vm->cpuid.nent))) { + ret = -EFAULT; + goto out; + } + + if (memchr_inv(init_vm->reserved, 0, sizeof(init_vm->reserved))) { + ret = -EINVAL; + goto out; + } + if (init_vm->cpuid.padding) { + ret = -EINVAL; + goto out; + } + + td_params = kzalloc(sizeof(struct td_params), GFP_KERNEL); + if (!td_params) { + ret = -ENOMEM; + goto out; + } + + ret = setup_tdparams(kvm, td_params, init_vm); + if (ret) + goto out; + + ret = __tdx_td_init(kvm, td_params, &cmd->error); + if (ret) + goto out; + + kvm_tdx->tsc_offset = td_tdcs_exec_read64(kvm_tdx, TD_TDCS_EXEC_TSC_OFFSET); + kvm_tdx->attributes = td_params->attributes; + kvm_tdx->xfam = td_params->xfam; + + if (td_params->exec_controls & TDX_EXEC_CONTROL_MAX_GPAW) + kvm->arch.gfn_shared_mask = gpa_to_gfn(BIT_ULL(51)); + else + kvm->arch.gfn_shared_mask = gpa_to_gfn(BIT_ULL(47)); + +out: + /* kfree() accepts NULL. */ + if (ret) { + kfree(kvm_tdx->cpuid); + kvm_tdx->cpuid = NULL; + kvm_tdx->cpuid_nent = 0; + } + kfree(init_vm); + kfree(td_params); + return ret; +} + +void tdx_flush_tlb(struct kvm_vcpu *vcpu) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + + /* + * Don't need to flush shared EPTP: + * "TD VCPU TLB Address Spaced Identifier" in the TDX module spec: + * The TLB entries for TD are tagged with: + * SEAM (1 bit) + * VPID + * Secure EPT root (51:12 bits) with HKID = 0 + * PCID + * for *both* Secure-EPT and Shared-EPT. + * TLB flush with Secure-EPT root by tdx_track() results in flushing + * the conversion of both Secure-EPT and Shared-EPT. + */ + + /* + * See tdx_track(). Wait for tlb shootdown initiater to finish + * TDH_MEM_TRACK() so that shared-EPT/secure-EPT TLB is flushed + * on the next TDENTER. + */ + while (atomic_read(&kvm_tdx->tdh_mem_track)) + cpu_relax(); +} + +void tdx_flush_tlb_current(struct kvm_vcpu *vcpu) +{ + /* + * flush_tlb_current() is used only the first time for the vcpu to run. + * As it isn't performance critical, keep this function simple. + */ + tdx_track(to_kvm_tdx(vcpu->kvm)); +} + +#define TDX_SEPT_PFERR (PFERR_WRITE_MASK | PFERR_GUEST_ENC_MASK) + +static int tdx_init_mem_region(struct kvm *kvm, struct kvm_tdx_cmd *cmd) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + struct kvm_tdx_init_mem_region region; + struct kvm_vcpu *vcpu; + struct page *page; + u64 error_code; + int idx, ret = 0; + bool added = false; + + /* Once TD is finalized, the initial guest memory is fixed. */ + if (is_td_finalized(kvm_tdx)) + return -EINVAL; + + /* The BSP vCPU must be created before initializing memory regions. */ + if (!atomic_read(&kvm->online_vcpus)) + return -EINVAL; + + if (cmd->flags & ~KVM_TDX_MEASURE_MEMORY_REGION) + return -EINVAL; + + if (copy_from_user(®ion, (void __user *)cmd->data, sizeof(region))) + return -EFAULT; + + /* Sanity check */ + if (!IS_ALIGNED(region.source_addr, PAGE_SIZE) || + !IS_ALIGNED(region.gpa, PAGE_SIZE) || + !region.nr_pages || + region.gpa + (region.nr_pages << PAGE_SHIFT) <= region.gpa || + !kvm_is_private_gpa(kvm, region.gpa) || + !kvm_is_private_gpa(kvm, region.gpa + (region.nr_pages << PAGE_SHIFT))) + return -EINVAL; + + vcpu = kvm_get_vcpu(kvm, 0); + if (mutex_lock_killable(&vcpu->mutex)) + return -EINTR; + + vcpu_load(vcpu); + idx = srcu_read_lock(&kvm->srcu); + + kvm_mmu_reload(vcpu); + + while (region.nr_pages) { + if (signal_pending(current)) { + ret = -ERESTARTSYS; + break; + } + + if (need_resched()) + cond_resched(); + + /* Pin the source page. */ + ret = get_user_pages_fast(region.source_addr, 1, 0, &page); + if (ret < 0) + break; + if (ret != 1) { + ret = -ENOMEM; + break; + } + + kvm_tdx->source_pa = pfn_to_hpa(page_to_pfn(page)) | + (cmd->flags & KVM_TDX_MEASURE_MEMORY_REGION); + + /* TODO: large page support. */ + error_code = TDX_SEPT_PFERR; + error_code |= (PG_LEVEL_4K << PFERR_LEVEL_START_BIT) & + PFERR_LEVEL_MASK; + ret = kvm_mmu_map_tdp_page(vcpu, region.gpa, error_code, + PG_LEVEL_4K); + put_page(page); + if (ret) + break; + + region.source_addr += PAGE_SIZE; + region.gpa += PAGE_SIZE; + region.nr_pages--; + added = true; + } + + srcu_read_unlock(&kvm->srcu, idx); + vcpu_put(vcpu); + + mutex_unlock(&vcpu->mutex); + + if (added && region.nr_pages > 0) + ret = -EAGAIN; + if (copy_to_user((void __user *)cmd->data, ®ion, sizeof(region))) + ret = -EFAULT; + + return ret; +} + +static int tdx_td_finalizemr(struct kvm *kvm) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(kvm); + u64 err; + + if (!is_hkid_assigned(kvm_tdx) || is_td_finalized(kvm_tdx)) + return -EINVAL; + + err = tdh_mr_finalize(kvm_tdx->tdr_pa); + if (WARN_ON_ONCE(err)) { + pr_tdx_error(TDH_MR_FINALIZE, err, NULL); + return -EIO; + } + + kvm_tdx->finalized = true; + return 0; +} + +int tdx_vm_ioctl(struct kvm *kvm, void __user *argp) +{ + struct kvm_tdx_cmd tdx_cmd; + int r; + + if (copy_from_user(&tdx_cmd, argp, sizeof(struct kvm_tdx_cmd))) + return -EFAULT; + if (tdx_cmd.error) + return -EINVAL; + + mutex_lock(&kvm->lock); + + switch (tdx_cmd.id) { + case KVM_TDX_CAPABILITIES: + r = tdx_get_capabilities(&tdx_cmd); + break; + case KVM_TDX_INIT_VM: + r = tdx_td_init(kvm, &tdx_cmd); + break; + case KVM_TDX_INIT_MEM_REGION: + r = tdx_init_mem_region(kvm, &tdx_cmd); + break; + case KVM_TDX_FINALIZE_VM: + r = tdx_td_finalizemr(kvm); + break; + default: + r = -EINVAL; + goto out; + } + + if (copy_to_user(argp, &tdx_cmd, sizeof(struct kvm_tdx_cmd))) + r = -EFAULT; + +out: + mutex_unlock(&kvm->lock); + return r; +} + +/* VMM can pass one 64bit auxiliary data to vcpu via RCX for guest BIOS. */ +static int tdx_td_vcpu_init(struct kvm_vcpu *vcpu, u64 vcpu_rcx) +{ + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + struct vcpu_tdx *tdx = to_tdx(vcpu); + unsigned long *tdvpx_pa = NULL; + unsigned long tdvpr_pa; + unsigned long va; + int ret, i; + u64 err; + + if (is_td_vcpu_created(tdx)) + return -EINVAL; + + /* + * vcpu_free method frees allocated pages. Avoid partial setup so + * that the method can't handle it. + */ + va = __get_free_page(GFP_KERNEL_ACCOUNT); + if (!va) + return -ENOMEM; + tdvpr_pa = __pa(va); + + tdvpx_pa = kcalloc(tdx_info.nr_tdvpx_pages, sizeof(*tdx->tdvpx_pa), + GFP_KERNEL_ACCOUNT); + if (!tdvpx_pa) { + ret = -ENOMEM; + goto free_tdvpr; + } + for (i = 0; i < tdx_info.nr_tdvpx_pages; i++) { + va = __get_free_page(GFP_KERNEL_ACCOUNT); + if (!va) { + ret = -ENOMEM; + goto free_tdvpx; + } + tdvpx_pa[i] = __pa(va); + } + + err = tdh_vp_create(kvm_tdx->tdr_pa, tdvpr_pa); + if (KVM_BUG_ON(err, vcpu->kvm)) { + ret = -EIO; + pr_tdx_error(TDH_VP_CREATE, err, NULL); + goto free_tdvpx; + } + tdx->tdvpr_pa = tdvpr_pa; + tdx_account_ctl_page(vcpu->kvm); + + tdx->tdvpx_pa = tdvpx_pa; + for (i = 0; i < tdx_info.nr_tdvpx_pages; i++) { + err = tdh_vp_addcx(tdx->tdvpr_pa, tdvpx_pa[i]); + if (KVM_BUG_ON(err, vcpu->kvm)) { + pr_tdx_error(TDH_VP_ADDCX, err, NULL); + for (; i < tdx_info.nr_tdvpx_pages; i++) { + free_page((unsigned long)__va(tdvpx_pa[i])); + tdvpx_pa[i] = 0; + } + /* vcpu_free method frees TDVPX and TDR donated to TDX */ + return -EIO; + } + tdx_account_ctl_page(vcpu->kvm); + } + + err = tdh_vp_init(tdx->tdvpr_pa, vcpu_rcx); + if (KVM_BUG_ON(err, vcpu->kvm)) { + pr_tdx_error(TDH_VP_INIT, err, NULL); + return -EIO; + } + + vcpu->arch.mp_state = KVM_MP_STATE_RUNNABLE; + return 0; + +free_tdvpx: + for (i = 0; i < tdx_info.nr_tdvpx_pages; i++) { + if (tdvpx_pa[i]) + free_page((unsigned long)__va(tdvpx_pa[i])); + tdvpx_pa[i] = 0; + } + kfree(tdvpx_pa); + tdx->tdvpx_pa = NULL; +free_tdvpr: + if (tdvpr_pa) + free_page((unsigned long)__va(tdvpr_pa)); + tdx->tdvpr_pa = 0; + + return ret; +} + +static int tdx_vcpu_init_mtrr(struct kvm_vcpu *vcpu) +{ + struct msr_data msr; + int ret; + int i; + + /* + * To avoid confusion with reporting VNCT = 0, explicitly disable + * vaiale-range reisters. + */ + for (i = 0; i < KVM_NR_VAR_MTRR; i++) { + /* phymask */ + msr = (struct msr_data) { + .host_initiated = true, + .index = 0x200 + 2 * i + 1, + .data = 0, /* valid = 0 to disable. */ + }; + ret = kvm_set_msr_common(vcpu, &msr); + if (ret) + return -EINVAL; + } + + /* Set MTRR to use writeback on reset. */ + msr = (struct msr_data) { + .host_initiated = true, + .index = MSR_MTRRdefType, + /* + * Set E(enable MTRR)=1, FE(enable fixed range MTRR)=0, default + * type=writeback on reset to avoid UC. Note E=0 means all + * memory is UC. + */ + .data = (1 << 11) | MTRR_TYPE_WRBACK, + }; + ret = kvm_set_msr_common(vcpu, &msr); + if (ret) + return -EINVAL; + return 0; +} + +int tdx_vcpu_ioctl(struct kvm_vcpu *vcpu, void __user *argp) +{ + struct msr_data apic_base_msr; + struct kvm_tdx *kvm_tdx = to_kvm_tdx(vcpu->kvm); + struct vcpu_tdx *tdx = to_tdx(vcpu); + struct kvm_tdx_cmd cmd; + int ret; + + if (tdx->initialized) + return -EINVAL; + + if (!is_hkid_assigned(kvm_tdx) || is_td_finalized(kvm_tdx)) + return -EINVAL; + + if (copy_from_user(&cmd, argp, sizeof(cmd))) + return -EFAULT; + + if (cmd.error) + return -EINVAL; + + /* Currently only KVM_TDX_INTI_VCPU is defined for vcpu operation. */ + if (cmd.flags || cmd.id != KVM_TDX_INIT_VCPU) + return -EINVAL; + + /* + * As TDX requires X2APIC, set local apic mode to X2APIC. User space + * VMM, e.g. qemu, is required to set CPUID[0x1].ecx.X2APIC=1 by + * KVM_SET_CPUID2. Otherwise kvm_set_apic_base() will fail. + */ + apic_base_msr = (struct msr_data) { + .host_initiated = true, + .data = APIC_DEFAULT_PHYS_BASE | LAPIC_MODE_X2APIC | + (kvm_vcpu_is_reset_bsp(vcpu) ? MSR_IA32_APICBASE_BSP : 0), + }; + if (kvm_set_apic_base(vcpu, &apic_base_msr)) + return -EINVAL; + + ret = tdx_vcpu_init_mtrr(vcpu); + if (ret) + return ret; + + ret = tdx_td_vcpu_init(vcpu, (u64)cmd.data); + if (ret) + return ret; + + td_vmcs_write16(tdx, POSTED_INTR_NV, POSTED_INTR_VECTOR); + td_vmcs_write64(tdx, POSTED_INTR_DESC_ADDR, __pa(&tdx->pi_desc)); + td_vmcs_setbit32(tdx, PIN_BASED_VM_EXEC_CONTROL, PIN_BASED_POSTED_INTR); + + if (vcpu->kvm->arch.bus_lock_detection_enabled) + td_vmcs_setbit32(tdx, + SECONDARY_VM_EXEC_CONTROL, + SECONDARY_EXEC_BUS_LOCK_DETECTION); + + tdx->initialized = true; + return 0; +} + +static int __init tdx_module_setup(void) +{ + const struct tdsysinfo_struct *tdsysinfo; + int ret = 0; + + BUILD_BUG_ON(sizeof(*tdsysinfo) > TDSYSINFO_STRUCT_SIZE); + BUILD_BUG_ON(TDX_MAX_NR_CPUID_CONFIGS != 37); + + ret = tdx_enable(); + if (ret) { + pr_info("Failed to initialize TDX module.\n"); + return ret; + } + + tdsysinfo = tdx_get_sysinfo(); + WARN_ON(tdsysinfo->num_cpuid_config > TDX_MAX_NR_CPUID_CONFIGS); + tdx_info = (struct tdx_info) { + .nr_tdcs_pages = tdsysinfo->tdcs_base_size / PAGE_SIZE, + /* + * TDVPS = TDVPR(4K page) + TDVPX(multiple 4K pages). + * -1 for TDVPR. + */ + .nr_tdvpx_pages = tdsysinfo->tdvps_base_size / PAGE_SIZE - 1, + }; + + pr_info("nr_tdcs %d nr_tdvpx %d\n", + tdx_info.nr_tdcs_pages, tdx_info.nr_tdvpx_pages); + return 0; +} + +bool tdx_is_vm_type_supported(unsigned long type) +{ + /* enable_tdx check is done by the caller. */ + return type == KVM_X86_TDX_VM; +} + +struct vmx_tdx_enabled { + cpumask_var_t vmx_enabled; + atomic_t err; +}; + +static void __init vmx_tdx_on(void *_vmx_tdx) +{ + struct vmx_tdx_enabled *vmx_tdx = _vmx_tdx; + int r; + + r = vmx_hardware_enable(); + if (!r) { + cpumask_set_cpu(smp_processor_id(), vmx_tdx->vmx_enabled); + r = tdx_cpu_enable(); + } + if (r) + atomic_set(&vmx_tdx->err, r); +} + +static void __init vmx_off(void *_vmx_enabled) +{ + cpumask_var_t *vmx_enabled = (cpumask_var_t *)_vmx_enabled; + + if (cpumask_test_cpu(smp_processor_id(), *vmx_enabled)) + vmx_hardware_disable(); +} + +int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops) +{ + struct vmx_tdx_enabled vmx_tdx = { + .err = ATOMIC_INIT(0), + }; + int max_pkgs; + int r = 0; + int i; + + if (!cpu_feature_enabled(X86_FEATURE_MOVDIR64B)) { + pr_warn("MOVDIR64B is reqiured for TDX\n"); + return -EOPNOTSUPP; + } + if (!enable_ept) { + pr_warn("Cannot enable TDX with EPT disabled\n"); + return -EINVAL; + } + + /* tdx_hardware_disable() uses associated_tdvcpus. */ + for_each_possible_cpu(i) + INIT_LIST_HEAD(&per_cpu(associated_tdvcpus, i)); + + for (i = 0; i < ARRAY_SIZE(tdx_uret_msrs); i++) { + /* + * Here it checks if MSRs (tdx_uret_msrs) can be saved/restored + * before returning to user space. + * + * this_cpu_ptr(user_return_msrs)->registered isn't checked + * because the registration is done at vcpu runtime by + * kvm_set_user_return_msr(). + * Here is setting up cpu feature before running vcpu, + * registered is already false. + */ + tdx_uret_msrs[i].slot = kvm_find_user_return_msr(tdx_uret_msrs[i].msr); + if (tdx_uret_msrs[i].slot == -1) { + /* If any MSR isn't supported, it is a KVM bug */ + pr_err("MSR %x isn't included by kvm_find_user_return_msr\n", + tdx_uret_msrs[i].msr); + return -EIO; + } + } + tdx_uret_tsx_ctrl_slot = kvm_find_user_return_msr(MSR_IA32_TSX_CTRL); + if (tdx_uret_tsx_ctrl_slot == -1 && boot_cpu_has(X86_FEATURE_MSR_TSX_CTRL)) { + pr_err("MSR_IA32_TSX_CTRL isn't included by kvm_find_user_return_msr\n"); + return -EIO; + } + + /* + * TDX supports tdx_num_keyids keys total, the first private key is used + * as global encryption key to encrypt TDX module managed global scope. + * The left private keys is the available keys for launching guest TDs. + * The total number of available keys for TDs is (tdx_num_keyid - 1). + */ + if (misc_cg_set_capacity(MISC_CG_RES_TDX, tdx_get_nr_guest_keyids() - 1)) + return -EINVAL; + + max_pkgs = topology_max_packages(); + tdx_mng_key_config_lock = kcalloc(max_pkgs, sizeof(*tdx_mng_key_config_lock), + GFP_KERNEL); + if (!tdx_mng_key_config_lock) { + r = -ENOMEM; + goto out; + } + for (i = 0; i < max_pkgs; i++) + mutex_init(&tdx_mng_key_config_lock[i]); + + if (!zalloc_cpumask_var(&vmx_tdx.vmx_enabled, GFP_KERNEL)) { + r = -ENOMEM; + goto out; + } + + /* tdx_enable() in tdx_module_setup() requires cpus lock. */ + cpus_read_lock(); + /* + * REVERTME: The current TDX module requires TDH_SYS_LP_INIT for all + * LPs to initialize. It requires all present LPs to be online. + * Once the TDX module is updated to allow offline LPs, remove this + * warning. + */ + if (!cpumask_equal(cpu_online_mask, cpu_present_mask)) + pr_warn("The old TDX module requires all present CPUs to be online to initialize.\n"); + on_each_cpu(vmx_tdx_on, &vmx_tdx, true); /* TDX requires vmxon. */ + r = atomic_read(&vmx_tdx.err); + if (!r) + r = tdx_module_setup(); + else + r = -EIO; + on_each_cpu(vmx_off, &vmx_tdx.vmx_enabled, true); + cpus_read_unlock(); + free_cpumask_var(vmx_tdx.vmx_enabled); + if (r) + goto out; + + x86_ops->link_private_spt = tdx_sept_link_private_spt; + x86_ops->free_private_spt = tdx_sept_free_private_spt; + x86_ops->split_private_spt = tdx_sept_split_private_spt; + x86_ops->merge_private_spt = tdx_sept_merge_private_spt; + x86_ops->set_private_spte = tdx_sept_set_private_spte; + x86_ops->remove_private_spte = tdx_sept_remove_private_spte; + x86_ops->zap_private_spte = tdx_sept_zap_private_spte; + x86_ops->unzap_private_spte = tdx_sept_unzap_private_spte; + + return 0; + +out: + /* kfree() accepts NULL. */ + kfree(tdx_mng_key_config_lock); + tdx_mng_key_config_lock = NULL; + misc_cg_set_capacity(MISC_CG_RES_TDX, 0); + return r; +} + +void tdx_hardware_unsetup(void) +{ + /* kfree accepts NULL. */ + kfree(tdx_mng_key_config_lock); + misc_cg_set_capacity(MISC_CG_RES_TDX, 0); +} + +int tdx_offline_cpu(void) +{ + int curr_cpu = smp_processor_id(); + cpumask_var_t packages; + int ret = 0; + int i; + + /* No TD is running. Allow any cpu to be offline. */ + if (!atomic_read(&nr_configured_hkid)) + return 0; + + /* + * In order to reclaim TDX HKID, (i.e. when deleting guest TD), need to + * call TDH.PHYMEM.PAGE.WBINVD on all packages to program all memory + * controller with pconfig. If we have active TDX HKID, refuse to + * offline the last online cpu. + */ + if (!zalloc_cpumask_var(&packages, GFP_KERNEL)) + return -ENOMEM; + for_each_online_cpu(i) { + if (i != curr_cpu) + cpumask_set_cpu(topology_physical_package_id(i), packages); + } + /* Check if this cpu is the last online cpu of this package. */ + if (!cpumask_test_cpu(topology_physical_package_id(curr_cpu), packages)) + ret = -EBUSY; + free_cpumask_var(packages); + if (ret) + /* + * Because it's hard for human operator to understand the + * reason, warn it. + */ +#define MSG_ALLPKG_ONLINE \ + "TDX requires all packages to have an online CPU. Delete all TDs in order to offline all CPUs of a package.\n" + pr_warn_ratelimited(MSG_ALLPKG_ONLINE); + return ret; +} + +static __always_inline bool tdx_guest(struct kvm *kvm) +{ + struct kvm_tdx *tdx_kvm = to_kvm_tdx(kvm); + + return tdx_kvm->finalized; +} + +#define for_each_memslot_pair(memslots_1, memslots_2, memslot_iter_1, \ + memslot_iter_2) \ + for (memslot_iter_1 = rb_first(&memslots_1->gfn_tree), \ + memslot_iter_2 = rb_first(&memslots_2->gfn_tree); \ + memslot_iter_1 && memslot_iter_2; \ + memslot_iter_1 = rb_next(memslot_iter_1), \ + memslot_iter_2 = rb_next(memslot_iter_2)) + +static int tdx_migrate_from(struct kvm *dst, struct kvm *src) +{ + struct rb_node *src_memslot_iter, *dst_memslot_iter; + struct vcpu_tdx *dst_tdx_vcpu, *src_tdx_vcpu; + struct kvm_memslots *src_slots, *dst_slots; + struct kvm_vcpu *dst_vcpu, *src_vcpu; + struct kvm_tdx *src_tdx, *dst_tdx; + unsigned long i, j; + int ret; + + src_tdx = to_kvm_tdx(src); + dst_tdx = to_kvm_tdx(dst); + + src_slots = __kvm_memslots(src, 0); + dst_slots = __kvm_memslots(dst, 0); + + ret = -EINVAL; + + if (!src_tdx->finalized) { + pr_warn("Cannot migrate from a non finalized VM\n"); + goto abort; + } + + // Traverse both memslots in gfn order and compare them + for_each_memslot_pair(src_slots, dst_slots, src_memslot_iter, dst_memslot_iter) { + struct kvm_memory_slot *src_slot, *dst_slot; + + src_slot = + container_of(src_memslot_iter, struct kvm_memory_slot, + gfn_node[src_slots->node_idx]); + dst_slot = + container_of(src_memslot_iter, struct kvm_memory_slot, + gfn_node[dst_slots->node_idx]); + + if (src_slot->base_gfn != dst_slot->base_gfn || + src_slot->npages != dst_slot->npages) { + pr_warn("Cannot migrate between VMs with different memory slots configurations\n"); + goto abort; + } + + if (src_slot->flags != dst_slot->flags) { + pr_warn("Cannot migrate between VMs with different memory slots configurations\n"); + goto abort; + } + + if (src_slot->flags & KVM_MEM_PRIVATE) { + rcu_read_lock(); + if (src_slot->gmem.file->f_inode->i_ino != + dst_slot->gmem.file->f_inode->i_ino) { + pr_warn("Private memslots points to different restricted files\n"); + rcu_read_unlock(); + goto abort; + } + + if (src_slot->gmem.pgoff != dst_slot->gmem.pgoff) { + pr_warn("Private memslots points to the restricted file at different offsets\n"); + rcu_read_unlock(); + goto abort; + } + rcu_read_unlock(); + } + } + + if (src_memslot_iter || dst_memslot_iter) { + pr_warn("Cannot migrate between VMs with different memory slots configurations\n"); + goto abort; + } + + dst_tdx->hkid = src_tdx->hkid; + dst_tdx->tdr_pa = src_tdx->tdr_pa; + + dst_tdx->tdcs_pa = kcalloc(tdx_info.nr_tdcs_pages, sizeof(*dst_tdx->tdcs_pa), + GFP_KERNEL_ACCOUNT | __GFP_ZERO); + if (!dst_tdx->tdcs_pa) { + ret = -ENOMEM; + goto late_abort; + } + memcpy(dst_tdx->tdcs_pa, src_tdx->tdcs_pa, + tdx_info.nr_tdcs_pages * sizeof(*dst_tdx->tdcs_pa)); + + dst_tdx->tsc_offset = src_tdx->tsc_offset; + dst_tdx->attributes = src_tdx->attributes; + dst_tdx->xfam = src_tdx->xfam; + dst_tdx->kvm.arch.gfn_shared_mask = src_tdx->kvm.arch.gfn_shared_mask; + + kvm_for_each_vcpu(i, src_vcpu, src) + tdx_flush_vp_on_cpu(src_vcpu); + + /* Copy per-vCPU state */ + kvm_for_each_vcpu(i, src_vcpu, src) { + src_tdx_vcpu = to_tdx(src_vcpu); + dst_vcpu = kvm_get_vcpu(dst, i); + dst_tdx_vcpu = to_tdx(dst_vcpu); + + vcpu_load(dst_vcpu); + + memcpy(dst_vcpu->arch.regs, src_vcpu->arch.regs, + NR_VCPU_REGS * sizeof(src_vcpu->arch.regs[0])); + dst_vcpu->arch.regs_avail = src_vcpu->arch.regs_avail; + dst_vcpu->arch.regs_dirty = src_vcpu->arch.regs_dirty; + + dst_vcpu->arch.tsc_offset = dst_tdx->tsc_offset; + + dst_tdx_vcpu->interrupt_disabled_hlt = src_tdx_vcpu->interrupt_disabled_hlt; + dst_tdx_vcpu->buggy_hlt_workaround = src_tdx_vcpu->buggy_hlt_workaround; + + dst_tdx_vcpu->tdvpr_pa = src_tdx_vcpu->tdvpr_pa; + dst_tdx_vcpu->tdvpx_pa = kcalloc(tdx_info.nr_tdvpx_pages, + sizeof(*dst_tdx_vcpu->tdvpx_pa), + GFP_KERNEL_ACCOUNT); + if (!dst_tdx_vcpu->tdvpx_pa) { + ret = -ENOMEM; + vcpu_put(dst_vcpu); + goto late_abort; + } + memcpy(dst_tdx_vcpu->tdvpx_pa, src_tdx_vcpu->tdvpx_pa, + tdx_info.nr_tdvpx_pages * sizeof(*dst_tdx_vcpu->tdvpx_pa)); + + td_vmcs_write64(dst_tdx_vcpu, POSTED_INTR_DESC_ADDR, __pa(&dst_tdx_vcpu->pi_desc)); + + /* Copy private EPT tables */ + if (kvm_mmu_move_private_pages_from(dst_vcpu, src_vcpu)) { + ret = -EINVAL; + vcpu_put(dst_vcpu); + goto late_abort; + } + + for (j = 0; j < tdx_info.nr_tdvpx_pages; j++) + src_tdx_vcpu->tdvpx_pa[j] = 0; + + src_tdx_vcpu->tdvpr_pa = 0; + + vcpu_put(dst_vcpu); + } + + for_each_memslot_pair(src_slots, dst_slots, src_memslot_iter, + dst_memslot_iter) { + struct kvm_memory_slot *src_slot, *dst_slot; + + src_slot = container_of(src_memslot_iter, + struct kvm_memory_slot, + gfn_node[src_slots->node_idx]); + dst_slot = container_of(src_memslot_iter, + struct kvm_memory_slot, + gfn_node[dst_slots->node_idx]); + + for (i = 1; i < KVM_NR_PAGE_SIZES; ++i) { + unsigned long ugfn; + int level = i + 1; + + /* + * If the gfn and userspace address are not aligned wrt each other, then + * large page support should already be disabled at this level. + */ + ugfn = dst_slot->userspace_addr >> PAGE_SHIFT; + if ((dst_slot->base_gfn ^ ugfn) & (KVM_PAGES_PER_HPAGE(level) - 1)) + continue; + + dst_slot->arch.lpage_info[i - 1] = + src_slot->arch.lpage_info[i - 1]; + src_slot->arch.lpage_info[i - 1] = NULL; + } + } + + dst->mem_attr_array.xa_head = src->mem_attr_array.xa_head; + src->mem_attr_array.xa_head = NULL; + + dst_tdx->finalized = true; + + /* Clear source VM to avoid freeing the hkid and pages on VM put */ + src_tdx->hkid = -1; + src_tdx->tdr_pa = 0; + for (i = 0; i < tdx_info.nr_tdcs_pages; i++) + src_tdx->tdcs_pa[i] = 0; + + return 0; + +late_abort: + /* If we aborted after the state transfer already started, the src VM + * is no longer valid. + */ + kvm_vm_dead(src); + +abort: + dst_tdx->hkid = -1; + dst_tdx->tdr_pa = 0; + + return ret; +} + +int tdx_vm_move_enc_context_from(struct kvm *kvm, unsigned int source_fd) +{ + struct kvm_tdx *dst_tdx = to_kvm_tdx(kvm); + struct file *src_kvm_file; + struct kvm_tdx *src_tdx; + struct kvm *src_kvm; + int ret; + + src_kvm_file = fget(source_fd); + if (!file_is_kvm(src_kvm_file)) { + ret = -EBADF; + goto out_fput; + } + src_kvm = src_kvm_file->private_data; + src_tdx = to_kvm_tdx(src_kvm); + + ret = pre_move_enc_context_from(kvm, src_kvm, + &dst_tdx->migration_in_progress, + &src_tdx->migration_in_progress); + if (ret) + goto out_fput; + + if (tdx_guest(kvm) || !tdx_guest(src_kvm)) { + ret = -EINVAL; + goto out_post; + } + + ret = tdx_migrate_from(kvm, src_kvm); + if (ret) + goto out_post; + + kvm_vm_dead(src_kvm); + ret = 0; + +out_post: + post_move_enc_context_from(kvm, src_kvm, + &dst_tdx->migration_in_progress, + &src_tdx->migration_in_progress); +out_fput: + if (src_kvm_file) + fput(src_kvm_file); + return ret; +} --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx.h @@ -0,0 +1,344 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __KVM_X86_TDX_H +#define __KVM_X86_TDX_H + +#ifdef CONFIG_INTEL_TDX_HOST + +#include "posted_intr.h" +#include "pmu_intel.h" +#include "tdx_ops.h" + +struct kvm_tdx { + struct kvm kvm; + + unsigned long tdr_pa; + unsigned long *tdcs_pa; + + u64 attributes; + u64 xfam; + int hkid; + struct misc_cg *misc_cg; + + /* + * Used on each TD-exit, see tdx_user_return_update_cache(). + * TSX_CTRL value on TD exit + * - set 0 if guest TSX enabled + * - preserved if guest TSX disabled + */ + bool tsx_supported; + + hpa_t source_pa; + + bool finalized; + atomic_t tdh_mem_track; + + u64 tsc_offset; + + /* TDP MMU */ + bool has_range_blocked; + + /* + * For KVM_SET_CPUID to check consistency. Remember the one passed to + * TDH.MNG_INIT + */ + int cpuid_nent; + struct kvm_cpuid_entry2 *cpuid; + + atomic_t migration_in_progress; + +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + atomic64_t ctl_pages; + atomic64_t sept_pages[PG_LEVEL_NUM - PG_LEVEL_4K]; + atomic64_t td_pages; +#endif +}; + +union tdx_exit_reason { + struct { + /* 31:0 mirror the VMX Exit Reason format */ + u64 basic : 16; + u64 reserved16 : 1; + u64 reserved17 : 1; + u64 reserved18 : 1; + u64 reserved19 : 1; + u64 reserved20 : 1; + u64 reserved21 : 1; + u64 reserved22 : 1; + u64 reserved23 : 1; + u64 reserved24 : 1; + u64 reserved25 : 1; + u64 bus_lock_detected : 1; + u64 enclave_mode : 1; + u64 smi_pending_mtf : 1; + u64 smi_from_vmx_root : 1; + u64 reserved30 : 1; + u64 failed_vmentry : 1; + + /* 63:32 are TDX specific */ + u64 details_l1 : 8; + u64 class : 8; + u64 reserved61_48 : 14; + u64 non_recoverable : 1; + u64 error : 1; + }; + u64 full; +}; + +struct vcpu_tdx { + struct kvm_vcpu vcpu; + + /* Posted interrupt descriptor */ + struct pi_desc pi_desc; + + /* Used if this vCPU is waiting for PI notification wakeup. */ + struct list_head pi_wakeup_list; + /* Until here same layout to struct vcpu_pi. */ + + unsigned long tdvpr_pa; + unsigned long *tdvpx_pa; + + struct list_head cpu_list; + + union { + struct { + union { + struct { + u16 gpr_mask; + u16 xmm_mask; + }; + u32 regs_mask; + }; + u32 reserved; + }; + u64 rcx; + } tdvmcall; + union tdx_exit_reason exit_reason; + u64 exit_qualification; + u64 ext_exit_qualification; + u64 exit_gpa; + u32 exit_intr_info; + + bool initialized; + + bool host_state_need_save; + bool host_state_need_restore; + u64 msr_host_kernel_gs_base; + + bool interrupt_disabled_hlt; + unsigned int buggy_hlt_workaround; + + /* + * Dummy to make pmu_intel not corrupt memory. + * TODO: Support PMU for TDX. Future work. + */ + struct lbr_desc lbr_desc; +}; + +static inline bool is_td(struct kvm *kvm) +{ + return kvm->arch.vm_type == KVM_X86_TDX_VM; +} + +static inline bool is_td_vcpu(struct kvm_vcpu *vcpu) +{ + return is_td(vcpu->kvm); +} + +static inline struct kvm_tdx *to_kvm_tdx(struct kvm *kvm) +{ + KVM_BUG_ON(!is_td(kvm), kvm); + return container_of(kvm, struct kvm_tdx, kvm); +} + +static inline void tdx_account_ctl_page(struct kvm *kvm) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + atomic64_inc(&to_kvm_tdx(kvm)->ctl_pages); +#endif +} + +static inline void tdx_unaccount_ctl_page(struct kvm *kvm) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + WARN_ON_ONCE(atomic64_dec_return(&to_kvm_tdx(kvm)->ctl_pages) < 0); +#endif +} + +static inline void tdx_account_sept_page(struct kvm *kvm, enum pg_level level) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + WARN_ON_ONCE(level >= PG_LEVEL_NUM); + WARN_ON_ONCE(level < PG_LEVEL_4K); + atomic64_inc(&to_kvm_tdx(kvm)->sept_pages[level - PG_LEVEL_4K]); +#endif +} + +static inline void tdx_unaccount_sept_page(struct kvm * kvm, enum pg_level level) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + WARN_ON_ONCE(level >= PG_LEVEL_NUM); + WARN_ON_ONCE(level < PG_LEVEL_4K); + WARN_ON_ONCE(atomic64_dec_return(&to_kvm_tdx(kvm)->sept_pages[level - PG_LEVEL_4K]) < 0); +#endif +} + +static inline void tdx_account_td_pages(struct kvm *kvm, + enum pg_level level) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + WARN_ON_ONCE(level >= PG_LEVEL_NUM); + WARN_ON_ONCE(level < PG_LEVEL_4K); + atomic64_add(KVM_PAGES_PER_HPAGE(level), &to_kvm_tdx(kvm)->td_pages); +#endif +} + +static inline void tdx_unaccount_td_pages(struct kvm *kvm, + enum pg_level level) +{ +#ifdef CONFIG_KVM_TDX_ACCOUNT_PRIVATE_PAGES + WARN_ON_ONCE(level >= PG_LEVEL_NUM); + WARN_ON_ONCE(level < PG_LEVEL_4K); + WARN_ON_ONCE(atomic64_sub_return(KVM_PAGES_PER_HPAGE(level), + &to_kvm_tdx(kvm)->td_pages) < 0); +#endif +} + +static inline struct vcpu_tdx *to_tdx(struct kvm_vcpu *vcpu) +{ + KVM_BUG_ON(!is_td_vcpu(vcpu), vcpu->kvm); + return container_of(vcpu, struct vcpu_tdx, vcpu); +} + +static __always_inline void tdvps_vmcs_check(u32 field, u8 bits) +{ +#define VMCS_ENC_ACCESS_TYPE_MASK 0x1UL +#define VMCS_ENC_ACCESS_TYPE_FULL 0x0UL +#define VMCS_ENC_ACCESS_TYPE_HIGH 0x1UL +#define VMCS_ENC_ACCESS_TYPE(field) ((field) & VMCS_ENC_ACCESS_TYPE_MASK) + + /* TDX is 64bit only. HIGH field isn't supported. */ + BUILD_BUG_ON_MSG(__builtin_constant_p(field) && + VMCS_ENC_ACCESS_TYPE(field) == VMCS_ENC_ACCESS_TYPE_HIGH, + "Read/Write to TD VMCS *_HIGH fields not supported"); + + BUILD_BUG_ON(bits != 16 && bits != 32 && bits != 64); + +#define VMCS_ENC_WIDTH_MASK GENMASK(14, 13) +#define VMCS_ENC_WIDTH_16BIT (0UL << 13) +#define VMCS_ENC_WIDTH_64BIT (1UL << 13) +#define VMCS_ENC_WIDTH_32BIT (2UL << 13) +#define VMCS_ENC_WIDTH_NATURAL (3UL << 13) +#define VMCS_ENC_WIDTH(field) ((field) & VMCS_ENC_WIDTH_MASK) + + /* TDX is 64bit only. i.e. natural width = 64bit. */ + BUILD_BUG_ON_MSG(bits != 64 && __builtin_constant_p(field) && + (VMCS_ENC_WIDTH(field) == VMCS_ENC_WIDTH_64BIT || + VMCS_ENC_WIDTH(field) == VMCS_ENC_WIDTH_NATURAL), + "Invalid TD VMCS access for 64-bit field"); + BUILD_BUG_ON_MSG(bits != 32 && __builtin_constant_p(field) && + VMCS_ENC_WIDTH(field) == VMCS_ENC_WIDTH_32BIT, + "Invalid TD VMCS access for 32-bit field"); + BUILD_BUG_ON_MSG(bits != 16 && __builtin_constant_p(field) && + VMCS_ENC_WIDTH(field) == VMCS_ENC_WIDTH_16BIT, + "Invalid TD VMCS access for 16-bit field"); +} + +static __always_inline void tdvps_state_non_arch_check(u64 field, u8 bits) {} +static __always_inline void tdvps_management_check(u64 field, u8 bits) {} + +#define TDX_BUILD_TDVPS_ACCESSORS(bits, uclass, lclass) \ +static __always_inline u##bits td_##lclass##_read##bits(struct vcpu_tdx *tdx, \ + u32 field) \ +{ \ + struct tdx_module_args out; \ + u64 err; \ + \ + tdvps_##lclass##_check(field, bits); \ + err = tdh_vp_rd(tdx->tdvpr_pa, TDVPS_##uclass(field), &out); \ + if (KVM_BUG_ON(err, tdx->vcpu.kvm)) { \ + pr_err("TDH_VP_RD["#uclass".0x%x] failed: 0x%llx\n", \ + field, err); \ + return 0; \ + } \ + return (u##bits)out.r8; \ +} \ +static __always_inline void td_##lclass##_write##bits(struct vcpu_tdx *tdx, \ + u32 field, u##bits val) \ +{ \ + struct tdx_module_args out; \ + u64 err; \ + \ + tdvps_##lclass##_check(field, bits); \ + err = tdh_vp_wr(tdx->tdvpr_pa, TDVPS_##uclass(field), val, \ + GENMASK_ULL(bits - 1, 0), &out); \ + if (KVM_BUG_ON(err, tdx->vcpu.kvm)) \ + pr_err("TDH_VP_WR["#uclass".0x%x] = 0x%llx failed: 0x%llx\n", \ + field, (u64)val, err); \ +} \ +static __always_inline void td_##lclass##_setbit##bits(struct vcpu_tdx *tdx, \ + u32 field, u64 bit) \ +{ \ + struct tdx_module_args out; \ + u64 err; \ + \ + tdvps_##lclass##_check(field, bits); \ + err = tdh_vp_wr(tdx->tdvpr_pa, TDVPS_##uclass(field), bit, bit, &out); \ + if (KVM_BUG_ON(err, tdx->vcpu.kvm)) \ + pr_err("TDH_VP_WR["#uclass".0x%x] |= 0x%llx failed: 0x%llx\n", \ + field, bit, err); \ +} \ +static __always_inline void td_##lclass##_clearbit##bits(struct vcpu_tdx *tdx, \ + u32 field, u64 bit) \ +{ \ + struct tdx_module_args out; \ + u64 err; \ + \ + tdvps_##lclass##_check(field, bits); \ + err = tdh_vp_wr(tdx->tdvpr_pa, TDVPS_##uclass(field), 0, bit, &out); \ + if (KVM_BUG_ON(err, tdx->vcpu.kvm)) \ + pr_err("TDH_VP_WR["#uclass".0x%x] &= ~0x%llx failed: 0x%llx\n", \ + field, bit, err); \ +} + +TDX_BUILD_TDVPS_ACCESSORS(16, VMCS, vmcs); +TDX_BUILD_TDVPS_ACCESSORS(32, VMCS, vmcs); +TDX_BUILD_TDVPS_ACCESSORS(64, VMCS, vmcs); + +TDX_BUILD_TDVPS_ACCESSORS(8, MANAGEMENT, management); +TDX_BUILD_TDVPS_ACCESSORS(64, STATE_NON_ARCH, state_non_arch); + +static __always_inline u64 td_tdcs_exec_read64(struct kvm_tdx *kvm_tdx, u32 field) +{ + struct tdx_module_args out; + u64 err; + + err = tdh_mng_rd(kvm_tdx->tdr_pa, TDCS_EXEC(field), &out); + if (unlikely(err)) { + pr_err("TDH_MNG_RD[EXEC.0x%x] failed: 0x%llx\n", field, err); + return 0; + } + return out.r8; +} + +static __always_inline int pg_level_to_tdx_sept_level(enum pg_level level) +{ + WARN_ON_ONCE(level == PG_LEVEL_NONE); + return level - 1; +} + +#else +struct kvm_tdx { + struct kvm kvm; +}; + +struct vcpu_tdx { + struct kvm_vcpu vcpu; +}; + +static inline bool is_td(struct kvm *kvm) { return false; } +static inline bool is_td_vcpu(struct kvm_vcpu *vcpu) { return false; } +static inline struct kvm_tdx *to_kvm_tdx(struct kvm *kvm) { return NULL; } +static inline struct vcpu_tdx *to_tdx(struct kvm_vcpu *vcpu) { return NULL; } +#endif /* CONFIG_INTEL_TDX_HOST */ + +#endif /* __KVM_X86_TDX_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx_arch.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx_arch.h @@ -0,0 +1,236 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* architectural constants/data definitions for TDX SEAMCALLs */ + +#ifndef __KVM_X86_TDX_ARCH_H +#define __KVM_X86_TDX_ARCH_H + +#include + +/* + * TDX SEAMCALL API function leaves + */ +#define TDH_VP_ENTER 0 +#define TDH_MNG_ADDCX 1 +#define TDH_MEM_PAGE_ADD 2 +#define TDH_MEM_SEPT_ADD 3 +#define TDH_VP_ADDCX 4 +#define TDH_MEM_PAGE_RELOCATE 5 +#define TDH_MEM_PAGE_AUG 6 +#define TDH_MEM_RANGE_BLOCK 7 +#define TDH_MNG_KEY_CONFIG 8 +#define TDH_MNG_CREATE 9 +#define TDH_VP_CREATE 10 +#define TDH_MNG_RD 11 +#define TDH_MEM_PAGE_DEMOTE 15 +#define TDH_MR_EXTEND 16 +#define TDH_MR_FINALIZE 17 +#define TDH_VP_FLUSH 18 +#define TDH_MNG_VPFLUSHDONE 19 +#define TDH_MNG_KEY_FREEID 20 +#define TDH_MNG_INIT 21 +#define TDH_VP_INIT 22 +#define TDH_MEM_PAGE_PROMOTE 23 +#define TDH_MEM_SEPT_RD 25 +#define TDH_VP_RD 26 +#define TDH_MNG_KEY_RECLAIMID 27 +#define TDH_PHYMEM_PAGE_RECLAIM 28 +#define TDH_MEM_PAGE_REMOVE 29 +#define TDH_MEM_SEPT_REMOVE 30 +#define TDH_MEM_TRACK 38 +#define TDH_MEM_RANGE_UNBLOCK 39 +#define TDH_PHYMEM_CACHE_WB 40 +#define TDH_PHYMEM_PAGE_WBINVD 41 +#define TDH_VP_WR 43 +#define TDH_SYS_LP_SHUTDOWN 44 + +#define TDG_VP_VMCALL_GET_TD_VM_CALL_INFO 0x10000 +#define TDG_VP_VMCALL_MAP_GPA 0x10001 +#define TDG_VP_VMCALL_GET_QUOTE 0x10002 +#define TDG_VP_VMCALL_REPORT_FATAL_ERROR 0x10003 +#define TDG_VP_VMCALL_SETUP_EVENT_NOTIFY_INTERRUPT 0x10004 + +#define TD_EXIT_OTHER_SMI_IS_MSMI BIT(1) + +/* TDX control structure (TDR/TDCS/TDVPS) field access codes */ +#define TDX_NON_ARCH BIT_ULL(63) +#define TDX_CLASS_SHIFT 56 +#define TDX_FIELD_MASK GENMASK_ULL(31, 0) + +#define __BUILD_TDX_FIELD(non_arch, class, field) \ + (((non_arch) ? TDX_NON_ARCH : 0) | \ + ((u64)(class) << TDX_CLASS_SHIFT) | \ + ((u64)(field) & TDX_FIELD_MASK)) + +#define BUILD_TDX_FIELD(class, field) \ + __BUILD_TDX_FIELD(false, (class), (field)) + +#define BUILD_TDX_FIELD_NON_ARCH(class, field) \ + __BUILD_TDX_FIELD(true, (class), (field)) + + +/* Class code for TD */ +#define TD_CLASS_EXECUTION_CONTROLS 17ULL + +/* Class code for TDVPS */ +#define TDVPS_CLASS_VMCS 0ULL +#define TDVPS_CLASS_GUEST_GPR 16ULL +#define TDVPS_CLASS_OTHER_GUEST 17ULL +#define TDVPS_CLASS_MANAGEMENT 32ULL + +enum tdx_tdcs_execution_control { + TD_TDCS_EXEC_TSC_OFFSET = 10, +}; + +/* @field is any of enum tdx_tdcs_execution_control */ +#define TDCS_EXEC(field) BUILD_TDX_FIELD(TD_CLASS_EXECUTION_CONTROLS, (field)) + +/* @field is the VMCS field encoding */ +#define TDVPS_VMCS(field) BUILD_TDX_FIELD(TDVPS_CLASS_VMCS, (field)) + +enum tdx_vcpu_guest_other_state { + TD_VCPU_STATE_DETAILS_NON_ARCH = 0x100, +}; + +union tdx_vcpu_state_details { + struct { + u64 vmxip : 1; + u64 reserved : 63; + }; + u64 full; +}; + +/* @field is any of enum tdx_guest_other_state */ +#define TDVPS_STATE(field) BUILD_TDX_FIELD(TDVPS_CLASS_OTHER_GUEST, (field)) +#define TDVPS_STATE_NON_ARCH(field) BUILD_TDX_FIELD_NON_ARCH(TDVPS_CLASS_OTHER_GUEST, (field)) + +/* Management class fields */ +enum tdx_vcpu_guest_management { + TD_VCPU_PEND_NMI = 11, +}; + +/* @field is any of enum tdx_vcpu_guest_management */ +#define TDVPS_MANAGEMENT(field) BUILD_TDX_FIELD(TDVPS_CLASS_MANAGEMENT, (field)) + +#define TDX_EXTENDMR_CHUNKSIZE 256 + +struct tdx_cpuid_value { + u32 eax; + u32 ebx; + u32 ecx; + u32 edx; +} __packed; + +#define TDX_TD_ATTRIBUTE_DEBUG BIT_ULL(0) +#define TDX_TD_ATTRIBUTE_PKS BIT_ULL(30) +#define TDX_TD_ATTRIBUTE_KL BIT_ULL(31) +#define TDX_TD_ATTRIBUTE_PERFMON BIT_ULL(63) + +/* + * TODO: Once XFEATURE_CET_{U, S} in arch/x86/include/asm/fpu/types.h is + * defined, Replace these with define ones. + */ +#define TDX_TD_XFAM_CET (BIT(11) | BIT(12)) + +/* + * TD_PARAMS is provided as an input to TDH_MNG_INIT, the size of which is 1024B. + */ +#define TDX_MAX_VCPUS (~(u16)0) + +struct td_params { + u64 attributes; + u64 xfam; + u16 max_vcpus; + u8 reserved0[6]; + + u64 eptp_controls; + u64 exec_controls; + u16 tsc_frequency; + u8 reserved1[38]; + + u64 mrconfigid[6]; + u64 mrowner[6]; + u64 mrownerconfig[6]; + u64 reserved2[4]; + + union { + DECLARE_FLEX_ARRAY(struct tdx_cpuid_value, cpuid_values); + u8 reserved3[768]; + }; +} __packed __aligned(1024); + +/* + * Guest uses MAX_PA for GPAW when set. + * 0: GPA.SHARED bit is GPA[47] + * 1: GPA.SHARED bit is GPA[51] + */ +#define TDX_EXEC_CONTROL_MAX_GPAW BIT_ULL(0) + +/* + * TDX requires the frequency to be defined in units of 25MHz, which is the + * frequency of the core crystal clock on TDX-capable platforms, i.e. the TDX + * module can only program frequencies that are multiples of 25MHz. The + * frequency must be between 100mhz and 10ghz (inclusive). + */ +#define TDX_TSC_KHZ_TO_25MHZ(tsc_in_khz) ((tsc_in_khz) / (25 * 1000)) +#define TDX_TSC_25MHZ_TO_KHZ(tsc_in_25mhz) ((tsc_in_25mhz) * (25 * 1000)) +#define TDX_MIN_TSC_FREQUENCY_KHZ (100 * 1000) +#define TDX_MAX_TSC_FREQUENCY_KHZ (10 * 1000 * 1000) + +union tdx_ext_exit_qualification { + struct { + u64 type : 4; + u64 reserved0 : 28; + u64 req_sept_level : 3; + u64 err_sept_level : 3; + u64 err_sept_state : 8; + u64 err_sept_is_leaf : 1; + u64 reserved1 : 17; + }; + u64 full; +}; + +enum tdx_ext_exit_qualification_type { + EXT_EXIT_QUAL_NONE = 0, + EXT_EXIT_QUAL_ACCEPT, + NUM_EXT_EXIT_QUAL, +}; + +union tdx_sept_entry { + struct { + u64 r : 1; + u64 w : 1; + u64 x : 1; + u64 mt : 3; + u64 ipat : 1; + u64 leaf : 1; + u64 reserved0 : 3; + u64 ignored0 : 1; + u64 hpa : 40; + u64 reserved1 : 2; + u64 ignored1 : 1; + u64 reserved2 : 2; + u64 ignored2 : 1; + u64 sve : 1; + }; + u64 raw; +}; + +enum tdx_sept_entry_state { + TDX_SEPT_FREE = 0, + TDX_SEPT_BLOCKED = 1, + TDX_SEPT_PENDING = 2, + TDX_SEPT_PENDING_BLOCKED = 2, + TDX_SEPT_PRESENT = 3, +}; + +union tdx_sept_level_state { + struct { + u64 level : 3; + u64 reserved0 : 5; + u64 state : 8; + u64 reserved1 : 48; + }; + u64 raw; +}; + +#endif /* __KVM_X86_TDX_ARCH_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx_errno.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx_errno.h @@ -0,0 +1,122 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* architectural status code for SEAMCALL */ + +#ifndef __KVM_X86_TDX_ERRNO_H +#define __KVM_X86_TDX_ERRNO_H + +#define TDX_SEAMCALL_STATUS_MASK 0xFFFFFFFF00000000ULL + +/* + * TDX SEAMCALL Status Codes (returned in RAX) + */ +#define TDX_SUCCESS 0x0000000000000000ULL +#define TDX_NON_RECOVERABLE_VCPU 0x4000000100000000ULL +#define TDX_NON_RECOVERABLE_TD 0x4000000200000000ULL +#define TDX_INTERRUPTED_RESUMABLE 0x8000000300000000ULL +#define TDX_INTERRUPTED_RESTARTABLE 0x8000000400000000ULL +#define TDX_NON_RECOVERABLE_FATAL 0x4000000500000000ULL +#define TDX_INVALID_RESUMPTION 0xC000000600000000ULL +#define TDX_NON_RECOVERABLE_TD_NO_APIC 0xC000000700000000ULL +#define TDX_OPERAND_INVALID 0xC000010000000000ULL +#define TDX_OPERAND_ADDR_RANGE_ERROR 0xC000010100000000ULL +#define TDX_OPERAND_BUSY 0x8000020000000000ULL +#define TDX_PREVIOUS_TLB_EPOCH_BUSY 0x8000020100000000ULL +#define TDX_SYS_BUSY 0x8000020200000000ULL +#define TDX_RND_NO_ENTROPY 0x8000020300000000ULL +#define TDX_PAGE_METADATA_INCORRECT 0xC000030000000000ULL +#define TDX_PAGE_ALREADY_FREE 0x0000030100000000ULL +#define TDX_PAGE_NOT_OWNED_BY_TD 0xC000030200000000ULL +#define TDX_PAGE_NOT_FREE 0xC000030300000000ULL +#define TDX_TD_ASSOCIATED_PAGES_EXIST 0xC000040000000000ULL +#define TDX_SYSINIT_NOT_PENDING 0xC000050000000000ULL +#define TDX_SYSINIT_NOT_DONE 0xC000050100000000ULL +#define TDX_SYSINITLP_NOT_DONE 0xC000050200000000ULL +#define TDX_SYSINITLP_DONE 0xC000050300000000ULL +#define TDX_SYS_NOT_READY 0xC000050500000000ULL +#define TDX_SYS_SHUTDOWN 0xC000050600000000ULL +#define TDX_SYSCONFIG_NOT_DONE 0xC000050700000000ULL +#define TDX_TD_NOT_INITIALIZED 0xC000060000000000ULL +#define TDX_TD_INITIALIZED 0xC000060100000000ULL +#define TDX_TD_NOT_FINALIZED 0xC000060200000000ULL +#define TDX_TD_FINALIZED 0xC000060300000000ULL +#define TDX_TD_FATAL 0xC000060400000000ULL +#define TDX_TD_NON_DEBUG 0xC000060500000000ULL +#define TDX_LIFECYCLE_STATE_INCORRECT 0xC000060700000000ULL +#define TDX_TDCX_NUM_INCORRECT 0xC000061000000000ULL +#define TDX_VCPU_STATE_INCORRECT 0xC000070000000000ULL +#define TDX_VCPU_ASSOCIATED 0x8000070100000000ULL +#define TDX_VCPU_NOT_ASSOCIATED 0x8000070200000000ULL +#define TDX_TDVPX_NUM_INCORRECT 0xC000070300000000ULL +#define TDX_NO_VALID_VE_INFO 0xC000070400000000ULL +#define TDX_MAX_VCPUS_EXCEEDED 0xC000070500000000ULL +#define TDX_TSC_ROLLBACK 0xC000070600000000ULL +#define TDX_FIELD_NOT_WRITABLE 0xC000072000000000ULL +#define TDX_FIELD_NOT_READABLE 0xC000072100000000ULL +#define TDX_TD_VMCS_FIELD_NOT_INITIALIZED 0xC000073000000000ULL +#define TDX_KEY_GENERATION_FAILED 0x8000080000000000ULL +#define TDX_TD_KEYS_NOT_CONFIGURED 0x8000081000000000ULL +#define TDX_KEY_STATE_INCORRECT 0xC000081100000000ULL +#define TDX_KEY_CONFIGURED 0x0000081500000000ULL +#define TDX_WBCACHE_NOT_COMPLETE 0x8000081700000000ULL +#define TDX_HKID_NOT_FREE 0xC000082000000000ULL +#define TDX_NO_HKID_READY_TO_WBCACHE 0x0000082100000000ULL +#define TDX_WBCACHE_RESUME_ERROR 0xC000082300000000ULL +#define TDX_FLUSHVP_NOT_DONE 0x8000082400000000ULL +#define TDX_NUM_ACTIVATED_HKIDS_NOT_SUPPORRTED 0xC000082500000000ULL +#define TDX_INCORRECT_CPUID_VALUE 0xC000090000000000ULL +#define TDX_BOOT_NT4_SET 0xC000090100000000ULL +#define TDX_INCONSISTENT_CPUID_FIELD 0xC000090200000000ULL +#define TDX_CPUID_LEAF_1F_FORMAT_UNRECOGNIZED 0xC000090400000000ULL +#define TDX_INVALID_WBINVD_SCOPE 0xC000090500000000ULL +#define TDX_INVALID_PKG_ID 0xC000090600000000ULL +#define TDX_CPUID_LEAF_NOT_SUPPORTED 0xC000090800000000ULL +#define TDX_SMRR_NOT_LOCKED 0xC000091000000000ULL +#define TDX_INVALID_SMRR_CONFIGURATION 0xC000091100000000ULL +#define TDX_SMRR_OVERLAPS_CMR 0xC000091200000000ULL +#define TDX_SMRR_LOCK_NOT_SUPPORTED 0xC000091300000000ULL +#define TDX_SMRR_NOT_SUPPORTED 0xC000091400000000ULL +#define TDX_INCONSISTENT_MSR 0xC000092000000000ULL +#define TDX_INCORRECT_MSR_VALUE 0xC000092100000000ULL +#define TDX_SEAMREPORT_NOT_AVAILABLE 0xC000093000000000ULL +#define TDX_PERF_COUNTERS_ARE_PEBS_ENABLED 0xC000094000000000ULL +#define TDX_INVALID_TDMR 0xC0000A0000000000ULL +#define TDX_NON_ORDERED_TDMR 0xC0000A0100000000ULL +#define TDX_TDMR_OUTSIDE_CMRS 0xC0000A0200000000ULL +#define TDX_TDMR_ALREADY_INITIALIZED 0x00000A0300000000ULL +#define TDX_INVALID_PAMT 0xC0000A1000000000ULL +#define TDX_PAMT_OUTSIDE_CMRS 0xC0000A1100000000ULL +#define TDX_PAMT_OVERLAP 0xC0000A1200000000ULL +#define TDX_INVALID_RESERVED_IN_TDMR 0xC0000A2000000000ULL +#define TDX_NON_ORDERED_RESERVED_IN_TDMR 0xC0000A2100000000ULL +#define TDX_CMR_LIST_INVALID 0xC0000A2200000000ULL +#define TDX_EPT_WALK_FAILED 0xC0000B0000000000ULL +#define TDX_EPT_ENTRY_FREE 0xC0000B0100000000ULL +#define TDX_EPT_ENTRY_NOT_FREE 0xC0000B0200000000ULL +#define TDX_EPT_ENTRY_NOT_PRESENT 0xC0000B0300000000ULL +#define TDX_EPT_ENTRY_NOT_LEAF 0xC0000B0400000000ULL +#define TDX_EPT_ENTRY_LEAF 0xC0000B0500000000ULL +#define TDX_GPA_RANGE_NOT_BLOCKED 0xC0000B0600000000ULL +#define TDX_GPA_RANGE_ALREADY_BLOCKED 0x00000B0700000000ULL +#define TDX_TLB_TRACKING_NOT_DONE 0xC0000B0800000000ULL +#define TDX_EPT_INVALID_PROMOTE_CONDITIONS 0xC0000B0900000000ULL +#define TDX_PAGE_ALREADY_ACCEPTED 0x00000B0A00000000ULL +#define TDX_PAGE_SIZE_MISMATCH 0x00000B0B00000000ULL +#define TDX_EPT_ENTRY_STATE_INCORRECT 0xC0000B0D00000000ULL + +/* + * TDG.VP.VMCALL Status Codes (returned in R10) + */ +#define TDG_VP_VMCALL_SUCCESS 0x0000000000000000ULL +#define TDG_VP_VMCALL_RETRY 0x0000000000000001ULL +#define TDG_VP_VMCALL_INVALID_OPERAND 0x8000000000000000ULL +#define TDG_VP_VMCALL_TDREPORT_FAILED 0x8000000000000001ULL + +/* + * TDX module operand ID, appears in 31:0 part of error code as + * detail information + */ +#define TDX_OPERAND_ID_RCX 0x01 +#define TDX_OPERAND_ID_SEPT 0x92 +#define TDX_OPERAND_ID_TD_EPOCH 0xa9 + +#endif /* __KVM_X86_TDX_ERRNO_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx_error.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx_error.c @@ -0,0 +1,311 @@ +// SPDX-License-Identifier: GPL-2.0 +/* functions to record TDX SEAMCALL error */ + +#include +#include + +#include "tdx_ops.h" + +struct tdx_name { + u64 value; + const char *name; +}; + +static const char *tdx_find_name(u64 value, const struct tdx_name *names, + int size, const char *not_found) +{ + int i; + + for (i = 0; i < size; i++) { + if (value == names[i].value) + return names[i].name; + } + return not_found; +} + +#define BUILD_NAME(name) { name, #name } + +static const char *tdx_seamcall_name(u64 op) +{ + static const struct tdx_name names[] = { + BUILD_NAME(TDH_VP_ENTER), + BUILD_NAME(TDH_MNG_ADDCX), + BUILD_NAME(TDH_MEM_PAGE_ADD), + BUILD_NAME(TDH_MEM_SEPT_ADD), + BUILD_NAME(TDH_VP_ADDCX), + BUILD_NAME(TDH_MEM_PAGE_RELOCATE), + BUILD_NAME(TDH_MEM_PAGE_AUG), + BUILD_NAME(TDH_MEM_RANGE_BLOCK), + BUILD_NAME(TDH_MNG_KEY_CONFIG), + BUILD_NAME(TDH_MNG_CREATE), + BUILD_NAME(TDH_VP_CREATE), + BUILD_NAME(TDH_MNG_RD), + BUILD_NAME(TDH_MEM_PAGE_DEMOTE), + BUILD_NAME(TDH_MR_EXTEND), + BUILD_NAME(TDH_MR_FINALIZE), + BUILD_NAME(TDH_VP_FLUSH), + BUILD_NAME(TDH_MNG_VPFLUSHDONE), + BUILD_NAME(TDH_MNG_KEY_FREEID), + BUILD_NAME(TDH_MNG_INIT), + BUILD_NAME(TDH_VP_INIT), + BUILD_NAME(TDH_MEM_PAGE_PROMOTE), + BUILD_NAME(TDH_VP_RD), + BUILD_NAME(TDH_MNG_KEY_RECLAIMID), + BUILD_NAME(TDH_PHYMEM_PAGE_RECLAIM), + BUILD_NAME(TDH_MEM_PAGE_REMOVE), + BUILD_NAME(TDH_MEM_SEPT_REMOVE), + BUILD_NAME(TDH_MEM_TRACK), + BUILD_NAME(TDH_MEM_RANGE_UNBLOCK), + BUILD_NAME(TDH_PHYMEM_CACHE_WB), + BUILD_NAME(TDH_PHYMEM_PAGE_WBINVD), + BUILD_NAME(TDH_VP_WR), + BUILD_NAME(TDH_SYS_LP_SHUTDOWN), + }; + + return tdx_find_name(op, names, ARRAY_SIZE(names), + "Unknown TDX SEAMCALL op"); +} + +static const char *tdx_error_name(u64 error_code) +{ + static const struct tdx_name names[] = { + BUILD_NAME(TDX_SEAMCALL_VMFAILINVALID), + BUILD_NAME(TDX_SEAMCALL_STATUS_MASK), + BUILD_NAME(TDX_SUCCESS), + BUILD_NAME(TDX_NON_RECOVERABLE_VCPU), + BUILD_NAME(TDX_NON_RECOVERABLE_TD), + BUILD_NAME(TDX_INTERRUPTED_RESUMABLE), + BUILD_NAME(TDX_INTERRUPTED_RESTARTABLE), + BUILD_NAME(TDX_NON_RECOVERABLE_FATAL), + BUILD_NAME(TDX_INVALID_RESUMPTION), + BUILD_NAME(TDX_NON_RECOVERABLE_TD_NO_APIC), + BUILD_NAME(TDX_OPERAND_INVALID), + BUILD_NAME(TDX_OPERAND_ADDR_RANGE_ERROR), + BUILD_NAME(TDX_OPERAND_BUSY), + BUILD_NAME(TDX_PREVIOUS_TLB_EPOCH_BUSY), + BUILD_NAME(TDX_SYS_BUSY), + BUILD_NAME(TDX_PAGE_METADATA_INCORRECT), + BUILD_NAME(TDX_PAGE_ALREADY_FREE), + BUILD_NAME(TDX_PAGE_NOT_OWNED_BY_TD), + BUILD_NAME(TDX_PAGE_NOT_FREE), + BUILD_NAME(TDX_TD_ASSOCIATED_PAGES_EXIST), + BUILD_NAME(TDX_SYSINIT_NOT_PENDING), + BUILD_NAME(TDX_SYSINIT_NOT_DONE), + BUILD_NAME(TDX_SYSINITLP_NOT_DONE), + BUILD_NAME(TDX_SYSINITLP_DONE), + BUILD_NAME(TDX_SYS_NOT_READY), + BUILD_NAME(TDX_SYS_SHUTDOWN), + BUILD_NAME(TDX_SYSCONFIG_NOT_DONE), + BUILD_NAME(TDX_TD_NOT_INITIALIZED), + BUILD_NAME(TDX_TD_INITIALIZED), + BUILD_NAME(TDX_TD_NOT_FINALIZED), + BUILD_NAME(TDX_TD_FINALIZED), + BUILD_NAME(TDX_TD_FATAL), + BUILD_NAME(TDX_TD_NON_DEBUG), + BUILD_NAME(TDX_LIFECYCLE_STATE_INCORRECT), + BUILD_NAME(TDX_TDCX_NUM_INCORRECT), + BUILD_NAME(TDX_VCPU_STATE_INCORRECT), + BUILD_NAME(TDX_VCPU_ASSOCIATED), + BUILD_NAME(TDX_VCPU_NOT_ASSOCIATED), + BUILD_NAME(TDX_TDVPX_NUM_INCORRECT), + BUILD_NAME(TDX_NO_VALID_VE_INFO), + BUILD_NAME(TDX_MAX_VCPUS_EXCEEDED), + BUILD_NAME(TDX_TSC_ROLLBACK), + BUILD_NAME(TDX_FIELD_NOT_WRITABLE), + BUILD_NAME(TDX_FIELD_NOT_READABLE), + BUILD_NAME(TDX_TD_VMCS_FIELD_NOT_INITIALIZED), + BUILD_NAME(TDX_KEY_GENERATION_FAILED), + BUILD_NAME(TDX_TD_KEYS_NOT_CONFIGURED), + BUILD_NAME(TDX_KEY_STATE_INCORRECT), + BUILD_NAME(TDX_KEY_CONFIGURED), + BUILD_NAME(TDX_WBCACHE_NOT_COMPLETE), + BUILD_NAME(TDX_HKID_NOT_FREE), + BUILD_NAME(TDX_NO_HKID_READY_TO_WBCACHE), + BUILD_NAME(TDX_WBCACHE_RESUME_ERROR), + BUILD_NAME(TDX_FLUSHVP_NOT_DONE), + BUILD_NAME(TDX_NUM_ACTIVATED_HKIDS_NOT_SUPPORRTED), + BUILD_NAME(TDX_INCORRECT_CPUID_VALUE), + BUILD_NAME(TDX_BOOT_NT4_SET), + BUILD_NAME(TDX_INCONSISTENT_CPUID_FIELD), + BUILD_NAME(TDX_CPUID_LEAF_1F_FORMAT_UNRECOGNIZED), + BUILD_NAME(TDX_INVALID_WBINVD_SCOPE), + BUILD_NAME(TDX_INVALID_PKG_ID), + BUILD_NAME(TDX_CPUID_LEAF_NOT_SUPPORTED), + BUILD_NAME(TDX_SMRR_NOT_LOCKED), + BUILD_NAME(TDX_INVALID_SMRR_CONFIGURATION), + BUILD_NAME(TDX_SMRR_OVERLAPS_CMR), + BUILD_NAME(TDX_SMRR_LOCK_NOT_SUPPORTED), + BUILD_NAME(TDX_SMRR_NOT_SUPPORTED), + BUILD_NAME(TDX_INCONSISTENT_MSR), + BUILD_NAME(TDX_INCORRECT_MSR_VALUE), + BUILD_NAME(TDX_SEAMREPORT_NOT_AVAILABLE), + BUILD_NAME(TDX_PERF_COUNTERS_ARE_PEBS_ENABLED), + BUILD_NAME(TDX_INVALID_TDMR), + BUILD_NAME(TDX_NON_ORDERED_TDMR), + BUILD_NAME(TDX_TDMR_OUTSIDE_CMRS), + BUILD_NAME(TDX_TDMR_ALREADY_INITIALIZED), + BUILD_NAME(TDX_INVALID_PAMT), + BUILD_NAME(TDX_PAMT_OUTSIDE_CMRS), + BUILD_NAME(TDX_PAMT_OVERLAP), + BUILD_NAME(TDX_INVALID_RESERVED_IN_TDMR), + BUILD_NAME(TDX_NON_ORDERED_RESERVED_IN_TDMR), + BUILD_NAME(TDX_CMR_LIST_INVALID), + BUILD_NAME(TDX_EPT_WALK_FAILED), + BUILD_NAME(TDX_EPT_ENTRY_FREE), + BUILD_NAME(TDX_EPT_ENTRY_NOT_FREE), + BUILD_NAME(TDX_EPT_ENTRY_NOT_PRESENT), + BUILD_NAME(TDX_EPT_ENTRY_NOT_LEAF), + BUILD_NAME(TDX_EPT_ENTRY_LEAF), + BUILD_NAME(TDX_GPA_RANGE_NOT_BLOCKED), + BUILD_NAME(TDX_GPA_RANGE_ALREADY_BLOCKED), + BUILD_NAME(TDX_TLB_TRACKING_NOT_DONE), + BUILD_NAME(TDX_EPT_INVALID_PROMOTE_CONDITIONS), + BUILD_NAME(TDX_PAGE_ALREADY_ACCEPTED), + BUILD_NAME(TDX_PAGE_SIZE_MISMATCH), + }; + + return tdx_find_name(error_code & TDX_SEAMCALL_STATUS_MASK, + names, ARRAY_SIZE(names), + "Unknown SEAMCALL status code"); +} + +static bool tdx_has_operand_id(u64 error_code) +{ + switch (error_code & TDX_SEAMCALL_STATUS_MASK) { + case TDX_OPERAND_INVALID: + case TDX_OPERAND_ADDR_RANGE_ERROR: + case TDX_OPERAND_BUSY: + case TDX_PAGE_METADATA_INCORRECT: + case TDX_PAGE_ALREADY_FREE: + case TDX_PAGE_NOT_OWNED_BY_TD: + case TDX_PAGE_NOT_FREE: + case TDX_EPT_WALK_FAILED: + case TDX_EPT_ENTRY_FREE: + case TDX_EPT_ENTRY_NOT_FREE: + case TDX_EPT_ENTRY_NOT_PRESENT: + case TDX_EPT_ENTRY_NOT_LEAF: + case TDX_EPT_ENTRY_LEAF: + case TDX_GPA_RANGE_NOT_BLOCKED: + case TDX_GPA_RANGE_ALREADY_BLOCKED: + case TDX_TLB_TRACKING_NOT_DONE: + case TDX_EPT_INVALID_PROMOTE_CONDITIONS: + return true; + default: + return false; + } +} + +#define TDX_STATUS_CODE_OPERAND_ID_MASK 0xffffffffULL + +static const char *tdx_operand_id(u64 error_code) +{ + static const struct tdx_name names[] = { + { 0, "RAX" }, + { 1, "RCX" }, + { 2, "RDX" }, + { 3, "RBX" }, + { 4, "Reserved_RSP" }, + { 5, "RBP" }, + { 6, "RSI" }, + { 7, "RDI" }, + { 8, "R8" }, + { 9, "R9" }, + { 10, "R10" }, + { 11, "R11" }, + { 12, "R12" }, + { 13, "R13" }, + { 14, "R14" }, + { 15, "R15" }, + { 64, "ATTRIBUTES" }, + { 65, "XFAM" }, + { 66, "EXEC_CONTROLS" }, + { 67, "EPTP_CONTROLS" }, + { 68, "MAX_VCPUS" }, + { 69, "CPUID_CONFIG" }, + { 70, "TSC_FREQUENCY" }, + { 96, "TDMR_INFO_PA" }, + { 128, "TDR" }, + { 129, "TDCX" }, + { 130, "TDVPR" }, + { 131, "TDVPX" }, + { 144, "TDCS" }, + { 145, "TDVPS" }, + { 146, "SEPT" }, + { 168, "RTMR" }, + { 169, "TD_EPOCH" }, + { 184, "SYS" }, + { 185, "TDMR" }, + { 186, "KOT" }, + { 187, "KET" }, + { 188, "WBCACHE" }, + }; + u64 operand_id = error_code & TDX_STATUS_CODE_OPERAND_ID_MASK; + + return tdx_find_name(operand_id, names, ARRAY_SIZE(names), + "Unknown operand id"); +} + +static const char *tdx_spte_entry_state(u64 state) +{ + static const struct tdx_name names[] = { + {0, "SEPT_FREE"}, + {1, "SEPT_BLOCKED"}, + {2, "SEPT_PENDING"}, + {3, "SEPT_PENDING_BLOCKED"}, + {4, "SEPT_PRESENT"}, + }; + + return tdx_find_name(state, names, ARRAY_SIZE(names), "Invalid"); +} + +union tdx_ex_ret { + struct tdx_module_args regs; + /* Functions that walk SEPT */ + struct { + u64 septe; + struct { + u64 level :3; + u64 sept_reserved_0 :5; + u64 state :8; + u64 sept_reserved_1 :48; + }; + } sept_walk; +}; + +void pr_tdx_error(u64 op, u64 error_code, const struct tdx_module_args *out) +{ + union tdx_ex_ret ex; + bool has_operand_id = tdx_has_operand_id(error_code); + u64 operand_id = error_code & TDX_STATUS_CODE_OPERAND_ID_MASK; + + if (!out) { + pr_err_ratelimited("SEAMCALL[%s(%lld)] failed: %s(0x%llx)\n", + tdx_seamcall_name(op), op, + tdx_error_name(error_code), error_code); + return; + } + + ex.regs = *out; + switch (error_code & TDX_SEAMCALL_STATUS_MASK) { + case TDX_EPT_WALK_FAILED: { +#define MSG_EPT_WALK_FAILED \ + "SEAMCALL[%s(%lld)] %s(0x%llx) Secure EPT walk error: SEPTE 0x%llx level %d %s\n" + pr_err(MSG_EPT_WALK_FAILED, + tdx_seamcall_name(op), op, tdx_error_name(error_code), error_code, + ex.sept_walk.septe, ex.sept_walk.level, + tdx_spte_entry_state(ex.sept_walk.state)); + break; + } + default: +#define MSG_FAILED \ + "SEAMCALL[%s(%lld)] failed: %s(0x%llx) operand %s(0x%llx) RCX 0x%llx RDX 0x%llx R8 0x%llx R9 0x%llx R10 0x%llx R11 0x%llx\n" + pr_err_ratelimited(MSG_FAILED, + tdx_seamcall_name(op), op, + tdx_error_name(error_code), error_code, + has_operand_id ? tdx_operand_id(operand_id) : "-", + has_operand_id ? operand_id : 0, + ex.regs.rcx, ex.regs.rdx, ex.regs.r8, + ex.regs.r9, ex.regs.r10, ex.regs.r11); + break; + } +} --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/tdx_ops.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/tdx_ops.h @@ -0,0 +1,407 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +/* constants/data definitions for TDX SEAMCALLs */ + +#ifndef __KVM_X86_TDX_OPS_H +#define __KVM_X86_TDX_OPS_H + +#include + +#include +#include +#include +#include +#include +#include +#include +#include + +#include "tdx_errno.h" +#include "tdx_arch.h" +#include "x86.h" + +static inline u64 tdx_seamcall(u64 op, u64 rcx, u64 rdx, u64 r8, u64 r9, + struct tdx_module_args *out) +{ + int retry; + u64 ret; + + /* Mimic the existing rdrand_long() to retry RDRAND_RETRY_LOOPS times. */ + retry = RDRAND_RETRY_LOOPS; + do { + if (out) { + *out = (struct tdx_module_args) { + .rcx = rcx, + .rdx = rdx, + .r8 = r8, + .r9 = r9, + }; + ret = __seamcall_ret(op, out); + } else { + struct tdx_module_args args = { + .rcx = rcx, + .rdx = rdx, + .r8 = r8, + .r9 = r9, + }; + ret = __seamcall(op, &args); + } + } while (unlikely(ret == TDX_RND_NO_ENTROPY) && --retry); + if (unlikely(ret == TDX_SEAMCALL_UD)) { + /* + * SEAMCALLs fail with TDX_SEAMCALL_UD returned when VMX is off. + * This can happen when the host gets rebooted or live + * updated. In this case, the instruction execution is ignored + * as KVM is shut down, so the error code is suppressed. Other + * than this, the error is unexpected and the execution can't + * continue as the TDX features reply on VMX to be on. + */ + kvm_spurious_fault(); + return 0; + } + return ret; +} + +#ifdef CONFIG_INTEL_TDX_HOST +void pr_tdx_error(u64 op, u64 error_code, const struct tdx_module_args *out); +#endif + +static inline enum pg_level tdx_sept_level_to_pg_level(int tdx_level) +{ + return tdx_level + 1; +} + +static inline void tdx_clflush_page(hpa_t addr, enum pg_level level) +{ + clflush_cache_range(__va(addr), KVM_HPAGE_SIZE(level)); +} + +static inline void tdx_set_page_np(hpa_t addr) +{ + if (!IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + return; + + /* set_page_np() doesn't work due to non-preemptive context. */ + set_direct_map_invalid_noflush(pfn_to_page(addr >> PAGE_SHIFT)); + preempt_disable(); + __flush_tlb_all(); + preempt_enable(); + arch_flush_lazy_mmu_mode(); +} + +static inline void tdx_set_page_np_level(hpa_t addr, int tdx_level) +{ + enum pg_level pg_level = tdx_sept_level_to_pg_level(tdx_level); + int i; + + if (!IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + return; + + for (i = 0; i < KVM_PAGES_PER_HPAGE(pg_level); i++) + set_direct_map_invalid_noflush(pfn_to_page((addr >> PAGE_SHIFT) + i)); + preempt_disable(); + __flush_tlb_all(); + preempt_enable(); + arch_flush_lazy_mmu_mode(); +} + +static inline void tdx_set_page_present(hpa_t addr) +{ + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + set_direct_map_default_noflush(pfn_to_page(addr >> PAGE_SHIFT)); +} + +static inline void tdx_set_page_present_level(hpa_t addr, enum pg_level pg_level) +{ + int i; + + if (!IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + return; + + for (i = 0; i < KVM_PAGES_PER_HPAGE(pg_level); i++) + set_direct_map_default_noflush(pfn_to_page((addr >> PAGE_SHIFT) + i)); +} + +static inline bool tdx_op_is_busy(void) +{ + static atomic_t count; + + if (!IS_ENABLED(CONFIG_KVM_TDX_OPERAND_BUSY_INJECTION)) + return false; +#define KVM_TDX_BUSY_COUNT (47) /* random prime number */ + return !(atomic_inc_return(&count) % KVM_TDX_BUSY_COUNT); +} + +/* + * TDX module acquires its internal lock for resources. It doesn't spin to get + * locks because of its restrictions of allowed execution time. Instead, it + * returns TDX_OPERAND_BUSY with an operand id. + * + * Multiple VCPUs can operate on SEPT. Also with zero-step attack mitigation, + * TDH.VP.ENTER may rarely acquire SEPT lock and release it when zero-step + * attack is suspected. It results in TDX_OPERAND_BUSY | TDX_OPERAND_ID_SEPT + * with TDH.MEM.* operation. Note: TDH.MEM.TRACK is an exception. + * + * Because TDP MMU uses read lock for scalability, spin lock around SEAMCALL + * spoils TDP MMU effort. Retry several times with the assumption that SEPT + * lock contention is rare. But don't loop forever to avoid lockup. Let TDP + * MMU retry. + */ +#define TDX_ERROR_SEPT_BUSY (TDX_OPERAND_BUSY | TDX_OPERAND_ID_SEPT) + +static inline u64 __tdx_seamcall_sept(u64 op, u64 rcx, u64 rdx, u64 r8, u64 r9, + struct tdx_module_args *out) +{ +#define SEAMCALL_RETRY_MAX 16 + int retry = SEAMCALL_RETRY_MAX; + u64 ret; + + do { + ret = tdx_seamcall(op, rcx, rdx, r8, r9, out); + } while (ret == TDX_ERROR_SEPT_BUSY && retry-- > 0); + return ret; +} + +static inline u64 tdx_seamcall_sept(u64 op, u64 rcx, u64 rdx, u64 r8, u64 r9, + struct tdx_module_args *out) +{ + if (tdx_op_is_busy()) + return TDX_ERROR_SEPT_BUSY; + return __tdx_seamcall_sept(op, rcx, rdx, r8, r9, out); +} + +static inline u64 tdh_mng_addcx(hpa_t tdr, hpa_t addr) +{ + u64 r; + + tdx_clflush_page(addr, PG_LEVEL_4K); + r = tdx_seamcall(TDH_MNG_ADDCX, addr, tdr, 0, 0, NULL); + if (!r) + tdx_set_page_np(addr); + return r; +} + +static inline u64 tdh_mem_page_add(hpa_t tdr, gpa_t gpa, int level, hpa_t hpa, + hpa_t source, struct tdx_module_args *out) +{ + u64 r; + + tdx_clflush_page(hpa, tdx_sept_level_to_pg_level(level)); + r = tdx_seamcall_sept(TDH_MEM_PAGE_ADD, gpa | level, tdr, hpa, source, out); + if (!r) + tdx_set_page_np_level(hpa, level); + return r; +} + +static inline u64 tdh_mem_sept_add(hpa_t tdr, gpa_t gpa, int level, hpa_t page, + struct tdx_module_args *out) +{ + u64 r; + + tdx_clflush_page(page, PG_LEVEL_4K); + r = tdx_seamcall_sept(TDH_MEM_SEPT_ADD, gpa | level, tdr, page, 0, out); + if (!r) + tdx_set_page_np(page); + return r; +} + +static inline u64 tdh_mem_sept_rd(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + return tdx_seamcall_sept(TDH_MEM_SEPT_RD, gpa | level, tdr, 0, 0, out); +} + + +static inline u64 tdh_mem_sept_remove(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + return tdx_seamcall_sept(TDH_MEM_SEPT_REMOVE, gpa | level, tdr, 0, 0, out); +} + +static inline u64 tdh_vp_addcx(hpa_t tdvpr, hpa_t addr) +{ + u64 r; + + tdx_clflush_page(addr, PG_LEVEL_4K); + r = tdx_seamcall(TDH_VP_ADDCX, addr, tdvpr, 0, 0, NULL); + if (!r) + tdx_set_page_np(addr); + return r; +} + +static inline u64 tdh_mem_page_relocate(hpa_t tdr, gpa_t gpa, hpa_t hpa, + struct tdx_module_args *out) +{ + tdx_clflush_page(hpa, PG_LEVEL_4K); + return tdx_seamcall_sept(TDH_MEM_PAGE_RELOCATE, gpa, tdr, hpa, 0, out); +} + +static inline u64 tdh_mem_page_aug(hpa_t tdr, gpa_t gpa, int level, hpa_t hpa, + struct tdx_module_args *out) +{ + u64 r; + + tdx_clflush_page(hpa, tdx_sept_level_to_pg_level(level)); + r = tdx_seamcall_sept(TDH_MEM_PAGE_AUG, gpa | level, tdr, hpa, 0, out); + if (!r) + tdx_set_page_np_level(hpa, level); + return r; +} + +static inline u64 tdh_mem_range_block(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + /* + * When zapping all secure-ept, kvm->mmu_lock is write locked. No race. + */ + return __tdx_seamcall_sept(TDH_MEM_RANGE_BLOCK, gpa | level, tdr, 0, 0, out); +} + +static inline u64 tdh_mng_key_config(hpa_t tdr) +{ + return tdx_seamcall(TDH_MNG_KEY_CONFIG, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_mng_create(hpa_t tdr, int hkid) +{ + u64 r; + + tdx_clflush_page(tdr, PG_LEVEL_4K); + r = tdx_seamcall(TDH_MNG_CREATE, tdr, hkid, 0, 0, NULL); + if (!r) + tdx_set_page_np(tdr); + return r; +} + +static inline u64 tdh_vp_create(hpa_t tdr, hpa_t tdvpr) +{ + u64 r; + + tdx_clflush_page(tdvpr, PG_LEVEL_4K); + r = tdx_seamcall(TDH_VP_CREATE, tdvpr, tdr, 0, 0, NULL); + if (!r) + tdx_set_page_np(tdvpr); + return r; +} + +static inline u64 tdh_mng_rd(hpa_t tdr, u64 field, struct tdx_module_args *out) +{ + return tdx_seamcall(TDH_MNG_RD, tdr, field, 0, 0, out); +} + +static inline u64 tdh_mem_page_demote(hpa_t tdr, gpa_t gpa, int level, hpa_t page, + struct tdx_module_args *out) +{ + u64 r; + + tdx_clflush_page(page, PG_LEVEL_4K); + r = tdx_seamcall_sept(TDH_MEM_PAGE_DEMOTE, gpa | level, tdr, page, 0, out); + if (!r) + tdx_set_page_np(page); + return r; +} + +static inline u64 tdh_mem_page_promote(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + return tdx_seamcall_sept(TDH_MEM_PAGE_PROMOTE, gpa | level, tdr, 0, 0, out); +} + +static inline u64 tdh_mr_extend(hpa_t tdr, gpa_t gpa, + struct tdx_module_args *out) +{ + return tdx_seamcall(TDH_MR_EXTEND, gpa, tdr, 0, 0, out); +} + +static inline u64 tdh_mr_finalize(hpa_t tdr) +{ + return tdx_seamcall(TDH_MR_FINALIZE, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_vp_flush(hpa_t tdvpr) +{ + return tdx_seamcall(TDH_VP_FLUSH, tdvpr, 0, 0, 0, NULL); +} + +static inline u64 tdh_mng_vpflushdone(hpa_t tdr) +{ + return tdx_seamcall(TDH_MNG_VPFLUSHDONE, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_mng_key_freeid(hpa_t tdr) +{ + return tdx_seamcall(TDH_MNG_KEY_FREEID, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_mng_init(hpa_t tdr, hpa_t td_params, + struct tdx_module_args *out) +{ + return tdx_seamcall(TDH_MNG_INIT, tdr, td_params, 0, 0, out); +} + +static inline u64 tdh_vp_init(hpa_t tdvpr, u64 rcx) +{ + return tdx_seamcall(TDH_VP_INIT, tdvpr, rcx, 0, 0, NULL); +} + +static inline u64 tdh_vp_rd(hpa_t tdvpr, u64 field, + struct tdx_module_args *out) +{ + return tdx_seamcall(TDH_VP_RD, tdvpr, field, 0, 0, out); +} + +static inline u64 tdh_mng_key_reclaimid(hpa_t tdr) +{ + return tdx_seamcall(TDH_MNG_KEY_RECLAIMID, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_phymem_page_reclaim(hpa_t page, + struct tdx_module_args *out) +{ + if (tdx_op_is_busy()) + return TDX_OPERAND_BUSY | TDX_OPERAND_ID_RCX; + return tdx_seamcall(TDH_PHYMEM_PAGE_RECLAIM, page, 0, 0, 0, out); +} + +static inline u64 tdh_mem_page_remove(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + return tdx_seamcall_sept(TDH_MEM_PAGE_REMOVE, gpa | level, tdr, 0, 0, out); +} + +static inline u64 tdh_sys_lp_shutdown(void) +{ + return tdx_seamcall(TDH_SYS_LP_SHUTDOWN, 0, 0, 0, 0, NULL); +} + +static inline u64 tdh_mem_track(hpa_t tdr) +{ + if (tdx_op_is_busy()) + return TDX_OPERAND_BUSY | TDX_OPERAND_ID_TD_EPOCH; + return tdx_seamcall(TDH_MEM_TRACK, tdr, 0, 0, 0, NULL); +} + +static inline u64 tdh_mem_range_unblock(hpa_t tdr, gpa_t gpa, int level, + struct tdx_module_args *out) +{ + return tdx_seamcall_sept(TDH_MEM_RANGE_UNBLOCK, gpa | level, tdr, 0, 0, out); +} + +static inline u64 tdh_phymem_cache_wb(bool resume) +{ + return tdx_seamcall(TDH_PHYMEM_CACHE_WB, resume ? 1 : 0, 0, 0, 0, NULL); +} + +static inline u64 tdh_phymem_page_wbinvd(hpa_t page) +{ + if (tdx_op_is_busy()) + return TDX_OPERAND_BUSY | TDX_OPERAND_ID_RCX; + return tdx_seamcall(TDH_PHYMEM_PAGE_WBINVD, page, 0, 0, 0, NULL); +} + +static inline u64 tdh_vp_wr(hpa_t tdvpr, u64 field, u64 val, u64 mask, + struct tdx_module_args *out) +{ + return tdx_seamcall(TDH_VP_WR, tdvpr, field, val, mask, out); +} + +#endif /* __KVM_X86_TDX_OPS_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/vmcs.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/vmcs.h @@ -140,6 +140,11 @@ return is_exception_n(intr_info, NM_VECTOR); } +static inline bool is_ve_fault(u32 intr_info) +{ + return is_exception_n(intr_info, VE_VECTOR); +} + /* Undocumented: icebp/int1 */ static inline bool is_icebp(u32 intr_info) { --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/vmx.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/vmx.c @@ -41,7 +41,7 @@ #include #include #include -#include +#include #include #include #include @@ -51,6 +51,7 @@ #include #include "capabilities.h" +#include "common.h" #include "cpuid.h" #include "hyperv.h" #include "kvm_onhyperv.h" @@ -66,6 +67,7 @@ #include "vmcs12.h" #include "vmx.h" #include "x86.h" +#include "x86_ops.h" #include "smm.h" MODULE_AUTHOR("Qumranet"); @@ -126,6 +128,9 @@ static bool __read_mostly dump_invalid_vmcs = 0; module_param(dump_invalid_vmcs, bool, 0644); +static bool __read_mostly ept_violation_ve_test; +module_param(ept_violation_ve_test, bool, 0444); + #define MSR_BITMAP_MODE_X2APIC 1 #define MSR_BITMAP_MODE_X2APIC_APICV 2 @@ -532,11 +537,9 @@ vmx->segment_cache.bitmask = 0; } -static unsigned long host_idt_base; +unsigned long vmx_host_idt_base; #if IS_ENABLED(CONFIG_HYPERV) -static struct kvm_x86_ops vmx_x86_ops __initdata; - static bool __read_mostly enlightened_vmcs = true; module_param(enlightened_vmcs, bool, 0444); @@ -565,7 +568,7 @@ return 0; } -static __init void hv_init_evmcs(void) +__init void hv_init_evmcs(void) { int cpu; @@ -594,15 +597,14 @@ } if (ms_hyperv.nested_features & HV_X64_NESTED_DIRECT_FLUSH) - vmx_x86_ops.enable_l2_tlb_flush + vt_x86_ops.enable_l2_tlb_flush = hv_enable_l2_tlb_flush; - } else { enlightened_vmcs = false; } } -static void hv_reset_evmcs(void) +void hv_reset_evmcs(void) { struct hv_vp_assist_page *vp_ap; @@ -626,10 +628,6 @@ vp_ap->current_nested_vmcs = 0; vp_ap->enlighten_vmentry = 0; } - -#else /* IS_ENABLED(CONFIG_HYPERV) */ -static void hv_init_evmcs(void) {} -static void hv_reset_evmcs(void) {} #endif /* IS_ENABLED(CONFIG_HYPERV) */ /* @@ -754,7 +752,6 @@ return ret; } -#ifdef CONFIG_KEXEC_CORE static void crash_vmclear_local_loaded_vmcss(void) { int cpu = raw_smp_processor_id(); @@ -764,7 +761,6 @@ loaded_vmcss_on_cpu_link) vmcs_clear(v->vmcs); } -#endif /* CONFIG_KEXEC_CORE */ static void __loaded_vmcs_clear(void *arg) { @@ -862,6 +858,13 @@ eb = (1u << PF_VECTOR) | (1u << UD_VECTOR) | (1u << MC_VECTOR) | (1u << DB_VECTOR) | (1u << AC_VECTOR); /* + * #VE isn't used for VMX, but for TDX. To test against unexpected + * change related to #VE for VMX, intercept unexpected #VE and warn on + * it. + */ + if (ept_violation_ve_test) + eb |= 1u << VE_VECTOR; + /* * Guest access to VMware backdoor ports could legitimately * trigger #GP because of TSS I/O permission bitmap. * We intercept those #GP and allow access to them anyway @@ -1467,7 +1470,7 @@ * Switches to specified vcpu, until a matching vcpu_put(), but assumes * vcpu mutex is already taken. */ -static void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) +void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -1478,7 +1481,7 @@ vmx->host_debugctlmsr = get_debugctlmsr(); } -static void vmx_vcpu_put(struct kvm_vcpu *vcpu) +void vmx_vcpu_put(struct kvm_vcpu *vcpu) { vmx_vcpu_pi_put(vcpu); @@ -1537,7 +1540,7 @@ vmx->emulation_required = vmx_emulation_required(vcpu); } -static bool vmx_get_if_flag(struct kvm_vcpu *vcpu) +bool vmx_get_if_flag(struct kvm_vcpu *vcpu) { return vmx_get_rflags(vcpu) & X86_EFLAGS_IF; } @@ -1643,8 +1646,8 @@ return 0; } -static bool vmx_can_emulate_instruction(struct kvm_vcpu *vcpu, int emul_type, - void *insn, int insn_len) +bool vmx_can_emulate_instruction(struct kvm_vcpu *vcpu, int emul_type, + void *insn, int insn_len) { /* * Emulation of instructions in SGX enclaves is impossible as RIP does @@ -1728,7 +1731,7 @@ * Recognizes a pending MTF VM-exit and records the nested state for later * delivery. */ -static void vmx_update_emulated_instruction(struct kvm_vcpu *vcpu) +void vmx_update_emulated_instruction(struct kvm_vcpu *vcpu) { struct vmcs12 *vmcs12 = get_vmcs12(vcpu); struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -1759,7 +1762,7 @@ } } -static int vmx_skip_emulated_instruction(struct kvm_vcpu *vcpu) +int vmx_skip_emulated_instruction(struct kvm_vcpu *vcpu) { vmx_update_emulated_instruction(vcpu); return skip_emulated_instruction(vcpu); @@ -1778,7 +1781,7 @@ vmcs_write32(GUEST_ACTIVITY_STATE, GUEST_ACTIVITY_ACTIVE); } -static void vmx_inject_exception(struct kvm_vcpu *vcpu) +void vmx_inject_exception(struct kvm_vcpu *vcpu) { struct kvm_queued_exception *ex = &vcpu->arch.exception; u32 intr_info = ex->vector | INTR_INFO_VALID_MASK; @@ -1899,12 +1902,12 @@ return kvm_caps.default_tsc_scaling_ratio; } -static void vmx_write_tsc_offset(struct kvm_vcpu *vcpu, u64 offset) +void vmx_write_tsc_offset(struct kvm_vcpu *vcpu, u64 offset) { vmcs_write64(TSC_OFFSET, offset); } -static void vmx_write_tsc_multiplier(struct kvm_vcpu *vcpu, u64 multiplier) +void vmx_write_tsc_multiplier(struct kvm_vcpu *vcpu, u64 multiplier) { vmcs_write64(TSC_MULTIPLIER, multiplier); } @@ -1958,7 +1961,7 @@ return !(msr->data & ~valid_bits); } -static int vmx_get_msr_feature(struct kvm_msr_entry *msr) +int vmx_get_msr_feature(struct kvm_msr_entry *msr) { switch (msr->index) { case KVM_FIRST_EMULATED_VMX_MSR ... KVM_LAST_EMULATED_VMX_MSR: @@ -1975,7 +1978,7 @@ * Returns 0 on success, non-0 otherwise. * Assumes vcpu_load() was already called. */ -static int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) +int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) { struct vcpu_vmx *vmx = to_vmx(vcpu); struct vmx_uret_msr *msr; @@ -2154,7 +2157,7 @@ * Returns 0 on success, non-0 otherwise. * Assumes vcpu_load() was already called. */ -static int vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) +int vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) { struct vcpu_vmx *vmx = to_vmx(vcpu); struct vmx_uret_msr *msr; @@ -2424,7 +2427,7 @@ if ((data & PMU_CAP_LBR_FMT) != (kvm_caps.supported_perf_cap & PMU_CAP_LBR_FMT)) return 1; - if (!cpuid_model_is_consistent(vcpu)) + if (!intel_pmu_lbr_is_compatible(vcpu)) return 1; } if (data & PERF_CAP_PEBS_FORMAT) { @@ -2457,7 +2460,7 @@ return ret; } -static void vmx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg) +void vmx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg) { unsigned long guest_owned_bits; @@ -2605,6 +2608,9 @@ &_cpu_based_2nd_exec_control)) return -EIO; } + if (!ept_violation_ve_test) + _cpu_based_2nd_exec_control &= ~SECONDARY_EXEC_EPT_VIOLATION_VE; + #ifndef CONFIG_X86_64 if (!(_cpu_based_2nd_exec_control & SECONDARY_EXEC_VIRTUALIZE_APIC_ACCESSES)) @@ -2629,6 +2635,7 @@ return -EIO; vmx_cap->ept = 0; + _cpu_based_2nd_exec_control &= ~SECONDARY_EXEC_EPT_VIOLATION_VE; } if (!(_cpu_based_2nd_exec_control & SECONDARY_EXEC_ENABLE_VPID) && vmx_cap->vpid) { @@ -2729,7 +2736,7 @@ return 0; } -static bool kvm_is_vmx_supported(void) +bool kvm_is_vmx_supported(void) { int cpu = raw_smp_processor_id(); @@ -2747,7 +2754,7 @@ return true; } -static int vmx_check_processor_compat(void) +int vmx_check_processor_compat(void) { int cpu = raw_smp_processor_id(); struct vmcs_config vmcs_conf; @@ -2789,7 +2796,33 @@ return -EFAULT; } -static int vmx_hardware_enable(void) +static int __vmxon_get(void) +{ + if (cr4_read_shadow() & X86_CR4_VMXE) + return -EBUSY; + return kvm_cpu_vmxon(__pa(this_cpu_read(vmxarea))); +} + +int vmxon_get(void) +{ + int r; + + preempt_disable(); + r = __vmxon_get(); + if (r) + preempt_enable(); + return r; +} +EXPORT_SYMBOL_GPL(vmxon_get); + +void vmxoff_put(void) +{ + WARN_ON_ONCE(cpu_vmxoff()); + preempt_enable(); +} +EXPORT_SYMBOL_GPL(vmxoff_put); + +int vmx_hardware_enable(void) { int cpu = raw_smp_processor_id(); u64 phys_addr = __pa(per_cpu(vmxarea, cpu)); @@ -2829,7 +2862,7 @@ __loaded_vmcs_clear(v); } -static void vmx_hardware_disable(void) +void vmx_hardware_disable(void) { vmclear_local_loaded_vmcss(); @@ -3150,7 +3183,7 @@ #endif -static void vmx_flush_tlb_all(struct kvm_vcpu *vcpu) +void vmx_flush_tlb_all(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -3180,7 +3213,7 @@ return to_vmx(vcpu)->vpid; } -static void vmx_flush_tlb_current(struct kvm_vcpu *vcpu) +void vmx_flush_tlb_current(struct kvm_vcpu *vcpu) { struct kvm_mmu *mmu = vcpu->arch.mmu; u64 root_hpa = mmu->root.hpa; @@ -3196,7 +3229,7 @@ vpid_sync_context(vmx_get_current_vpid(vcpu)); } -static void vmx_flush_tlb_gva(struct kvm_vcpu *vcpu, gva_t addr) +void vmx_flush_tlb_gva(struct kvm_vcpu *vcpu, gva_t addr) { /* * vpid_sync_vcpu_addr() is a nop if vpid==0, see the comment in @@ -3205,7 +3238,7 @@ vpid_sync_vcpu_addr(vmx_get_current_vpid(vcpu), addr); } -static void vmx_flush_tlb_guest(struct kvm_vcpu *vcpu) +void vmx_flush_tlb_guest(struct kvm_vcpu *vcpu) { /* * vpid_sync_context() is a nop if vpid==0, e.g. if enable_vpid==0 or a @@ -3250,7 +3283,7 @@ #define CR3_EXITING_BITS (CPU_BASED_CR3_LOAD_EXITING | \ CPU_BASED_CR3_STORE_EXITING) -static bool vmx_is_valid_cr0(struct kvm_vcpu *vcpu, unsigned long cr0) +bool vmx_is_valid_cr0(struct kvm_vcpu *vcpu, unsigned long cr0) { if (is_guest_mode(vcpu)) return nested_guest_cr0_valid(vcpu, cr0); @@ -3371,8 +3404,7 @@ return eptp; } -static void vmx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, - int root_level) +void vmx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, int root_level) { struct kvm *kvm = vcpu->kvm; bool update_guest_cr3 = true; @@ -3400,8 +3432,7 @@ vmcs_writel(GUEST_CR3, guest_cr3); } - -static bool vmx_is_valid_cr4(struct kvm_vcpu *vcpu, unsigned long cr4) +bool vmx_is_valid_cr4(struct kvm_vcpu *vcpu, unsigned long cr4) { /* * We operate under the default treatment of SMM, so VMX cannot be @@ -3517,7 +3548,7 @@ var->g = (ar >> 15) & 1; } -static u64 vmx_get_segment_base(struct kvm_vcpu *vcpu, int seg) +u64 vmx_get_segment_base(struct kvm_vcpu *vcpu, int seg) { struct kvm_segment s; @@ -3594,14 +3625,14 @@ vmcs_write32(sf->ar_bytes, vmx_segment_access_rights(var)); } -static void vmx_set_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg) +void vmx_set_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg) { __vmx_set_segment(vcpu, var, seg); to_vmx(vcpu)->emulation_required = vmx_emulation_required(vcpu); } -static void vmx_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l) +void vmx_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l) { u32 ar = vmx_read_guest_seg_ar(to_vmx(vcpu), VCPU_SREG_CS); @@ -3609,25 +3640,25 @@ *l = (ar >> 13) & 1; } -static void vmx_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +void vmx_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { dt->size = vmcs_read32(GUEST_IDTR_LIMIT); dt->address = vmcs_readl(GUEST_IDTR_BASE); } -static void vmx_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +void vmx_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { vmcs_write32(GUEST_IDTR_LIMIT, dt->size); vmcs_writel(GUEST_IDTR_BASE, dt->address); } -static void vmx_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +void vmx_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { dt->size = vmcs_read32(GUEST_GDTR_LIMIT); dt->address = vmcs_readl(GUEST_GDTR_BASE); } -static void vmx_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) +void vmx_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt) { vmcs_write32(GUEST_GDTR_LIMIT, dt->size); vmcs_writel(GUEST_GDTR_BASE, dt->address); @@ -4099,7 +4130,7 @@ } } -static bool vmx_guest_apic_has_interrupt(struct kvm_vcpu *vcpu) +bool vmx_guest_apic_has_interrupt(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); void *vapic_page; @@ -4119,7 +4150,7 @@ return ((rvi & 0xf0) > (vppr & 0xf0)); } -static void vmx_msr_filter_changed(struct kvm_vcpu *vcpu) +void vmx_msr_filter_changed(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); u32 i; @@ -4147,50 +4178,6 @@ pt_update_intercept_for_msr(vcpu); } -static inline void kvm_vcpu_trigger_posted_interrupt(struct kvm_vcpu *vcpu, - int pi_vec) -{ -#ifdef CONFIG_SMP - if (vcpu->mode == IN_GUEST_MODE) { - /* - * The vector of the virtual has already been set in the PIR. - * Send a notification event to deliver the virtual interrupt - * unless the vCPU is the currently running vCPU, i.e. the - * event is being sent from a fastpath VM-Exit handler, in - * which case the PIR will be synced to the vIRR before - * re-entering the guest. - * - * When the target is not the running vCPU, the following - * possibilities emerge: - * - * Case 1: vCPU stays in non-root mode. Sending a notification - * event posts the interrupt to the vCPU. - * - * Case 2: vCPU exits to root mode and is still runnable. The - * PIR will be synced to the vIRR before re-entering the guest. - * Sending a notification event is ok as the host IRQ handler - * will ignore the spurious event. - * - * Case 3: vCPU exits to root mode and is blocked. vcpu_block() - * has already synced PIR to vIRR and never blocks the vCPU if - * the vIRR is not empty. Therefore, a blocked vCPU here does - * not wait for any requested interrupts in PIR, and sending a - * notification event also results in a benign, spurious event. - */ - - if (vcpu != kvm_get_running_vcpu()) - apic->send_IPI_mask(get_cpu_mask(vcpu->cpu), pi_vec); - return; - } -#endif - /* - * The vCPU isn't in the guest; wake the vCPU in case it is blocking, - * otherwise do nothing as KVM will grab the highest priority pending - * IRQ via ->sync_pir_to_irr() in vcpu_enter_guest(). - */ - kvm_vcpu_wake_up(vcpu); -} - static int vmx_deliver_nested_posted_interrupt(struct kvm_vcpu *vcpu, int vector) { @@ -4243,25 +4230,12 @@ if (!vcpu->arch.apic->apicv_active) return -1; - if (pi_test_and_set_pir(vector, &vmx->pi_desc)) - return 0; - - /* If a previous notification has sent the IPI, nothing to do. */ - if (pi_test_and_set_on(&vmx->pi_desc)) - return 0; - - /* - * The implied barrier in pi_test_and_set_on() pairs with the smp_mb_*() - * after setting vcpu->mode in vcpu_enter_guest(), thus the vCPU is - * guaranteed to see PID.ON=1 and sync the PIR to IRR if triggering a - * posted interrupt "fails" because vcpu->mode != IN_GUEST_MODE. - */ - kvm_vcpu_trigger_posted_interrupt(vcpu, POSTED_INTR_VECTOR); + __vmx_deliver_posted_interrupt(vcpu, &vmx->pi_desc, vector); return 0; } -static void vmx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, - int trig_mode, int vector) +void vmx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector) { struct kvm_vcpu *vcpu = apic->vcpu; @@ -4320,7 +4294,7 @@ vmcs_write16(HOST_SS_SELECTOR, __KERNEL_DS); /* 22.2.4 */ vmcs_write16(HOST_TR_SELECTOR, GDT_ENTRY_TSS*8); /* 22.2.4 */ - vmcs_writel(HOST_IDTR_BASE, host_idt_base); /* 22.2.4 */ + vmcs_writel(HOST_IDTR_BASE, vmx_host_idt_base); /* 22.2.4 */ vmcs_writel(HOST_RIP, (unsigned long)vmx_vmexit); /* 22.2.5 */ @@ -4423,7 +4397,7 @@ ~(VM_EXIT_LOAD_IA32_PERF_GLOBAL_CTRL | VM_EXIT_LOAD_IA32_EFER); } -static void vmx_refresh_apicv_exec_ctrl(struct kvm_vcpu *vcpu) +void vmx_refresh_apicv_exec_ctrl(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -4586,6 +4560,7 @@ exec_control &= ~SECONDARY_EXEC_ENABLE_VPID; if (!enable_ept) { exec_control &= ~SECONDARY_EXEC_ENABLE_EPT; + exec_control &= ~SECONDARY_EXEC_EPT_VIOLATION_VE; enable_unrestricted_guest = 0; } if (!enable_unrestricted_guest) @@ -4695,7 +4670,7 @@ return 0; } -static int vmx_vcpu_precreate(struct kvm *kvm) +int vmx_vcpu_precreate(struct kvm *kvm) { return vmx_alloc_ipiv_pid_table(kvm); } @@ -4720,8 +4695,40 @@ exec_controls_set(vmx, vmx_exec_control(vmx)); - if (cpu_has_secondary_exec_ctrls()) + if (cpu_has_secondary_exec_ctrls()) { secondary_exec_controls_set(vmx, vmx_secondary_exec_control(vmx)); + if (secondary_exec_controls_get(vmx) & + SECONDARY_EXEC_EPT_VIOLATION_VE) { + if (!vmx->ve_info) { + /* ve_info must be page aligned. */ + struct page *page; + + BUILD_BUG_ON(sizeof(*vmx->ve_info) > PAGE_SIZE); + page = alloc_page(GFP_KERNEL_ACCOUNT | __GFP_ZERO); + if (page) + vmx->ve_info = page_to_virt(page); + } + if (vmx->ve_info) { + /* + * Allow #VE delivery. CPU sets this field to + * 0xFFFFFFFF on #VE delivery. Another #VE can + * occur only if software clears the field. + */ + vmx->ve_info->delivery = 0; + vmcs_write64(VE_INFORMATION_ADDRESS, + __pa(vmx->ve_info)); + } else { + /* + * Because SECONDARY_EXEC_EPT_VIOLATION_VE is + * used only when ept_violation_ve_test is true, + * it's okay to go with the bit disabled. + */ + pr_err("Failed to allocate ve_info. disabling EPT_VIOLATION_VE.\n"); + secondary_exec_controls_clearbit(vmx, + SECONDARY_EXEC_EPT_VIOLATION_VE); + } + } + } if (cpu_has_tertiary_exec_ctrls()) tertiary_exec_controls_set(vmx, vmx_tertiary_exec_control(vmx)); @@ -4847,7 +4854,7 @@ vmx->pi_desc.sn = 1; } -static void vmx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) +void vmx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -4906,12 +4913,12 @@ vmx_update_fb_clear_dis(vcpu, vmx); } -static void vmx_enable_irq_window(struct kvm_vcpu *vcpu) +void vmx_enable_irq_window(struct kvm_vcpu *vcpu) { exec_controls_setbit(to_vmx(vcpu), CPU_BASED_INTR_WINDOW_EXITING); } -static void vmx_enable_nmi_window(struct kvm_vcpu *vcpu) +void vmx_enable_nmi_window(struct kvm_vcpu *vcpu) { if (!enable_vnmi || vmcs_read32(GUEST_INTERRUPTIBILITY_INFO) & GUEST_INTR_STATE_STI) { @@ -4922,7 +4929,7 @@ exec_controls_setbit(to_vmx(vcpu), CPU_BASED_NMI_WINDOW_EXITING); } -static void vmx_inject_irq(struct kvm_vcpu *vcpu, bool reinjected) +void vmx_inject_irq(struct kvm_vcpu *vcpu, bool reinjected) { struct vcpu_vmx *vmx = to_vmx(vcpu); uint32_t intr; @@ -4950,7 +4957,7 @@ vmx_clear_hlt(vcpu); } -static void vmx_inject_nmi(struct kvm_vcpu *vcpu) +void vmx_inject_nmi(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -5028,7 +5035,7 @@ GUEST_INTR_STATE_NMI)); } -static int vmx_nmi_allowed(struct kvm_vcpu *vcpu, bool for_injection) +int vmx_nmi_allowed(struct kvm_vcpu *vcpu, bool for_injection) { if (to_vmx(vcpu)->nested.nested_run_pending) return -EBUSY; @@ -5050,7 +5057,7 @@ (GUEST_INTR_STATE_STI | GUEST_INTR_STATE_MOV_SS)); } -static int vmx_interrupt_allowed(struct kvm_vcpu *vcpu, bool for_injection) +int vmx_interrupt_allowed(struct kvm_vcpu *vcpu, bool for_injection) { if (to_vmx(vcpu)->nested.nested_run_pending) return -EBUSY; @@ -5065,7 +5072,7 @@ return !vmx_interrupt_blocked(vcpu); } -static int vmx_set_tss_addr(struct kvm *kvm, unsigned int addr) +int vmx_set_tss_addr(struct kvm *kvm, unsigned int addr) { void __user *ret; @@ -5085,7 +5092,7 @@ return init_rmode_tss(kvm, ret); } -static int vmx_set_identity_map_addr(struct kvm *kvm, u64 ident_addr) +int vmx_set_identity_map_addr(struct kvm *kvm, u64 ident_addr) { to_kvm_vmx(kvm)->ept_identity_map_addr = ident_addr; return 0; @@ -5185,7 +5192,7 @@ intr_info = vmx_get_intr_info(vcpu); /* - * Machine checks are handled by handle_exception_irqoff(), or by + * Machine checks are handled by vmx_handle_exception_irqoff(), or by * vmx_vcpu_run() if a #MC occurs on VM-Entry. NMIs are handled by * vmx_vcpu_enter_exit(). */ @@ -5193,7 +5200,7 @@ return 1; /* - * Queue the exception here instead of in handle_nm_fault_irqoff(). + * Queue the exception here instead of in vmx_handle_nm_fault_irqoff(). * This ensures the nested_vmx check is not skipped so vmexit can * be reflected to L1 (when it intercepts #NM) before reaching this * point. @@ -5206,6 +5213,12 @@ if (is_invalid_opcode(intr_info)) return handle_ud(vcpu); + /* + * #VE isn't supposed to happen. Although vcpu can send + */ + if (KVM_BUG_ON(is_ve_fault(intr_info), vcpu->kvm)) + return -EIO; + error_code = 0; if (intr_info & INTR_INFO_DELIVER_CODE_MASK) error_code = vmcs_read32(VM_EXIT_INTR_ERROR_CODE); @@ -5371,8 +5384,7 @@ return kvm_fast_pio(vcpu, size, port, in); } -static void -vmx_patch_hypercall(struct kvm_vcpu *vcpu, unsigned char *hypercall) +void vmx_patch_hypercall(struct kvm_vcpu *vcpu, unsigned char *hypercall) { /* * Patch in the VMCALL instruction: @@ -5581,7 +5593,7 @@ return kvm_complete_insn_gp(vcpu, err); } -static void vmx_sync_dirty_debug_regs(struct kvm_vcpu *vcpu) +void vmx_sync_dirty_debug_regs(struct kvm_vcpu *vcpu) { get_debugreg(vcpu->arch.db[0], 0); get_debugreg(vcpu->arch.db[1], 1); @@ -5600,7 +5612,7 @@ set_debugreg(DR6_RESERVED, 6); } -static void vmx_set_dr7(struct kvm_vcpu *vcpu, unsigned long val) +void vmx_set_dr7(struct kvm_vcpu *vcpu, unsigned long val) { vmcs_writel(GUEST_DR7, val); } @@ -5737,11 +5749,8 @@ static int handle_ept_violation(struct kvm_vcpu *vcpu) { - unsigned long exit_qualification; + unsigned long exit_qualification = vmx_get_exit_qual(vcpu); gpa_t gpa; - u64 error_code; - - exit_qualification = vmx_get_exit_qual(vcpu); /* * EPT violation happened while executing iret from NMI, @@ -5756,23 +5765,6 @@ gpa = vmcs_read64(GUEST_PHYSICAL_ADDRESS); trace_kvm_page_fault(vcpu, gpa, exit_qualification); - - /* Is it a read fault? */ - error_code = (exit_qualification & EPT_VIOLATION_ACC_READ) - ? PFERR_USER_MASK : 0; - /* Is it a write fault? */ - error_code |= (exit_qualification & EPT_VIOLATION_ACC_WRITE) - ? PFERR_WRITE_MASK : 0; - /* Is it a fetch fault? */ - error_code |= (exit_qualification & EPT_VIOLATION_ACC_INSTR) - ? PFERR_FETCH_MASK : 0; - /* ept page table entry is present? */ - error_code |= (exit_qualification & EPT_VIOLATION_RWX_MASK) - ? PFERR_PRESENT_MASK : 0; - - error_code |= (exit_qualification & EPT_VIOLATION_GVA_TRANSLATED) != 0 ? - PFERR_GUEST_FINAL_MASK : PFERR_GUEST_PAGE_MASK; - vcpu->arch.exit_qualification = exit_qualification; /* @@ -5786,7 +5778,7 @@ if (unlikely(allow_smaller_maxphyaddr && kvm_vcpu_is_illegal_gpa(vcpu, gpa))) return kvm_emulate_instruction(vcpu, 0); - return kvm_mmu_page_fault(vcpu, gpa, error_code, NULL, 0); + return __vmx_handle_ept_violation(vcpu, gpa, exit_qualification, PG_LEVEL_NONE); } static int handle_ept_misconfig(struct kvm_vcpu *vcpu) @@ -5871,7 +5863,7 @@ return 1; } -static int vmx_vcpu_pre_run(struct kvm_vcpu *vcpu) +int vmx_vcpu_pre_run(struct kvm_vcpu *vcpu) { if (vmx_emulation_required_with_pending_exception(vcpu)) { kvm_prepare_emulation_failure_exit(vcpu); @@ -6135,9 +6127,8 @@ static const int kvm_vmx_max_exit_handlers = ARRAY_SIZE(kvm_vmx_exit_handlers); -static void vmx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, - u64 *info1, u64 *info2, - u32 *intr_info, u32 *error_code) +void vmx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, + u64 *info1, u64 *info2, u32 *intr_info, u32 *error_code) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -6395,6 +6386,18 @@ if (secondary_exec_control & SECONDARY_EXEC_ENABLE_VPID) pr_err("Virtual processor ID = 0x%04x\n", vmcs_read16(VIRTUAL_PROCESSOR_ID)); + if (secondary_exec_control & SECONDARY_EXEC_EPT_VIOLATION_VE) { + struct vmx_ve_information *ve_info; + + pr_err("VE info address = 0x%016llx\n", + vmcs_read64(VE_INFORMATION_ADDRESS)); + ve_info = __va(vmcs_read64(VE_INFORMATION_ADDRESS)); + pr_err("ve_info: 0x%08x 0x%08x 0x%016llx 0x%016llx 0x%016llx 0x%04x\n", + ve_info->exit_reason, ve_info->delivery, + ve_info->exit_qualification, + ve_info->guest_linear_address, + ve_info->guest_physical_address, ve_info->eptp_index); + } } /* @@ -6580,7 +6583,7 @@ return 0; } -static int vmx_handle_exit(struct kvm_vcpu *vcpu, fastpath_t exit_fastpath) +int vmx_handle_exit(struct kvm_vcpu *vcpu, fastpath_t exit_fastpath) { int ret = __vmx_handle_exit(vcpu, exit_fastpath); @@ -6668,7 +6671,7 @@ : "eax", "ebx", "ecx", "edx"); } -static void vmx_update_cr8_intercept(struct kvm_vcpu *vcpu, int tpr, int irr) +void vmx_update_cr8_intercept(struct kvm_vcpu *vcpu, int tpr, int irr) { struct vmcs12 *vmcs12 = get_vmcs12(vcpu); int tpr_threshold; @@ -6738,7 +6741,7 @@ vmx_update_msr_bitmap_x2apic(vcpu); } -static void vmx_set_apic_access_page_addr(struct kvm_vcpu *vcpu) +void vmx_set_apic_access_page_addr(struct kvm_vcpu *vcpu) { const gfn_t gfn = APIC_DEFAULT_PHYS_BASE >> PAGE_SHIFT; struct kvm *kvm = vcpu->kvm; @@ -6758,10 +6761,10 @@ return; /* - * Grab the memslot so that the hva lookup for the mmu_notifier retry - * is guaranteed to use the same memslot as the pfn lookup, i.e. rely - * on the pfn lookup's validation of the memslot to ensure a valid hva - * is used for the retry check. + * Explicitly grab the memslot using KVM's internal slot ID to ensure + * KVM doesn't unintentionally grab a userspace memslot. It _should_ + * be impossible for userspace to create a memslot for the APIC when + * APICv is enabled, but paranoia won't hurt in this case. */ slot = id_to_memslot(slots, APIC_ACCESS_PAGE_PRIVATE_MEMSLOT); if (!slot || slot->flags & KVM_MEMSLOT_INVALID) @@ -6786,8 +6789,7 @@ return; read_lock(&vcpu->kvm->mmu_lock); - if (mmu_invalidate_retry_hva(kvm, mmu_seq, - gfn_to_hva_memslot(slot, gfn))) { + if (mmu_invalidate_retry_gfn(kvm, mmu_seq, gfn)) { kvm_make_request(KVM_REQ_APIC_PAGE_RELOAD, vcpu); read_unlock(&vcpu->kvm->mmu_lock); goto out; @@ -6806,7 +6808,7 @@ kvm_release_pfn_clean(pfn); } -static void vmx_hwapic_isr_update(int max_isr) +void vmx_hwapic_isr_update(int max_isr) { u16 status; u8 old; @@ -6840,7 +6842,7 @@ } } -static void vmx_hwapic_irr_update(struct kvm_vcpu *vcpu, int max_irr) +void vmx_hwapic_irr_update(struct kvm_vcpu *vcpu, int max_irr) { /* * When running L2, updating RVI is only relevant when @@ -6854,7 +6856,7 @@ vmx_set_rvi(max_irr); } -static int vmx_sync_pir_to_irr(struct kvm_vcpu *vcpu) +int vmx_sync_pir_to_irr(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); int max_irr; @@ -6900,7 +6902,7 @@ return max_irr; } -static void vmx_load_eoi_exitmap(struct kvm_vcpu *vcpu, u64 *eoi_exit_bitmap) +void vmx_load_eoi_exitmap(struct kvm_vcpu *vcpu, u64 *eoi_exit_bitmap) { if (!kvm_vcpu_apicv_active(vcpu)) return; @@ -6911,70 +6913,7 @@ vmcs_write64(EOI_EXIT_BITMAP3, eoi_exit_bitmap[3]); } -static void vmx_apicv_post_state_restore(struct kvm_vcpu *vcpu) -{ - struct vcpu_vmx *vmx = to_vmx(vcpu); - - pi_clear_on(&vmx->pi_desc); - memset(vmx->pi_desc.pir, 0, sizeof(vmx->pi_desc.pir)); -} - -void vmx_do_interrupt_irqoff(unsigned long entry); -void vmx_do_nmi_irqoff(void); - -static void handle_nm_fault_irqoff(struct kvm_vcpu *vcpu) -{ - /* - * Save xfd_err to guest_fpu before interrupt is enabled, so the - * MSR value is not clobbered by the host activity before the guest - * has chance to consume it. - * - * Do not blindly read xfd_err here, since this exception might - * be caused by L1 interception on a platform which doesn't - * support xfd at all. - * - * Do it conditionally upon guest_fpu::xfd. xfd_err matters - * only when xfd contains a non-zero value. - * - * Queuing exception is done in vmx_handle_exit. See comment there. - */ - if (vcpu->arch.guest_fpu.fpstate->xfd) - rdmsrl(MSR_IA32_XFD_ERR, vcpu->arch.guest_fpu.xfd_err); -} - -static void handle_exception_irqoff(struct vcpu_vmx *vmx) -{ - u32 intr_info = vmx_get_intr_info(&vmx->vcpu); - - /* if exit due to PF check for async PF */ - if (is_page_fault(intr_info)) - vmx->vcpu.arch.apf.host_apf_flags = kvm_read_and_reset_apf_flags(); - /* if exit due to NM, handle before interrupts are enabled */ - else if (is_nm_fault(intr_info)) - handle_nm_fault_irqoff(&vmx->vcpu); - /* Handle machine checks before interrupts are enabled */ - else if (is_machine_check(intr_info)) - kvm_machine_check(); -} - -static void handle_external_interrupt_irqoff(struct kvm_vcpu *vcpu) -{ - u32 intr_info = vmx_get_intr_info(vcpu); - unsigned int vector = intr_info & INTR_INFO_VECTOR_MASK; - gate_desc *desc = (gate_desc *)host_idt_base + vector; - - if (KVM_BUG(!is_external_intr(intr_info), vcpu->kvm, - "unexpected VM-Exit interrupt info: 0x%x", intr_info)) - return; - - kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ); - vmx_do_interrupt_irqoff(gate_offset(desc)); - kvm_after_interrupt(vcpu); - - vcpu->arch.at_instruction_boundary = true; -} - -static void vmx_handle_exit_irqoff(struct kvm_vcpu *vcpu) +void vmx_handle_exit_irqoff(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -6982,16 +6921,17 @@ return; if (vmx->exit_reason.basic == EXIT_REASON_EXTERNAL_INTERRUPT) - handle_external_interrupt_irqoff(vcpu); + vmx_handle_external_interrupt_irqoff(vcpu, + vmx_get_intr_info(vcpu)); else if (vmx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI) - handle_exception_irqoff(vmx); + vmx_handle_exception_irqoff(vcpu, vmx_get_intr_info(vcpu)); } /* * The kvm parameter can be NULL (module initialization, or invocation before * VM creation). Be sure to check the kvm parameter before using it. */ -static bool vmx_has_emulated_msr(struct kvm *kvm, u32 index) +bool vmx_has_emulated_msr(struct kvm *kvm, u32 index) { switch (index) { case MSR_IA32_SMBASE: @@ -7114,7 +7054,7 @@ IDT_VECTORING_ERROR_CODE); } -static void vmx_cancel_injection(struct kvm_vcpu *vcpu) +void vmx_cancel_injection(struct kvm_vcpu *vcpu) { __vmx_complete_interrupts(vcpu, vmcs_read32(VM_ENTRY_INTR_INFO_FIELD), @@ -7218,10 +7158,14 @@ } } -static noinstr void vmx_vcpu_enter_exit(struct kvm_vcpu *vcpu, +/* + * to_vmx() calls KVM_VM_BUG() which doesn't have noinst. The caller should + * convert it to avoid section mismatch. + */ +static noinstr void vmx_vcpu_enter_exit(struct vcpu_vmx *vmx, unsigned int flags) { - struct vcpu_vmx *vmx = to_vmx(vcpu); + struct kvm_vcpu *vcpu = &vmx->vcpu; guest_state_enter_irqoff(); @@ -7243,25 +7187,33 @@ flags); vcpu->arch.cr2 = native_read_cr2(); + vcpu->arch.regs_avail &= ~VMX_REGS_LAZY_LOAD_SET; + + vmx->idt_vectoring_info = 0; vmx_enable_fb_clear(vmx); - if (unlikely(vmx->fail)) + if (unlikely(vmx->fail)) { vmx->exit_reason.full = 0xdead; - else - vmx->exit_reason.full = vmcs_read32(VM_EXIT_REASON); + goto out; + } + + vmx->exit_reason.full = vmcs_read32(VM_EXIT_REASON); + if (likely(!vmx->exit_reason.failed_vmentry)) + vmx->idt_vectoring_info = vmcs_read32(IDT_VECTORING_INFO_FIELD); if ((u16)vmx->exit_reason.basic == EXIT_REASON_EXCEPTION_NMI && - is_nmi(vmx_get_intr_info(vcpu))) { + is_nmi(__vmx_get_intr_info(vmx))) { kvm_before_interrupt(vcpu, KVM_HANDLING_NMI); vmx_do_nmi_irqoff(); kvm_after_interrupt(vcpu); } +out: guest_state_exit_irqoff(); } -static fastpath_t vmx_vcpu_run(struct kvm_vcpu *vcpu) +fastpath_t vmx_vcpu_run(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); unsigned long cr3, cr4; @@ -7352,7 +7304,7 @@ kvm_wait_lapic_expire(vcpu); /* The actual VMENTER/EXIT is in the .noinstr.text section. */ - vmx_vcpu_enter_exit(vcpu, __vmx_vcpu_run_flags(vmx)); + vmx_vcpu_enter_exit(to_vmx(vcpu), __vmx_vcpu_run_flags(vmx)); /* All fields are clean at this point */ if (kvm_is_using_evmcs()) { @@ -7379,8 +7331,6 @@ loadsegment(es, __USER_DS); #endif - vcpu->arch.regs_avail &= ~VMX_REGS_LAZY_LOAD_SET; - pt_guest_exit(vmx); kvm_load_host_xsave_state(vcpu); @@ -7397,17 +7347,12 @@ vmx->nested.nested_run_pending = 0; } - vmx->idt_vectoring_info = 0; - if (unlikely(vmx->fail)) return EXIT_FASTPATH_NONE; if (unlikely((u16)vmx->exit_reason.basic == EXIT_REASON_MCE_DURING_VMENTRY)) kvm_machine_check(); - if (likely(!vmx->exit_reason.failed_vmentry)) - vmx->idt_vectoring_info = vmcs_read32(IDT_VECTORING_INFO_FIELD); - trace_kvm_exit(vcpu, KVM_ISA_VMX); if (unlikely(vmx->exit_reason.failed_vmentry)) @@ -7424,7 +7369,7 @@ return vmx_exit_handlers_fastpath(vcpu); } -static void vmx_vcpu_free(struct kvm_vcpu *vcpu) +void vmx_vcpu_free(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -7433,9 +7378,11 @@ free_vpid(vmx->vpid); nested_vmx_free_vcpu(vcpu); free_loaded_vmcs(vmx->loaded_vmcs); + if (vmx->ve_info) + free_page((unsigned long)vmx->ve_info); } -static int vmx_vcpu_create(struct kvm_vcpu *vcpu) +int vmx_vcpu_create(struct kvm_vcpu *vcpu) { struct vmx_uret_msr *tsx_ctrl; struct vcpu_vmx *vmx; @@ -7544,7 +7491,7 @@ #define L1TF_MSG_SMT "L1TF CPU bug present and SMT on, data leak possible. See CVE-2018-3646 and https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html for details.\n" #define L1TF_MSG_L1D "L1TF CPU bug present and virtualization mitigation disabled, data leak possible. See CVE-2018-3646 and https://www.kernel.org/doc/html/latest/admin-guide/hw-vuln/l1tf.html for details.\n" -static int vmx_vm_init(struct kvm *kvm) +int vmx_vm_init(struct kvm *kvm) { if (!ple_gap) kvm->arch.pause_in_guest = true; @@ -7575,7 +7522,7 @@ return 0; } -static u8 vmx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio) +u8 vmx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio) { u8 cache; @@ -7747,7 +7694,7 @@ vmx->pt_desc.ctl_bitmask &= ~(0xfULL << (32 + i * 4)); } -static void vmx_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) +void vmx_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -7892,7 +7839,7 @@ kvm_cpu_cap_check_and_set(X86_FEATURE_WAITPKG); } -static void vmx_request_immediate_exit(struct kvm_vcpu *vcpu) +void vmx_request_immediate_exit(struct kvm_vcpu *vcpu) { to_vmx(vcpu)->req_immediate_exit = true; } @@ -7931,10 +7878,10 @@ return intercept ? X86EMUL_UNHANDLEABLE : X86EMUL_CONTINUE; } -static int vmx_check_intercept(struct kvm_vcpu *vcpu, - struct x86_instruction_info *info, - enum x86_intercept_stage stage, - struct x86_exception *exception) +int vmx_check_intercept(struct kvm_vcpu *vcpu, + struct x86_instruction_info *info, + enum x86_intercept_stage stage, + struct x86_exception *exception) { struct vmcs12 *vmcs12 = get_vmcs12(vcpu); @@ -8014,8 +7961,8 @@ return 0; } -static int vmx_set_hv_timer(struct kvm_vcpu *vcpu, u64 guest_deadline_tsc, - bool *expired) +int vmx_set_hv_timer(struct kvm_vcpu *vcpu, u64 guest_deadline_tsc, + bool *expired) { struct vcpu_vmx *vmx; u64 tscl, guest_tscl, delta_tsc, lapic_timer_advance_cycles; @@ -8054,13 +8001,13 @@ return 0; } -static void vmx_cancel_hv_timer(struct kvm_vcpu *vcpu) +void vmx_cancel_hv_timer(struct kvm_vcpu *vcpu) { to_vmx(vcpu)->hv_deadline_tsc = -1; } #endif -static void vmx_sched_in(struct kvm_vcpu *vcpu, int cpu) +void vmx_sched_in(struct kvm_vcpu *vcpu, int cpu) { if (!kvm_pause_in_guest(vcpu->kvm)) shrink_ple_window(vcpu); @@ -8089,7 +8036,7 @@ secondary_exec_controls_clearbit(vmx, SECONDARY_EXEC_ENABLE_PML); } -static void vmx_setup_mce(struct kvm_vcpu *vcpu) +void vmx_setup_mce(struct kvm_vcpu *vcpu) { if (vcpu->arch.mcg_cap & MCG_LMCE_P) to_vmx(vcpu)->msr_ia32_feature_control_valid_bits |= @@ -8100,7 +8047,7 @@ } #ifdef CONFIG_KVM_SMM -static int vmx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection) +int vmx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection) { /* we need a nested vmexit to enter SMM, postpone if run is pending */ if (to_vmx(vcpu)->nested.nested_run_pending) @@ -8108,7 +8055,7 @@ return !is_smm(vcpu); } -static int vmx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram) +int vmx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram) { struct vcpu_vmx *vmx = to_vmx(vcpu); @@ -8129,7 +8076,7 @@ return 0; } -static int vmx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram) +int vmx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram) { struct vcpu_vmx *vmx = to_vmx(vcpu); int ret; @@ -8150,18 +8097,18 @@ return 0; } -static void vmx_enable_smi_window(struct kvm_vcpu *vcpu) +void vmx_enable_smi_window(struct kvm_vcpu *vcpu) { /* RSM will cause a vmexit anyway. */ } #endif -static bool vmx_apic_init_signal_blocked(struct kvm_vcpu *vcpu) +bool vmx_apic_init_signal_blocked(struct kvm_vcpu *vcpu) { return to_vmx(vcpu)->nested.vmxon && !is_guest_mode(vcpu); } -static void vmx_migrate_timers(struct kvm_vcpu *vcpu) +void vmx_migrate_timers(struct kvm_vcpu *vcpu) { if (is_guest_mode(vcpu)) { struct hrtimer *timer = &to_vmx(vcpu)->nested.preemption_timer; @@ -8171,7 +8118,7 @@ } } -static void vmx_hardware_unsetup(void) +void vmx_hardware_unsetup(void) { kvm_set_posted_intr_wakeup_handler(NULL); @@ -8181,166 +8128,13 @@ free_kvm_area(); } -#define VMX_REQUIRED_APICV_INHIBITS \ -( \ - BIT(APICV_INHIBIT_REASON_DISABLE)| \ - BIT(APICV_INHIBIT_REASON_ABSENT) | \ - BIT(APICV_INHIBIT_REASON_HYPERV) | \ - BIT(APICV_INHIBIT_REASON_BLOCKIRQ) | \ - BIT(APICV_INHIBIT_REASON_PHYSICAL_ID_ALIASED) | \ - BIT(APICV_INHIBIT_REASON_APIC_ID_MODIFIED) | \ - BIT(APICV_INHIBIT_REASON_APIC_BASE_MODIFIED) \ -) - -static void vmx_vm_destroy(struct kvm *kvm) +void vmx_vm_destroy(struct kvm *kvm) { struct kvm_vmx *kvm_vmx = to_kvm_vmx(kvm); free_pages((unsigned long)kvm_vmx->pid_table, vmx_get_pid_table_order(kvm)); } -static struct kvm_x86_ops vmx_x86_ops __initdata = { - .name = KBUILD_MODNAME, - - .check_processor_compatibility = vmx_check_processor_compat, - - .hardware_unsetup = vmx_hardware_unsetup, - - .hardware_enable = vmx_hardware_enable, - .hardware_disable = vmx_hardware_disable, - .has_emulated_msr = vmx_has_emulated_msr, - - .vm_size = sizeof(struct kvm_vmx), - .vm_init = vmx_vm_init, - .vm_destroy = vmx_vm_destroy, - - .vcpu_precreate = vmx_vcpu_precreate, - .vcpu_create = vmx_vcpu_create, - .vcpu_free = vmx_vcpu_free, - .vcpu_reset = vmx_vcpu_reset, - - .prepare_switch_to_guest = vmx_prepare_switch_to_guest, - .vcpu_load = vmx_vcpu_load, - .vcpu_put = vmx_vcpu_put, - - .update_exception_bitmap = vmx_update_exception_bitmap, - .get_msr_feature = vmx_get_msr_feature, - .get_msr = vmx_get_msr, - .set_msr = vmx_set_msr, - .get_segment_base = vmx_get_segment_base, - .get_segment = vmx_get_segment, - .set_segment = vmx_set_segment, - .get_cpl = vmx_get_cpl, - .get_cs_db_l_bits = vmx_get_cs_db_l_bits, - .is_valid_cr0 = vmx_is_valid_cr0, - .set_cr0 = vmx_set_cr0, - .is_valid_cr4 = vmx_is_valid_cr4, - .set_cr4 = vmx_set_cr4, - .set_efer = vmx_set_efer, - .get_idt = vmx_get_idt, - .set_idt = vmx_set_idt, - .get_gdt = vmx_get_gdt, - .set_gdt = vmx_set_gdt, - .set_dr7 = vmx_set_dr7, - .sync_dirty_debug_regs = vmx_sync_dirty_debug_regs, - .cache_reg = vmx_cache_reg, - .get_rflags = vmx_get_rflags, - .set_rflags = vmx_set_rflags, - .get_if_flag = vmx_get_if_flag, - - .flush_tlb_all = vmx_flush_tlb_all, - .flush_tlb_current = vmx_flush_tlb_current, - .flush_tlb_gva = vmx_flush_tlb_gva, - .flush_tlb_guest = vmx_flush_tlb_guest, - - .vcpu_pre_run = vmx_vcpu_pre_run, - .vcpu_run = vmx_vcpu_run, - .handle_exit = vmx_handle_exit, - .skip_emulated_instruction = vmx_skip_emulated_instruction, - .update_emulated_instruction = vmx_update_emulated_instruction, - .set_interrupt_shadow = vmx_set_interrupt_shadow, - .get_interrupt_shadow = vmx_get_interrupt_shadow, - .patch_hypercall = vmx_patch_hypercall, - .inject_irq = vmx_inject_irq, - .inject_nmi = vmx_inject_nmi, - .inject_exception = vmx_inject_exception, - .cancel_injection = vmx_cancel_injection, - .interrupt_allowed = vmx_interrupt_allowed, - .nmi_allowed = vmx_nmi_allowed, - .get_nmi_mask = vmx_get_nmi_mask, - .set_nmi_mask = vmx_set_nmi_mask, - .enable_nmi_window = vmx_enable_nmi_window, - .enable_irq_window = vmx_enable_irq_window, - .update_cr8_intercept = vmx_update_cr8_intercept, - .set_virtual_apic_mode = vmx_set_virtual_apic_mode, - .set_apic_access_page_addr = vmx_set_apic_access_page_addr, - .refresh_apicv_exec_ctrl = vmx_refresh_apicv_exec_ctrl, - .load_eoi_exitmap = vmx_load_eoi_exitmap, - .apicv_post_state_restore = vmx_apicv_post_state_restore, - .required_apicv_inhibits = VMX_REQUIRED_APICV_INHIBITS, - .hwapic_irr_update = vmx_hwapic_irr_update, - .hwapic_isr_update = vmx_hwapic_isr_update, - .guest_apic_has_interrupt = vmx_guest_apic_has_interrupt, - .sync_pir_to_irr = vmx_sync_pir_to_irr, - .deliver_interrupt = vmx_deliver_interrupt, - .dy_apicv_has_pending_interrupt = pi_has_pending_interrupt, - - .set_tss_addr = vmx_set_tss_addr, - .set_identity_map_addr = vmx_set_identity_map_addr, - .get_mt_mask = vmx_get_mt_mask, - - .get_exit_info = vmx_get_exit_info, - - .vcpu_after_set_cpuid = vmx_vcpu_after_set_cpuid, - - .has_wbinvd_exit = cpu_has_vmx_wbinvd_exit, - - .get_l2_tsc_offset = vmx_get_l2_tsc_offset, - .get_l2_tsc_multiplier = vmx_get_l2_tsc_multiplier, - .write_tsc_offset = vmx_write_tsc_offset, - .write_tsc_multiplier = vmx_write_tsc_multiplier, - - .load_mmu_pgd = vmx_load_mmu_pgd, - - .check_intercept = vmx_check_intercept, - .handle_exit_irqoff = vmx_handle_exit_irqoff, - - .request_immediate_exit = vmx_request_immediate_exit, - - .sched_in = vmx_sched_in, - - .cpu_dirty_log_size = PML_ENTITY_NUM, - .update_cpu_dirty_logging = vmx_update_cpu_dirty_logging, - - .nested_ops = &vmx_nested_ops, - - .pi_update_irte = vmx_pi_update_irte, - .pi_start_assignment = vmx_pi_start_assignment, - -#ifdef CONFIG_X86_64 - .set_hv_timer = vmx_set_hv_timer, - .cancel_hv_timer = vmx_cancel_hv_timer, -#endif - - .setup_mce = vmx_setup_mce, - -#ifdef CONFIG_KVM_SMM - .smi_allowed = vmx_smi_allowed, - .enter_smm = vmx_enter_smm, - .leave_smm = vmx_leave_smm, - .enable_smi_window = vmx_enable_smi_window, -#endif - - .can_emulate_instruction = vmx_can_emulate_instruction, - .apic_init_signal_blocked = vmx_apic_init_signal_blocked, - .migrate_timers = vmx_migrate_timers, - - .msr_filter_changed = vmx_msr_filter_changed, - .complete_emulated_msr = kvm_complete_insn_gp, - - .vcpu_deliver_sipi_vector = kvm_vcpu_deliver_sipi_vector, -}; - static unsigned int vmx_handle_intel_pt_intr(void) { struct kvm_vcpu *vcpu = kvm_get_running_vcpu(); @@ -8406,16 +8200,18 @@ kvm_mmu_set_me_spte_mask(0, me_mask); } -static struct kvm_x86_init_ops vmx_init_ops __initdata; - -static __init int hardware_setup(void) +__init int vmx_hardware_setup(void) { unsigned long host_bndcfgs; struct desc_ptr dt; + int cpu; int r; + /* vmx_hardware_disable() accesses loaded_vmcss_on_cpu. */ + for_each_possible_cpu(cpu) + INIT_LIST_HEAD(&per_cpu(loaded_vmcss_on_cpu, cpu)); store_idt(&dt); - host_idt_base = dt.address; + vmx_host_idt_base = dt.address; vmx_setup_user_return_msrs(); @@ -8477,16 +8273,16 @@ * using the APIC_ACCESS_ADDR VMCS field. */ if (!flexpriority_enabled) - vmx_x86_ops.set_apic_access_page_addr = NULL; + vt_x86_ops.set_apic_access_page_addr = NULL; if (!cpu_has_vmx_tpr_shadow()) - vmx_x86_ops.update_cr8_intercept = NULL; + vt_x86_ops.update_cr8_intercept = NULL; #if IS_ENABLED(CONFIG_HYPERV) if (ms_hyperv.nested_features & HV_X64_NESTED_GUEST_MAPPING_FLUSH && enable_ept) { - vmx_x86_ops.flush_remote_tlbs = hv_flush_remote_tlbs; - vmx_x86_ops.flush_remote_tlbs_range = hv_flush_remote_tlbs_range; + vt_x86_ops.flush_remote_tlbs = hv_flush_remote_tlbs; + vt_x86_ops.flush_remote_tlbs_range = hv_flush_remote_tlbs_range; } #endif @@ -8501,7 +8297,7 @@ if (!cpu_has_vmx_apicv()) enable_apicv = 0; if (!enable_apicv) - vmx_x86_ops.sync_pir_to_irr = NULL; + vt_x86_ops.sync_pir_to_irr = NULL; if (!enable_apicv || !cpu_has_vmx_ipiv()) enable_ipiv = false; @@ -8516,10 +8312,6 @@ set_bit(0, vmx_vpid_bitmap); /* 0 is reserved for host */ - if (enable_ept) - kvm_mmu_set_ept_masks(enable_ept_ad_bits, - cpu_has_vmx_ept_execute_only()); - /* * Setup shadow_me_value/shadow_me_mask to include MKTME KeyID * bits to shadow_zero_check. @@ -8537,7 +8329,7 @@ enable_pml = 0; if (!enable_pml) - vmx_x86_ops.cpu_dirty_log_size = 0; + vt_x86_ops.cpu_dirty_log_size = 0; if (!cpu_has_vmx_preemption_timer()) enable_preemption_timer = false; @@ -8562,9 +8354,9 @@ } if (!enable_preemption_timer) { - vmx_x86_ops.set_hv_timer = NULL; - vmx_x86_ops.cancel_hv_timer = NULL; - vmx_x86_ops.request_immediate_exit = __kvm_request_immediate_exit; + vt_x86_ops.set_hv_timer = NULL; + vt_x86_ops.cancel_hv_timer = NULL; + vt_x86_ops.request_immediate_exit = __kvm_request_immediate_exit; } kvm_caps.supported_mce_cap |= MCG_LMCE_P; @@ -8575,9 +8367,9 @@ if (!enable_ept || !enable_pmu || !cpu_has_vmx_intel_pt()) pt_mode = PT_MODE_SYSTEM; if (pt_mode == PT_MODE_HOST_GUEST) - vmx_init_ops.handle_intel_pt_intr = vmx_handle_intel_pt_intr; + vt_init_ops.handle_intel_pt_intr = vmx_handle_intel_pt_intr; else - vmx_init_ops.handle_intel_pt_intr = NULL; + vt_init_ops.handle_intel_pt_intr = NULL; setup_default_sgx_lepubkeyhash(); @@ -8600,14 +8392,6 @@ return r; } -static struct kvm_x86_init_ops vmx_init_ops __initdata = { - .hardware_setup = hardware_setup, - .handle_intel_pt_intr = NULL, - - .runtime_ops = &vmx_x86_ops, - .pmu_ops = &intel_pmu_ops, -}; - static void vmx_cleanup_l1d_flush(void) { if (vmx_l1d_flush_pages) { @@ -8618,43 +8402,20 @@ l1tf_vmx_mitigation = VMENTER_L1D_FLUSH_AUTO; } -static void __vmx_exit(void) +void vmx_exit(void) { allow_smaller_maxphyaddr = false; -#ifdef CONFIG_KEXEC_CORE RCU_INIT_POINTER(crash_vmclear_loaded_vmcss, NULL); synchronize_rcu(); -#endif - vmx_cleanup_l1d_flush(); -} - -static void vmx_exit(void) -{ - kvm_exit(); - kvm_x86_vendor_exit(); - __vmx_exit(); + vmx_cleanup_l1d_flush(); } -module_exit(vmx_exit); -static int __init vmx_init(void) +int __init vmx_init(void) { int r, cpu; - if (!kvm_is_vmx_supported()) - return -EOPNOTSUPP; - - /* - * Note, hv_init_evmcs() touches only VMX knobs, i.e. there's nothing - * to unwind if a later step fails. - */ - hv_init_evmcs(); - - r = kvm_x86_vendor_init(&vmx_init_ops); - if (r) - return r; - /* * Must be called after common x86 init so enable_ept is properly set * up. Hand the parameter mitigation value in which was stored in @@ -8664,20 +8425,16 @@ */ r = vmx_setup_l1d_flush(vmentry_l1d_flush_param); if (r) - goto err_l1d_flush; + return r; vmx_setup_fb_clear_ctrl(); - for_each_possible_cpu(cpu) { - INIT_LIST_HEAD(&per_cpu(loaded_vmcss_on_cpu, cpu)); - + for_each_possible_cpu(cpu) pi_init_cpu(cpu); - } -#ifdef CONFIG_KEXEC_CORE rcu_assign_pointer(crash_vmclear_loaded_vmcss, crash_vmclear_local_loaded_vmcss); -#endif + vmx_check_vmcs12_offsets(); /* @@ -8688,21 +8445,5 @@ if (!enable_ept) allow_smaller_maxphyaddr = true; - /* - * Common KVM initialization _must_ come last, after this, /dev/kvm is - * exposed to userspace! - */ - r = kvm_init(sizeof(struct vcpu_vmx), __alignof__(struct vcpu_vmx), - THIS_MODULE); - if (r) - goto err_kvm_init; - return 0; - -err_kvm_init: - __vmx_exit(); -err_l1d_flush: - kvm_x86_vendor_exit(); - return r; } -module_init(vmx_init); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/vmx.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/vmx.h @@ -11,6 +11,7 @@ #include "capabilities.h" #include "../kvm_cache_regs.h" #include "posted_intr.h" +#include "pmu_intel.h" #include "vmcs.h" #include "vmx_ops.h" #include "../cpuid.h" @@ -93,22 +94,6 @@ u32 full; }; -struct lbr_desc { - /* Basic info about guest LBR records. */ - struct x86_pmu_lbr records; - - /* - * Emulate LBR feature via passthrough LBR registers when the - * per-vcpu guest LBR event is scheduled on the current pcpu. - * - * The records may be inaccurate if the host reclaims the LBR. - */ - struct perf_event *event; - - /* True if LBRs are marked as not intercepted in the MSR bitmap */ - bool msr_passthrough; -}; - /* * The nested_vmx structure is part of vcpu_vmx, and holds information we need * for correct emulation of VMX (i.e., nested VMX) on this vcpu. @@ -248,6 +233,14 @@ struct vcpu_vmx { struct kvm_vcpu vcpu; + + /* Posted interrupt descriptor */ + struct pi_desc pi_desc; + + /* Used if this vCPU is waiting for PI notification wakeup. */ + struct list_head pi_wakeup_list; + /* Until here same layout to struct vcpu_pi. */ + u8 fail; u8 x2apic_msr_bitmap_mode; @@ -317,12 +310,6 @@ union vmx_exit_reason exit_reason; - /* Posted interrupt descriptor */ - struct pi_desc pi_desc; - - /* Used if this vCPU is waiting for PI notification wakeup. */ - struct list_head pi_wakeup_list; - /* Support for a guest hypervisor (nested VMX) */ struct nested_vmx nested; @@ -362,6 +349,9 @@ DECLARE_BITMAP(read, MAX_POSSIBLE_PASSTHROUGH_MSRS); DECLARE_BITMAP(write, MAX_POSSIBLE_PASSTHROUGH_MSRS); } shadow_msr_intercept; + + /* ve_info must be page aligned. */ + struct vmx_ve_information *ve_info; }; struct kvm_vmx { @@ -573,7 +563,8 @@ SECONDARY_EXEC_ENABLE_VMFUNC | \ SECONDARY_EXEC_BUS_LOCK_DETECTION | \ SECONDARY_EXEC_NOTIFY_VM_EXITING | \ - SECONDARY_EXEC_ENCLS_EXITING) + SECONDARY_EXEC_ENCLS_EXITING | \ + SECONDARY_EXEC_EPT_VIOLATION_VE) #define KVM_REQUIRED_VMX_TERTIARY_VM_EXEC_CONTROL 0 #define KVM_OPTIONAL_VMX_TERTIARY_VM_EXEC_CONTROL \ @@ -648,29 +639,19 @@ static __always_inline struct kvm_vmx *to_kvm_vmx(struct kvm *kvm) { + KVM_BUG_ON(kvm->arch.vm_type != KVM_X86_DEFAULT_VM && + kvm->arch.vm_type != KVM_X86_SW_PROTECTED_VM, kvm); return container_of(kvm, struct kvm_vmx, kvm); } static __always_inline struct vcpu_vmx *to_vmx(struct kvm_vcpu *vcpu) { + KVM_BUG_ON(vcpu->kvm->arch.vm_type != KVM_X86_DEFAULT_VM && + vcpu->kvm->arch.vm_type != KVM_X86_SW_PROTECTED_VM, + vcpu->kvm); return container_of(vcpu, struct vcpu_vmx, vcpu); } -static inline struct lbr_desc *vcpu_to_lbr_desc(struct kvm_vcpu *vcpu) -{ - return &to_vmx(vcpu)->lbr_desc; -} - -static inline struct x86_pmu_lbr *vcpu_to_lbr_records(struct kvm_vcpu *vcpu) -{ - return &vcpu_to_lbr_desc(vcpu)->records; -} - -static inline bool intel_pmu_lbr_is_enabled(struct kvm_vcpu *vcpu) -{ - return !!vcpu_to_lbr_records(vcpu)->nr; -} - void intel_pmu_cross_mapped_check(struct kvm_pmu *pmu); int intel_pmu_create_guest_lbr_event(struct kvm_vcpu *vcpu); void vmx_passthrough_lbr_msrs(struct kvm_vcpu *vcpu); @@ -685,16 +666,20 @@ return vmx->exit_qualification; } -static __always_inline u32 vmx_get_intr_info(struct kvm_vcpu *vcpu) +/* For noinstr vmx_vcpu_enter_exit(). See the comment on it. */ +static __always_inline u32 __vmx_get_intr_info(struct vcpu_vmx *vmx) { - struct vcpu_vmx *vmx = to_vmx(vcpu); - - if (!kvm_register_test_and_mark_available(vcpu, VCPU_EXREG_EXIT_INFO_2)) + if (!kvm_register_test_and_mark_available(&vmx->vcpu, VCPU_EXREG_EXIT_INFO_2)) vmx->exit_intr_info = vmcs_read32(VM_EXIT_INTR_INFO); return vmx->exit_intr_info; } +static __always_inline u32 vmx_get_intr_info(struct kvm_vcpu *vcpu) +{ + return __vmx_get_intr_info(to_vmx(vcpu)); +} + struct vmcs *alloc_vmcs_cpu(bool shadow, int cpu, gfp_t flags); void free_vmcs(struct vmcs *vmcs); int alloc_loaded_vmcs(struct loaded_vmcs *loaded_vmcs); --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/vmx/x86_ops.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/vmx/x86_ops.h @@ -0,0 +1,271 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef __KVM_X86_VMX_X86_OPS_H +#define __KVM_X86_VMX_X86_OPS_H + +#include + +#include + +#include "x86.h" + +#if IS_ENABLED(CONFIG_HYPERV) +__init void hv_init_evmcs(void); +void hv_reset_evmcs(void); +#else /* IS_ENABLED(CONFIG_HYPERV) */ +static inline void hv_init_evmcs(void) {} +static inline void hv_reset_evmcs(void) {} +#endif /* IS_ENABLED(CONFIG_HYPERV) */ + +bool kvm_is_vmx_supported(void); +int __init vmx_init(void); +void vmx_exit(void); + +__init int vmx_hardware_setup(void); + +extern struct kvm_x86_ops vt_x86_ops __initdata; +extern struct kvm_x86_init_ops vt_init_ops __initdata; + +__init int vmx_hardware_setup(void); +void vmx_hardware_unsetup(void); +int vmx_check_processor_compat(void); +int vmx_hardware_enable(void); +void vmx_hardware_disable(void); +int vmx_vm_init(struct kvm *kvm); +void vmx_vm_destroy(struct kvm *kvm); +int vmx_vcpu_precreate(struct kvm *kvm); +int vmx_vcpu_create(struct kvm_vcpu *vcpu); +int vmx_vcpu_pre_run(struct kvm_vcpu *vcpu); +fastpath_t vmx_vcpu_run(struct kvm_vcpu *vcpu); +void vmx_vcpu_free(struct kvm_vcpu *vcpu); +void vmx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event); +void vmx_vcpu_load(struct kvm_vcpu *vcpu, int cpu); +void vmx_vcpu_put(struct kvm_vcpu *vcpu); +int vmx_handle_exit(struct kvm_vcpu *vcpu, fastpath_t exit_fastpath); +void vmx_handle_exit_irqoff(struct kvm_vcpu *vcpu); +int vmx_skip_emulated_instruction(struct kvm_vcpu *vcpu); +void vmx_update_emulated_instruction(struct kvm_vcpu *vcpu); +int vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info); +#ifdef CONFIG_KVM_SMM +int vmx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection); +int vmx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram); +int vmx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram); +void vmx_enable_smi_window(struct kvm_vcpu *vcpu); +#endif +bool vmx_can_emulate_instruction(struct kvm_vcpu *vcpu, int emul_type, + void *insn, int insn_len); +int vmx_check_intercept(struct kvm_vcpu *vcpu, + struct x86_instruction_info *info, + enum x86_intercept_stage stage, + struct x86_exception *exception); +bool vmx_apic_init_signal_blocked(struct kvm_vcpu *vcpu); +void vmx_migrate_timers(struct kvm_vcpu *vcpu); +void vmx_set_virtual_apic_mode(struct kvm_vcpu *vcpu); +bool vmx_check_apicv_inhibit_reasons(enum kvm_apicv_inhibit reason); +void vmx_hwapic_irr_update(struct kvm_vcpu *vcpu, int max_irr); +void vmx_hwapic_isr_update(int max_isr); +bool vmx_guest_apic_has_interrupt(struct kvm_vcpu *vcpu); +int vmx_sync_pir_to_irr(struct kvm_vcpu *vcpu); +void vmx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector); +void vmx_vcpu_after_set_cpuid(struct kvm_vcpu *vcpu); +bool vmx_has_emulated_msr(struct kvm *kvm, u32 index); +void vmx_msr_filter_changed(struct kvm_vcpu *vcpu); +void vmx_prepare_switch_to_guest(struct kvm_vcpu *vcpu); +void vmx_update_exception_bitmap(struct kvm_vcpu *vcpu); +int vmx_get_msr_feature(struct kvm_msr_entry *msr); +int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info); +u64 vmx_get_segment_base(struct kvm_vcpu *vcpu, int seg); +void vmx_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg); +void vmx_set_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg); +int vmx_get_cpl(struct kvm_vcpu *vcpu); +void vmx_get_cs_db_l_bits(struct kvm_vcpu *vcpu, int *db, int *l); +bool vmx_is_valid_cr0(struct kvm_vcpu *vcpu, unsigned long cr0); +void vmx_set_cr0(struct kvm_vcpu *vcpu, unsigned long cr0); +void vmx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, int root_level); +void vmx_set_cr4(struct kvm_vcpu *vcpu, unsigned long cr4); +bool vmx_is_valid_cr4(struct kvm_vcpu *vcpu, unsigned long cr4); +int vmx_set_efer(struct kvm_vcpu *vcpu, u64 efer); +void vmx_get_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt); +void vmx_set_idt(struct kvm_vcpu *vcpu, struct desc_ptr *dt); +void vmx_get_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt); +void vmx_set_gdt(struct kvm_vcpu *vcpu, struct desc_ptr *dt); +void vmx_set_dr7(struct kvm_vcpu *vcpu, unsigned long val); +void vmx_sync_dirty_debug_regs(struct kvm_vcpu *vcpu); +void vmx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg); +unsigned long vmx_get_rflags(struct kvm_vcpu *vcpu); +void vmx_set_rflags(struct kvm_vcpu *vcpu, unsigned long rflags); +bool vmx_get_if_flag(struct kvm_vcpu *vcpu); +void vmx_flush_tlb_all(struct kvm_vcpu *vcpu); +void vmx_flush_tlb_current(struct kvm_vcpu *vcpu); +void vmx_flush_tlb_gva(struct kvm_vcpu *vcpu, gva_t addr); +void vmx_flush_tlb_guest(struct kvm_vcpu *vcpu); +void vmx_set_interrupt_shadow(struct kvm_vcpu *vcpu, int mask); +u32 vmx_get_interrupt_shadow(struct kvm_vcpu *vcpu); +void vmx_patch_hypercall(struct kvm_vcpu *vcpu, unsigned char *hypercall); +void vmx_inject_irq(struct kvm_vcpu *vcpu, bool reinjected); +void vmx_inject_nmi(struct kvm_vcpu *vcpu); +void vmx_inject_exception(struct kvm_vcpu *vcpu); +void vmx_cancel_injection(struct kvm_vcpu *vcpu); +int vmx_interrupt_allowed(struct kvm_vcpu *vcpu, bool for_injection); +int vmx_nmi_allowed(struct kvm_vcpu *vcpu, bool for_injection); +bool vmx_get_nmi_mask(struct kvm_vcpu *vcpu); +void vmx_set_nmi_mask(struct kvm_vcpu *vcpu, bool masked); +void vmx_enable_nmi_window(struct kvm_vcpu *vcpu); +void vmx_enable_irq_window(struct kvm_vcpu *vcpu); +void vmx_update_cr8_intercept(struct kvm_vcpu *vcpu, int tpr, int irr); +void vmx_set_apic_access_page_addr(struct kvm_vcpu *vcpu); +void vmx_refresh_apicv_exec_ctrl(struct kvm_vcpu *vcpu); +void vmx_load_eoi_exitmap(struct kvm_vcpu *vcpu, u64 *eoi_exit_bitmap); +int vmx_set_tss_addr(struct kvm *kvm, unsigned int addr); +int vmx_set_identity_map_addr(struct kvm *kvm, u64 ident_addr); +u8 vmx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio); +void vmx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, + u64 *info1, u64 *info2, u32 *intr_info, u32 *error_code); +u64 vmx_get_l2_tsc_offset(struct kvm_vcpu *vcpu); +u64 vmx_get_l2_tsc_multiplier(struct kvm_vcpu *vcpu); +void vmx_write_tsc_offset(struct kvm_vcpu *vcpu, u64 offset); +void vmx_write_tsc_multiplier(struct kvm_vcpu *vcpu, u64 multiplier); +void vmx_request_immediate_exit(struct kvm_vcpu *vcpu); +void vmx_sched_in(struct kvm_vcpu *vcpu, int cpu); +void vmx_update_cpu_dirty_logging(struct kvm_vcpu *vcpu); +#ifdef CONFIG_X86_64 +int vmx_set_hv_timer(struct kvm_vcpu *vcpu, u64 guest_deadline_tsc, + bool *expired); +void vmx_cancel_hv_timer(struct kvm_vcpu *vcpu); +#endif +void vmx_setup_mce(struct kvm_vcpu *vcpu); + +#ifdef CONFIG_INTEL_TDX_HOST +int __init tdx_hardware_setup(struct kvm_x86_ops *x86_ops); +void tdx_hardware_unsetup(void); +void tdx_hardware_disable(void); +bool tdx_is_vm_type_supported(unsigned long type); +int tdx_offline_cpu(void); + +int tdx_vm_enable_cap(struct kvm *kvm, struct kvm_enable_cap *cap); +int tdx_vm_init(struct kvm *kvm); +void tdx_mmu_release_hkid(struct kvm *kvm); +void tdx_vm_free(struct kvm *kvm); + +int tdx_vm_ioctl(struct kvm *kvm, void __user *argp); + +int tdx_vcpu_create(struct kvm_vcpu *vcpu); +void tdx_vcpu_free(struct kvm_vcpu *vcpu); +void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event); +fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu); +void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu); +void tdx_vcpu_put(struct kvm_vcpu *vcpu); +void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu); +bool tdx_protected_apic_has_interrupt(struct kvm_vcpu *vcpu); +void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu); +int tdx_handle_exit(struct kvm_vcpu *vcpu, + enum exit_fastpath_completion fastpath); +u8 tdx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio); + +void tdx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector); +int tdx_vcpu_check_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid_entry2 *e2, + int nent); +void tdx_inject_nmi(struct kvm_vcpu *vcpu); +void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, + u64 *info1, u64 *info2, u32 *intr_info, u32 *error_code); +bool tdx_has_emulated_msr(u32 index, bool write); +int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr); +int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr); +void tdx_set_virtual_apic_mode(struct kvm_vcpu *vcpu); + +int tdx_get_cpl(struct kvm_vcpu *vcpu); +void tdx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg); +unsigned long tdx_get_rflags(struct kvm_vcpu *vcpu); +u64 tdx_get_segment_base(struct kvm_vcpu *vcpu, int seg); +void tdx_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, int seg); + +int tdx_vcpu_ioctl(struct kvm_vcpu *vcpu, void __user *argp); + +void tdx_flush_tlb(struct kvm_vcpu *vcpu); +void tdx_flush_tlb_current(struct kvm_vcpu *vcpu); +int tdx_sept_flush_remote_tlbs(struct kvm *kvm); +int tdx_sept_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages); +void tdx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, int root_level); + +int tdx_vm_move_enc_context_from(struct kvm *kvm, unsigned int source_fd); +#else +static inline int tdx_hardware_setup(struct kvm_x86_ops *x86_ops) { return -EOPNOTSUPP; } +static inline void tdx_hardware_unsetup(void) {} +static inline void tdx_hardware_disable(void) {} +static inline bool tdx_is_vm_type_supported(unsigned long type) { return false; } +static inline int tdx_offline_cpu(void) { return 0; } + +static inline int tdx_vm_enable_cap(struct kvm *kvm, struct kvm_enable_cap *cap) +{ + return -EINVAL; +}; +static inline int tdx_vm_init(struct kvm *kvm) { return -EOPNOTSUPP; } +static inline void tdx_mmu_release_hkid(struct kvm *kvm) {} +static inline void tdx_vm_free(struct kvm *kvm) {} + +static inline int tdx_vm_ioctl(struct kvm *kvm, void __user *argp) { return -EOPNOTSUPP; } + +static inline int tdx_vcpu_create(struct kvm_vcpu *vcpu) { return -EOPNOTSUPP; } +static inline void tdx_vcpu_free(struct kvm_vcpu *vcpu) {} +static inline void tdx_vcpu_reset(struct kvm_vcpu *vcpu, bool init_event) {} +static inline fastpath_t tdx_vcpu_run(struct kvm_vcpu *vcpu) { return EXIT_FASTPATH_NONE; } +static inline void tdx_prepare_switch_to_guest(struct kvm_vcpu *vcpu) {} +static inline void tdx_vcpu_put(struct kvm_vcpu *vcpu) {} +static inline void tdx_vcpu_load(struct kvm_vcpu *vcpu, int cpu) {} +static inline bool tdx_protected_apic_has_interrupt(struct kvm_vcpu *vcpu) { return false; } +static inline void tdx_handle_exit_irqoff(struct kvm_vcpu *vcpu) {} +static inline int tdx_handle_exit(struct kvm_vcpu *vcpu, + enum exit_fastpath_completion fastpath) { return 0; } +static inline u8 tdx_get_mt_mask(struct kvm_vcpu *vcpu, gfn_t gfn, bool is_mmio) { return 0; } + +static inline void tdx_deliver_interrupt(struct kvm_lapic *apic, int delivery_mode, + int trig_mode, int vector) {} +static inline int tdx_vcpu_check_cpuid(struct kvm_vcpu *vcpu, struct kvm_cpuid_entry2 *e2, + int nent) { return -EOPNOTSUPP; } +static inline void tdx_inject_nmi(struct kvm_vcpu *vcpu) {} +static inline void tdx_get_exit_info(struct kvm_vcpu *vcpu, u32 *reason, u64 *info1, + u64 *info2, u32 *intr_info, u32 *error_code) {} +static inline bool tdx_has_emulated_msr(u32 index, bool write) { return false; } +static inline int tdx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } +static inline int tdx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr) { return 1; } + +static inline void tdx_set_virtual_apic_mode(struct kvm_vcpu *vcpu) {} + +static inline int tdx_get_cpl(struct kvm_vcpu *vcpu) { return 0; } +static inline void tdx_cache_reg(struct kvm_vcpu *vcpu, enum kvm_reg reg) {} +static inline unsigned long tdx_get_rflags(struct kvm_vcpu *vcpu) { return 0; } +static inline u64 tdx_get_segment_base(struct kvm_vcpu *vcpu, int seg) { return 0; } +static inline void tdx_get_segment(struct kvm_vcpu *vcpu, struct kvm_segment *var, + int seg) {} + +static inline int tdx_vcpu_ioctl(struct kvm_vcpu *vcpu, void __user *argp) { return -EOPNOTSUPP; } + +static inline void tdx_flush_tlb(struct kvm_vcpu *vcpu) {} +static inline void tdx_flush_tlb_current(struct kvm_vcpu *vcpu) {} +static inline int tdx_sept_flush_remote_tlbs(struct kvm *kvm) { return 0; } +static inline int tdx_sept_flush_remote_tlbs_range(struct kvm *kvm, gfn_t gfn, gfn_t nr_pages) +{ + return -EOPNOTSUPP; +} +static inline void tdx_load_mmu_pgd(struct kvm_vcpu *vcpu, hpa_t root_hpa, int root_level) {} + +static inline int tdx_vm_move_enc_context_from(struct kvm *kvm, unsigned int source_fd) +{ + return -EOPNOTSUPP; +} +#endif + +#if defined(CONFIG_INTEL_TDX_HOST) && defined(CONFIG_KVM_SMM) +int tdx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection); +int tdx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram); +int tdx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram); +void tdx_enable_smi_window(struct kvm_vcpu *vcpu); +#else +static inline int tdx_smi_allowed(struct kvm_vcpu *vcpu, bool for_injection) { return false; } +static inline int tdx_enter_smm(struct kvm_vcpu *vcpu, union kvm_smram *smram) { return 0; } +static inline int tdx_leave_smm(struct kvm_vcpu *vcpu, const union kvm_smram *smram) { return 0; } +static inline void tdx_enable_smi_window(struct kvm_vcpu *vcpu) {} +#endif + +#endif /* __KVM_X86_VMX_X86_OPS_H */ --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/x86.c +++ linux-intel-opt-6.5.0/arch/x86/kvm/x86.c @@ -89,7 +89,6 @@ #include "trace.h" #define MAX_IO_MSRS 256 -#define KVM_MAX_MCE_BANKS 32 struct kvm_caps kvm_caps __read_mostly = { .supported_mce_cap = MCG_CTL_P | MCG_SER_P, @@ -311,6 +310,7 @@ }; u64 __read_mostly host_xcr0; +EXPORT_SYMBOL_GPL(host_xcr0); static struct kmem_cache *x86_emulator_cache; @@ -435,6 +435,15 @@ } } +static void kvm_user_return_register_notifier(struct kvm_user_return_msrs *msrs) +{ + if (!msrs->registered) { + msrs->urn.on_user_return = kvm_on_user_return; + user_return_notifier_register(&msrs->urn); + msrs->registered = true; + } +} + int kvm_set_user_return_msr(unsigned slot, u64 value, u64 mask) { unsigned int cpu = smp_processor_id(); @@ -449,15 +458,21 @@ return 1; msrs->values[slot].curr = value; - if (!msrs->registered) { - msrs->urn.on_user_return = kvm_on_user_return; - user_return_notifier_register(&msrs->urn); - msrs->registered = true; - } + kvm_user_return_register_notifier(msrs); return 0; } EXPORT_SYMBOL_GPL(kvm_set_user_return_msr); +/* Update the cache, "curr", and register the notifier */ +void kvm_user_return_update_cache(unsigned int slot, u64 value) +{ + struct kvm_user_return_msrs *msrs = this_cpu_ptr(user_return_msrs); + + msrs->values[slot].curr = value; + kvm_user_return_register_notifier(msrs); +} +EXPORT_SYMBOL_GPL(kvm_user_return_update_cache); + static void drop_user_return_notifiers(void) { unsigned int cpu = smp_processor_id(); @@ -498,6 +513,7 @@ kvm_recalculate_apic_map(vcpu->kvm); return 0; } +EXPORT_SYMBOL_GPL(kvm_set_apic_base); /* * Handle a fault on a hardware virtualization (VMX or SVM) instruction. @@ -4443,6 +4459,19 @@ return 0; } +bool __kvm_is_vm_type_supported(unsigned long type) +{ + return type == KVM_X86_DEFAULT_VM || + (type == KVM_X86_SW_PROTECTED_VM && + IS_ENABLED(CONFIG_KVM_SW_PROTECTED_VM) && tdp_enabled); +} +EXPORT_SYMBOL_GPL(__kvm_is_vm_type_supported); + +static bool kvm_is_vm_type_supported(unsigned long type) +{ + return static_call(kvm_x86_is_vm_type_supported)(type); +} + int kvm_vm_ioctl_check_extension(struct kvm *kvm, long ext) { int r = 0; @@ -4488,7 +4517,6 @@ case KVM_CAP_ASYNC_PF_INT: case KVM_CAP_GET_TSC_KHZ: case KVM_CAP_KVMCLOCK_CTRL: - case KVM_CAP_READONLY_MEM: case KVM_CAP_HYPERV_TIME: case KVM_CAP_IOAPIC_POLARITY_IGNORED: case KVM_CAP_TSC_DEADLINE_TIMER: @@ -4575,6 +4603,8 @@ break; case KVM_CAP_MAX_VCPUS: r = KVM_MAX_VCPUS; + if (kvm_x86_ops.max_vcpus) + r = static_call(kvm_x86_max_vcpus)(kvm); break; case KVM_CAP_MAX_VCPU_ID: r = KVM_MAX_VCPU_IDS; @@ -4633,6 +4663,21 @@ case KVM_CAP_X86_NOTIFY_VMEXIT: r = kvm_caps.has_notify_vmexit; break; + case KVM_CAP_VM_TYPES: + r = BIT(KVM_X86_DEFAULT_VM); + if (kvm_is_vm_type_supported(KVM_X86_SW_PROTECTED_VM)) + r |= BIT(KVM_X86_SW_PROTECTED_VM); + if (kvm_is_vm_type_supported(KVM_X86_TDX_VM)) + r |= BIT(KVM_X86_TDX_VM); + if (kvm_is_vm_type_supported(KVM_X86_SNP_VM)) + r |= BIT(KVM_X86_SNP_VM); + break; + case KVM_CAP_READONLY_MEM: + if (kvm) + r = kvm->readonly_mem_unsupported ? 0 : 1; + else + r = 1; + break; default: break; } @@ -6064,6 +6109,12 @@ case KVM_SET_DEVICE_ATTR: r = kvm_vcpu_ioctl_device_attr(vcpu, ioctl, argp); break; + case KVM_MEMORY_ENCRYPT_OP: + r = -ENOTTY; + if (!kvm_x86_ops.vcpu_mem_enc_ioctl) + goto out; + r = kvm_x86_ops.vcpu_mem_enc_ioctl(vcpu, argp); + break; default: r = -EINVAL; } @@ -6499,6 +6550,8 @@ break; default: r = -EINVAL; + if (kvm_x86_ops.vm_enable_cap) + r = static_call(kvm_x86_vm_enable_cap)(kvm, cap); break; } return r; @@ -7034,10 +7087,6 @@ goto out; } case KVM_MEMORY_ENCRYPT_OP: { - r = -ENOTTY; - if (!kvm_x86_ops.mem_enc_ioctl) - goto out; - r = static_call(kvm_x86_mem_enc_ioctl)(kvm, argp); break; } @@ -9809,26 +9858,15 @@ return kvm_skip_emulated_instruction(vcpu); } -int kvm_emulate_hypercall(struct kvm_vcpu *vcpu) +unsigned long __kvm_emulate_hypercall(struct kvm_vcpu *vcpu, unsigned long nr, + unsigned long a0, unsigned long a1, + unsigned long a2, unsigned long a3, + int op_64_bit) { - unsigned long nr, a0, a1, a2, a3, ret; - int op_64_bit; - - if (kvm_xen_hypercall_enabled(vcpu->kvm)) - return kvm_xen_hypercall(vcpu); - - if (kvm_hv_hypercall_enabled(vcpu)) - return kvm_hv_hypercall(vcpu); - - nr = kvm_rax_read(vcpu); - a0 = kvm_rbx_read(vcpu); - a1 = kvm_rcx_read(vcpu); - a2 = kvm_rdx_read(vcpu); - a3 = kvm_rsi_read(vcpu); + unsigned long ret; trace_kvm_hypercall(nr, a0, a1, a2, a3); - op_64_bit = is_64_bit_hypercall(vcpu); if (!op_64_bit) { nr &= 0xFFFFFFFF; a0 &= 0xFFFFFFFF; @@ -9837,11 +9875,6 @@ a3 &= 0xFFFFFFFF; } - if (static_call(kvm_x86_get_cpl)(vcpu) != 0) { - ret = -KVM_EPERM; - goto out; - } - ret = -KVM_ENOSYS; switch (nr) { @@ -9904,6 +9937,34 @@ ret = -KVM_ENOSYS; break; } + return ret; +} +EXPORT_SYMBOL_GPL(__kvm_emulate_hypercall); + +int kvm_emulate_hypercall(struct kvm_vcpu *vcpu) +{ + unsigned long nr, a0, a1, a2, a3, ret; + int op_64_bit; + + if (kvm_xen_hypercall_enabled(vcpu->kvm)) + return kvm_xen_hypercall(vcpu); + + if (kvm_hv_hypercall_enabled(vcpu)) + return kvm_hv_hypercall(vcpu); + + nr = kvm_rax_read(vcpu); + a0 = kvm_rbx_read(vcpu); + a1 = kvm_rcx_read(vcpu); + a2 = kvm_rdx_read(vcpu); + a3 = kvm_rsi_read(vcpu); + op_64_bit = is_64_bit_hypercall(vcpu); + + if (static_call(kvm_x86_get_cpl)(vcpu) != 0) { + ret = -KVM_EPERM; + goto out; + } + + ret = __kvm_emulate_hypercall(vcpu, nr, a0, a1, a2, a3, op_64_bit); out: if (!op_64_bit) ret = (u32)ret; @@ -10744,7 +10805,7 @@ if (vcpu->arch.guest_fpu.xfd_err) wrmsrl(MSR_IA32_XFD_ERR, vcpu->arch.guest_fpu.xfd_err); - if (unlikely(vcpu->arch.switch_db_regs)) { + if (unlikely(vcpu->arch.switch_db_regs & ~KVM_DEBUGREG_AUTO_SWITCH)) { set_debugreg(0, 7); set_debugreg(vcpu->arch.eff_db[0], 0); set_debugreg(vcpu->arch.eff_db[1], 1); @@ -10790,6 +10851,7 @@ */ if (unlikely(vcpu->arch.switch_db_regs & KVM_DEBUGREG_WONT_EXIT)) { WARN_ON(vcpu->guest_debug & KVM_GUESTDBG_USE_HW_BP); + WARN_ON(vcpu->arch.switch_db_regs & KVM_DEBUGREG_AUTO_SWITCH); static_call(kvm_x86_sync_dirty_debug_regs)(vcpu); kvm_update_dr0123(vcpu); kvm_update_dr7(vcpu); @@ -10802,8 +10864,12 @@ * care about the messed up debug address registers. But if * we have some of them active, restore the old state. */ - if (hw_breakpoint_active()) - hw_breakpoint_restore(); + if (hw_breakpoint_active()) { + if (!(vcpu->arch.switch_db_regs & KVM_DEBUGREG_AUTO_SWITCH)) + hw_breakpoint_restore(); + else + set_debugreg(__this_cpu_read(cpu_dr7), 7); + } vcpu->arch.last_vmentry_cpu = vcpu->cpu; vcpu->arch.last_guest_tsc = kvm_read_l1_tsc(vcpu, rdtsc()); @@ -12258,10 +12324,16 @@ drop_user_return_notifiers(); } +int kvm_arch_offline_cpu(unsigned int cpu) +{ + return static_call(kvm_x86_offline_cpu)(); +} + bool kvm_vcpu_is_reset_bsp(struct kvm_vcpu *vcpu) { return vcpu->kvm->arch.bsp_vcpu_id == vcpu->vcpu_id; } +EXPORT_SYMBOL_GPL(kvm_vcpu_is_reset_bsp); bool kvm_vcpu_is_bsp(struct kvm_vcpu *vcpu) { @@ -12295,16 +12367,16 @@ int ret; unsigned long flags; - if (type) + if (!kvm_is_vm_type_supported(type)) return -EINVAL; + kvm->arch.vm_type = type; + ret = kvm_page_track_init(kvm); if (ret) goto out; - ret = kvm_mmu_init_vm(kvm); - if (ret) - goto out_page_track; + kvm_mmu_init_vm(kvm); ret = static_call(kvm_x86_vm_init)(kvm); if (ret) @@ -12349,7 +12421,6 @@ out_uninit_mmu: kvm_mmu_uninit_vm(kvm); -out_page_track: kvm_page_track_cleanup(kvm); out: return ret; @@ -12440,8 +12511,8 @@ hva = slot->userspace_addr; } - for (i = 0; i < KVM_ADDRESS_SPACE_NUM; i++) { - struct kvm_userspace_memory_region m; + for (i = 0; i < kvm_arch_nr_memslot_as_ids(kvm); i++) { + struct kvm_userspace_memory_region2 m; m.slot = id | (i << 16); m.flags = 0; @@ -12493,6 +12564,7 @@ kvm_page_track_cleanup(kvm); kvm_xen_destroy_vm(kvm); kvm_hv_destroy_vm(kvm); + static_call_cond(kvm_x86_vm_free)(kvm); } static void memslot_rmap_free(struct kvm_memory_slot *slot) @@ -12591,6 +12663,10 @@ } } +#ifdef CONFIG_KVM_GENERIC_MEMORY_ATTRIBUTES + kvm_mmu_init_memslot_memory_attributes(kvm, slot); +#endif + if (kvm_page_track_create_memslot(kvm, slot, npages)) goto out_free; @@ -12664,6 +12740,9 @@ u32 new_flags = new ? new->flags : 0; bool log_dirty_pages = new_flags & KVM_MEM_LOG_DIRTY_PAGES; + if (!kvm_arch_dirty_log_supported(kvm) && log_dirty_pages) + return; + /* * Update CPU dirty logging if dirty logging is being toggled. This * applies to all operations. @@ -12799,6 +12878,13 @@ void kvm_arch_flush_shadow_all(struct kvm *kvm) { + /* + * kvm_mmu_zap_all() zaps both private and shared page tables. Before + * tearing down private page tables, TDX requires some TD resources to + * be destroyed (i.e. keyID must have been reclaimed, etc). Invoke + * kvm_x86_flush_shadow_all_private() for this. + */ + static_call_cond(kvm_x86_flush_shadow_all_private)(kvm); kvm_mmu_zap_all(kvm); } @@ -13188,6 +13274,9 @@ void kvm_arch_register_noncoherent_dma(struct kvm *kvm) { + KVM_BUG_ON(kvm->arch.vm_type != KVM_X86_DEFAULT_VM && + kvm->arch.vm_type != KVM_X86_SW_PROTECTED_VM, + kvm); atomic_inc(&kvm->arch.noncoherent_dma_count); } EXPORT_SYMBOL_GPL(kvm_arch_register_noncoherent_dma); @@ -13277,6 +13366,12 @@ } EXPORT_SYMBOL_GPL(kvm_arch_no_poll); +#ifdef CONFIG_KVM_PRIVATE_MEM +void kvm_arch_gmem_invalidate(struct kvm *kvm, kvm_pfn_t start, kvm_pfn_t end) +{ + static_call_cond(kvm_x86_gmem_invalidate)(kvm, start, end); +} +#endif int kvm_spec_ctrl_test_value(u64 value) { @@ -13629,8 +13724,180 @@ } EXPORT_SYMBOL_GPL(kvm_sev_es_string_io); +bool kvm_arch_dirty_log_supported(struct kvm *kvm) +{ + return kvm->arch.vm_type != KVM_X86_TDX_VM; +} + +/* vCPU mutex subclasses. */ +enum migration_role { + MIGRATION_SOURCE = 0, + MIGRATION_TARGET, + NR_MIGRATION_ROLES, +}; + +static int lock_vcpus_for_migration(struct kvm *kvm, enum migration_role role) +{ + struct kvm_vcpu *vcpu; + unsigned long i, j; + + kvm_for_each_vcpu(i, vcpu, kvm) { + if (mutex_lock_killable_nested(&vcpu->mutex, role)) + goto out_unlock; + +#ifdef CONFIG_PROVE_LOCKING + if (!i) + /* + * Reset the role to one that avoids colliding with + * the role used for the first vcpu mutex. + */ + role = NR_MIGRATION_ROLES; + else + mutex_release(&vcpu->mutex.dep_map, _THIS_IP_); +#endif + } + + return 0; + +out_unlock: + + kvm_for_each_vcpu(j, vcpu, kvm) { + if (i == j) + break; + +#ifdef CONFIG_PROVE_LOCKING + if (j) + mutex_acquire(&vcpu->mutex.dep_map, role, 0, _THIS_IP_); +#endif + + mutex_unlock(&vcpu->mutex); + } + return -EINTR; +} + +static void unlock_vcpus_for_migration(struct kvm *kvm) +{ + struct kvm_vcpu *vcpu; + unsigned long i; + bool first = true; + + kvm_for_each_vcpu(i, vcpu, kvm) { + if (first) + first = false; + else + mutex_acquire(&vcpu->mutex.dep_map, NR_MIGRATION_ROLES, + 0, _THIS_IP_); + + mutex_unlock(&vcpu->mutex); + } +} + +int lock_two_vms_for_migration(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress) +{ + int r = -EBUSY; + + if (dst_kvm == src_kvm) + return -EINVAL; + + /* + * Bail if these VMs are already involved in a migration to avoid + * deadlock between two VMs trying to migrate to/from each other. + */ + if (atomic_cmpxchg_acquire(dst_migration_in_progress, 0, 1)) + return -EBUSY; + + if (atomic_cmpxchg_acquire(src_migration_in_progress, 0, 1)) + goto release_dst; + + r = -EINTR; + if (mutex_lock_killable(&dst_kvm->lock)) + goto release_src; + if (mutex_lock_killable_nested(&src_kvm->lock, SINGLE_DEPTH_NESTING)) + goto unlock_dst; + return 0; + +unlock_dst: + mutex_unlock(&dst_kvm->lock); +release_src: + atomic_set_release(src_migration_in_progress, 0); +release_dst: + atomic_set_release(dst_migration_in_progress, 0); + return r; +} +EXPORT_SYMBOL_GPL(lock_two_vms_for_migration); + +void unlock_two_vms_for_migration(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress) +{ + mutex_unlock(&dst_kvm->lock); + mutex_unlock(&src_kvm->lock); + atomic_set_release(dst_migration_in_progress, 0); + atomic_set_release(src_migration_in_progress, 0); +} +EXPORT_SYMBOL_GPL(unlock_two_vms_for_migration); + +int pre_move_enc_context_from(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress) +{ + struct kvm_vcpu *src_vcpu; + unsigned long i; + int ret = -EINVAL; + + ret = lock_two_vms_for_migration(dst_kvm, src_kvm, + dst_migration_in_progress, + src_migration_in_progress); + if (ret) + return ret; + + ret = lock_vcpus_for_migration(dst_kvm, MIGRATION_TARGET); + if (ret) + goto unlock_vms; + + ret = lock_vcpus_for_migration(src_kvm, MIGRATION_SOURCE); + if (ret) + goto unlock_dst_vcpu; + + if (atomic_read(&dst_kvm->online_vcpus) != + atomic_read(&src_kvm->online_vcpus)) + goto unlock_dst_vcpu; + + kvm_for_each_vcpu(i, src_vcpu, src_kvm) { + if (!src_vcpu->arch.guest_state_protected) + goto unlock_dst_vcpu; + } + + return 0; + +unlock_dst_vcpu: + unlock_vcpus_for_migration(dst_kvm); +unlock_vms: + unlock_two_vms_for_migration(dst_kvm, src_kvm, + dst_migration_in_progress, + src_migration_in_progress); + + return ret; +} +EXPORT_SYMBOL_GPL(pre_move_enc_context_from); + +void post_move_enc_context_from(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress) +{ + unlock_vcpus_for_migration(src_kvm); + unlock_vcpus_for_migration(dst_kvm); + unlock_two_vms_for_migration(dst_kvm, src_kvm, + dst_migration_in_progress, + src_migration_in_progress); +} +EXPORT_SYMBOL_GPL(post_move_enc_context_from); + EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_entry); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_exit); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_mmio); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_fast_mmio); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_inj_virq); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_page_fault); @@ -13658,6 +13925,14 @@ EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_vmgexit_exit); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_vmgexit_msr_protocol_enter); EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_vmgexit_msr_protocol_exit); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_hypercall); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_hypercall_done); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_sept_add); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_sept_remove); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_page_add); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_page_remove); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_page_promote); +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_tdx_page_demote); static int __init kvm_x86_init(void) { --- linux-intel-opt-6.5.0.orig/arch/x86/kvm/x86.h +++ linux-intel-opt-6.5.0/arch/x86/kvm/x86.h @@ -9,6 +9,10 @@ #include "kvm_cache_regs.h" #include "kvm_emulate.h" +#define KVM_MAX_MCE_BANKS 32 + +bool __kvm_is_vm_type_supported(unsigned long type); + struct kvm_caps { /* control of guest tsc rate supported? */ bool has_tsc_control; @@ -539,4 +543,20 @@ unsigned int port, void *data, unsigned int count, int in); +int lock_two_vms_for_migration(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress); + +void unlock_two_vms_for_migration(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress); + +int pre_move_enc_context_from(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress); + +void post_move_enc_context_from(struct kvm *dst_kvm, struct kvm *src_kvm, + atomic_t *dst_migration_in_progress, + atomic_t *src_migration_in_progress); + #endif --- linux-intel-opt-6.5.0.orig/arch/x86/lib/copy_user_64.S +++ linux-intel-opt-6.5.0/arch/x86/lib/copy_user_64.S @@ -27,7 +27,7 @@ * NOTE! The calling convention is very intentionally the same as * for 'rep movs', so that we can rewrite the function call with * just a plain 'rep movs' on machines that have FSRM. But to make - * it simpler for us, we can clobber rsi/rdi and rax/r8-r11 freely. + * it simpler for us, we can clobber rsi/rdi and rax freely. */ SYM_FUNC_START(rep_movs_alternative) cmpq $64,%rcx @@ -68,55 +68,24 @@ _ASM_EXTABLE_UA( 3b, .Lcopy_user_tail) .Llarge: -0: ALTERNATIVE "jmp .Lunrolled", "rep movsb", X86_FEATURE_ERMS +0: ALTERNATIVE "jmp .Llarge_movsq", "rep movsb", X86_FEATURE_ERMS 1: RET - _ASM_EXTABLE_UA( 0b, 1b) + _ASM_EXTABLE_UA( 0b, 1b) - .p2align 4 -.Lunrolled: -10: movq (%rsi),%r8 -11: movq 8(%rsi),%r9 -12: movq 16(%rsi),%r10 -13: movq 24(%rsi),%r11 -14: movq %r8,(%rdi) -15: movq %r9,8(%rdi) -16: movq %r10,16(%rdi) -17: movq %r11,24(%rdi) -20: movq 32(%rsi),%r8 -21: movq 40(%rsi),%r9 -22: movq 48(%rsi),%r10 -23: movq 56(%rsi),%r11 -24: movq %r8,32(%rdi) -25: movq %r9,40(%rdi) -26: movq %r10,48(%rdi) -27: movq %r11,56(%rdi) - addq $64,%rsi - addq $64,%rdi - subq $64,%rcx - cmpq $64,%rcx - jae .Lunrolled - cmpl $8,%ecx - jae .Lword +.Llarge_movsq: + movq %rcx,%rax + shrq $3,%rcx + andl $7,%eax +0: rep movsq + movl %eax,%ecx testl %ecx,%ecx jne .Lcopy_user_tail RET - _ASM_EXTABLE_UA(10b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(11b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(12b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(13b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(14b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(15b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(16b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(17b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(20b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(21b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(22b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(23b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(24b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(25b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(26b, .Lcopy_user_tail) - _ASM_EXTABLE_UA(27b, .Lcopy_user_tail) +1: leaq (%rax,%rcx,8),%rcx + jmp .Lcopy_user_tail + + _ASM_EXTABLE_UA( 0b, 1b) SYM_FUNC_END(rep_movs_alternative) EXPORT_SYMBOL(rep_movs_alternative) --- linux-intel-opt-6.5.0.orig/arch/x86/lib/memcpy_64.S +++ linux-intel-opt-6.5.0/arch/x86/lib/memcpy_64.S @@ -40,7 +40,7 @@ SYM_FUNC_END(__memcpy) EXPORT_SYMBOL(__memcpy) -SYM_FUNC_ALIAS(memcpy, __memcpy) +SYM_FUNC_ALIAS_MEMFUNC(memcpy, __memcpy) EXPORT_SYMBOL(memcpy) SYM_FUNC_START_LOCAL(memcpy_orig) --- linux-intel-opt-6.5.0.orig/arch/x86/lib/memmove_64.S +++ linux-intel-opt-6.5.0/arch/x86/lib/memmove_64.S @@ -212,5 +212,5 @@ SYM_FUNC_END(__memmove) EXPORT_SYMBOL(__memmove) -SYM_FUNC_ALIAS(memmove, __memmove) +SYM_FUNC_ALIAS_MEMFUNC(memmove, __memmove) EXPORT_SYMBOL(memmove) --- linux-intel-opt-6.5.0.orig/arch/x86/lib/memset_64.S +++ linux-intel-opt-6.5.0/arch/x86/lib/memset_64.S @@ -40,7 +40,7 @@ SYM_FUNC_END(__memset) EXPORT_SYMBOL(__memset) -SYM_FUNC_ALIAS(memset, __memset) +SYM_FUNC_ALIAS_MEMFUNC(memset, __memset) EXPORT_SYMBOL(memset) SYM_FUNC_START_LOCAL(memset_orig) --- linux-intel-opt-6.5.0.orig/arch/x86/lib/putuser.S +++ linux-intel-opt-6.5.0/arch/x86/lib/putuser.S @@ -56,7 +56,6 @@ EXPORT_SYMBOL(__put_user_1) SYM_FUNC_START(__put_user_nocheck_1) - ENDBR ASM_STAC 2: movb %al,(%_ASM_CX) xor %ecx,%ecx @@ -76,7 +75,6 @@ EXPORT_SYMBOL(__put_user_2) SYM_FUNC_START(__put_user_nocheck_2) - ENDBR ASM_STAC 4: movw %ax,(%_ASM_CX) xor %ecx,%ecx @@ -96,7 +94,6 @@ EXPORT_SYMBOL(__put_user_4) SYM_FUNC_START(__put_user_nocheck_4) - ENDBR ASM_STAC 6: movl %eax,(%_ASM_CX) xor %ecx,%ecx @@ -119,7 +116,6 @@ EXPORT_SYMBOL(__put_user_8) SYM_FUNC_START(__put_user_nocheck_8) - ENDBR ASM_STAC 9: mov %_ASM_AX,(%_ASM_CX) #ifdef CONFIG_X86_32 --- linux-intel-opt-6.5.0.orig/arch/x86/mm/mem_encrypt.c +++ linux-intel-opt-6.5.0/arch/x86/mm/mem_encrypt.c @@ -12,6 +12,7 @@ #include #include #include +#include /* Override for DMA direct allocation check - ARCH_HAS_FORCE_DMA_UNENCRYPTED */ bool force_dma_unencrypted(struct device *dev) @@ -86,3 +87,36 @@ print_mem_encrypt_feature_info(); } + +void __init mem_encrypt_setup_arch(void) +{ + phys_addr_t total_mem = memblock_phys_mem_size(); + unsigned long size; + + if (!cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT)) + return; + + /* + * For SEV and TDX, all DMA has to occur via shared/unencrypted pages. + * Kernel uses SWIOTLB to make this happen without changing device + * drivers. However, depending on the workload being run, the + * default 64MB of SWIOTLB may not be enough and SWIOTLB may + * run out of buffers for DMA, resulting in I/O errors and/or + * performance degradation especially with high I/O workloads. + * + * Adjust the default size of SWIOTLB using a percentage of guest + * memory for SWIOTLB buffers. Also, as the SWIOTLB bounce buffer + * memory is allocated from low memory, ensure that the adjusted size + * is within the limits of low available memory. + * + * The percentage of guest memory used here for SWIOTLB buffers + * is more of an approximation of the static adjustment which + * 64MB for <1G, and ~128M to 256M for 1G-to-4G, i.e., the 6% + */ + size = total_mem * 6 / 100; + size = clamp_val(size, IO_TLB_DEFAULT_SIZE, SZ_1G); + swiotlb_adjust_size(size); + + /* Set restricted memory access for virtio. */ + virtio_set_mem_acc_cb(virtio_require_restricted_mem_acc); +} --- linux-intel-opt-6.5.0.orig/arch/x86/mm/mem_encrypt_amd.c +++ linux-intel-opt-6.5.0/arch/x86/mm/mem_encrypt_amd.c @@ -20,7 +20,6 @@ #include #include #include -#include #include #include @@ -215,40 +214,6 @@ __sme_early_map_unmap_mem(__va(cmdline_paddr), COMMAND_LINE_SIZE, true); } -void __init sev_setup_arch(void) -{ - phys_addr_t total_mem = memblock_phys_mem_size(); - unsigned long size; - - if (!cc_platform_has(CC_ATTR_GUEST_MEM_ENCRYPT)) - return; - - /* - * For SEV, all DMA has to occur via shared/unencrypted pages. - * SEV uses SWIOTLB to make this happen without changing device - * drivers. However, depending on the workload being run, the - * default 64MB of SWIOTLB may not be enough and SWIOTLB may - * run out of buffers for DMA, resulting in I/O errors and/or - * performance degradation especially with high I/O workloads. - * - * Adjust the default size of SWIOTLB for SEV guests using - * a percentage of guest memory for SWIOTLB buffers. - * Also, as the SWIOTLB bounce buffer memory is allocated - * from low memory, ensure that the adjusted size is within - * the limits of low available memory. - * - * The percentage of guest memory used here for SWIOTLB buffers - * is more of an approximation of the static adjustment which - * 64MB for <1G, and ~128M to 256M for 1G-to-4G, i.e., the 6% - */ - size = total_mem * 6 / 100; - size = clamp_val(size, IO_TLB_DEFAULT_SIZE, SZ_1G); - swiotlb_adjust_size(size); - - /* Set restricted memory access for virtio. */ - virtio_set_mem_acc_cb(virtio_require_restricted_mem_acc); -} - static unsigned long pg_level_to_pfn(int level, pte_t *kpte, pgprot_t *ret_prot) { unsigned long pfn = 0; @@ -288,11 +253,10 @@ return !cpu_feature_enabled(X86_FEATURE_SME_COHERENT); } -static void enc_dec_hypercall(unsigned long vaddr, int npages, bool enc) +static void enc_dec_hypercall(unsigned long vaddr, unsigned long size, bool enc) { #ifdef CONFIG_PARAVIRT - unsigned long sz = npages << PAGE_SHIFT; - unsigned long vaddr_end = vaddr + sz; + unsigned long vaddr_end = vaddr + size; while (vaddr < vaddr_end) { int psize, pmask, level; @@ -342,7 +306,7 @@ snp_set_memory_private(vaddr, npages); if (!cc_platform_has(CC_ATTR_HOST_MEM_ENCRYPT)) - enc_dec_hypercall(vaddr, npages, enc); + enc_dec_hypercall(vaddr, npages << PAGE_SHIFT, enc); return true; } @@ -466,7 +430,7 @@ ret = 0; - early_set_mem_enc_dec_hypercall(start, PAGE_ALIGN(size) >> PAGE_SHIFT, enc); + early_set_mem_enc_dec_hypercall(start, size, enc); out: __flush_tlb_all(); return ret; @@ -482,9 +446,9 @@ return early_set_memory_enc_dec(vaddr, size, true); } -void __init early_set_mem_enc_dec_hypercall(unsigned long vaddr, int npages, bool enc) +void __init early_set_mem_enc_dec_hypercall(unsigned long vaddr, unsigned long size, bool enc) { - enc_dec_hypercall(vaddr, npages, enc); + enc_dec_hypercall(vaddr, size, enc); } void __init sme_early_init(void) --- linux-intel-opt-6.5.0.orig/arch/x86/mm/pat/set_memory.c +++ linux-intel-opt-6.5.0/arch/x86/mm/pat/set_memory.c @@ -1913,6 +1913,7 @@ __pgprot(~pgprot_val(prot)), 0, 0, NULL); } +EXPORT_SYMBOL_GPL(__set_memory_prot); int _set_memory_uc(unsigned long addr, int numpages) { @@ -2041,17 +2042,23 @@ return rc; } -static int set_memory_p(unsigned long *addr, int numpages) +static int _set_memory_p(unsigned long *addr, int numpages) { return change_page_attr_set(addr, numpages, __pgprot(_PAGE_PRESENT), 0); } +int set_memory_p(unsigned long addr, int numpages) +{ + return change_page_attr_set(&addr, numpages, __pgprot(_PAGE_PRESENT), 0); +} +EXPORT_SYMBOL_GPL(set_memory_p); + /* Restore full speculative operation to the pfn. */ int clear_mce_nospec(unsigned long pfn) { unsigned long addr = (unsigned long) pfn_to_kaddr(pfn); - return set_memory_p(&addr, 1); + return _set_memory_p(&addr, 1); } EXPORT_SYMBOL_GPL(clear_mce_nospec); #endif /* CONFIG_X86_64 */ @@ -2096,6 +2103,7 @@ { return change_page_attr_clear(&addr, numpages, __pgprot(_PAGE_PRESENT), 0); } +EXPORT_SYMBOL_GPL(set_memory_np); int set_memory_np_noalias(unsigned long addr, int numpages) { @@ -2350,11 +2358,28 @@ { return __set_pages_np(page, 1); } +EXPORT_SYMBOL_GPL(set_direct_map_invalid_noflush); int set_direct_map_default_noflush(struct page *page) { return __set_pages_p(page, 1); } +EXPORT_SYMBOL_GPL(set_direct_map_default_noflush); + +int set_direct_map_split_noflush(struct page *page) +{ + /* Hack to forcibly split direct map. */ + unsigned long tempaddr = (unsigned long) page_address(page); + struct cpa_data cpa = { .vaddr = &tempaddr, + .pgd = NULL, + .numpages = 1, + .mask_set = __pgprot(_PAGE_PRESENT | _PAGE_RW), + .mask_clr = __pgprot(0), + .flags = 0, + .force_split = 1}; + return __change_page_attr_set_clr(&cpa, 0); +} +EXPORT_SYMBOL_GPL(set_direct_map_split_noflush); #ifdef CONFIG_DEBUG_PAGEALLOC void __kernel_map_pages(struct page *page, int numpages, int enable) --- linux-intel-opt-6.5.0.orig/arch/x86/pci/common.c +++ linux-intel-opt-6.5.0/arch/x86/pci/common.c @@ -34,6 +34,7 @@ #endif int pcibios_last_bus = -1; unsigned long pirq_table_addr; +unsigned int pci_early_clear_msi; const struct pci_raw_ops *__read_mostly raw_pci_ops; const struct pci_raw_ops *__read_mostly raw_pci_ext_ops; @@ -614,6 +615,9 @@ } else if (!strcmp(str, "skip_isa_align")) { pci_probe |= PCI_CAN_SKIP_ISA_ALIGN; return NULL; + } else if (!strcmp(str, "clearmsi")) { + pci_early_clear_msi = 1; + return NULL; } else if (!strcmp(str, "noioapicquirk")) { noioapicquirk = 1; return NULL; --- linux-intel-opt-6.5.0.orig/arch/x86/pci/early.c +++ linux-intel-opt-6.5.0/arch/x86/pci/early.c @@ -51,6 +51,31 @@ outw(val, 0xcfc + (offset&2)); } +u32 pci_early_find_cap(int bus, int slot, int func, int cap) +{ + int bytes; + u8 pos; + + if (!(read_pci_config_16(bus, slot, func, PCI_STATUS) & + PCI_STATUS_CAP_LIST)) + return 0; + + pos = read_pci_config_byte(bus, slot, func, PCI_CAPABILITY_LIST); + for (bytes = 0; bytes < 48 && pos >= 0x40; bytes++) { + u8 id; + + pos &= ~3; + id = read_pci_config_byte(bus, slot, func, pos+PCI_CAP_LIST_ID); + if (id == 0xff) + break; + if (id == cap) + return pos; + pos = read_pci_config_byte(bus, slot, func, + pos+PCI_CAP_LIST_NEXT); + } + return 0; +} + int early_pci_allowed(void) { return (pci_probe & (PCI_PROBE_CONF1|PCI_PROBE_NOEARLY)) == --- linux-intel-opt-6.5.0.orig/arch/x86/purgatory/Makefile +++ linux-intel-opt-6.5.0/arch/x86/purgatory/Makefile @@ -19,6 +19,10 @@ # optimization flags. KBUILD_CFLAGS := $(filter-out -fprofile-sample-use=% -fprofile-use=%,$(KBUILD_CFLAGS)) +# When LTO is enabled, llvm emits many text sections, which is not supported +# by kexec. Remove -flto=* flags. +KBUILD_CFLAGS := $(filter-out $(CC_FLAGS_LTO),$(KBUILD_CFLAGS)) + # When linking purgatory.ro with -r unresolved symbols are not checked, # also link a purgatory.chk binary without -r to check for unresolved symbols. PURGATORY_LDFLAGS := -e purgatory_start -z nodefaultlib --- linux-intel-opt-6.5.0.orig/arch/x86/realmode/rm/trampoline_32.S +++ linux-intel-opt-6.5.0/arch/x86/realmode/rm/trampoline_32.S @@ -23,6 +23,7 @@ #include #include #include +#include #include "realmode.h" .text @@ -59,6 +60,7 @@ .section ".text32","ax" .code32 SYM_CODE_START(startup_32) # note: also used from wakeup_asm.S + ANNOTATE_RETPOLINE_SAFE jmp *%eax SYM_CODE_END(startup_32) --- linux-intel-opt-6.5.0.orig/arch/x86/virt/Makefile +++ linux-intel-opt-6.5.0/arch/x86/virt/Makefile @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-y += vmx/ --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/Makefile +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/Makefile @@ -0,0 +1,2 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-$(CONFIG_INTEL_TDX_HOST) += tdx/ --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/Makefile +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/Makefile @@ -0,0 +1,3 @@ +# SPDX-License-Identifier: GPL-2.0-only +obj-y += seamcall.o tdx.o +obj-$(CONFIG_INTEL_TDX_HOST_DEBUG) += tdx_debug.o --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/seamcall.S +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/seamcall.S @@ -0,0 +1,65 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#include +#include +#include + +#include "tdxcall.S" + +/* + * __seamcall() - Host-side interface functions to SEAM software + * (the P-SEAMLDR or the TDX module). + * + * __seamcall() function ABI: + * + * @fn (RDI) - SEAMCALL Leaf number, moved to RAX + * @args (RSI) - struct tdx_module_args for input + * + * Only RCX/RDX/R8-R11 are used as input registers. + * + * Return (via RAX) TDX_SEAMCALL_VMFAILINVALID if the SEAMCALL itself + * fails, or the completion status of the SEAMCALL leaf function. + */ +SYM_FUNC_START(__seamcall) + TDX_MODULE_CALL host=1 +SYM_FUNC_END(__seamcall) +EXPORT_SYMBOL_GPL(__seamcall) + +/* + * __seamcall_ret() - Host-side interface functions to SEAM software + * (the P-SEAMLDR or the TDX module), with saving output registers to + * the 'struct tdx_module_args' used as input. + * + * __seamcall_ret() function ABI: + * + * @fn (RDI) - SEAMCALL Leaf number, moved to RAX + * @args (RSI) - struct tdx_module_args for input and output + * + * Only RCX/RDX/R8-R11 are used as input/output registers. + * + * Return (via RAX) TDX_SEAMCALL_VMFAILINVALID if the SEAMCALL itself + * fails, or the completion status of the SEAMCALL leaf function. + */ +SYM_FUNC_START(__seamcall_ret) + TDX_MODULE_CALL host=1 ret=1 +SYM_FUNC_END(__seamcall_ret) +EXPORT_SYMBOL_GPL(__seamcall_ret) + +/* + * __seamcall_saved_ret() - Host-side interface functions to SEAM software + * (the P-SEAMLDR or the TDX module), with saving output registers to the + * 'struct tdx_module_args' used as input. + * + * __seamcall_saved_ret() function ABI: + * + * @fn (RDI) - SEAMCALL Leaf number, moved to RAX + * @args (RSI) - struct tdx_module_args for input and output + * + * All registers in @args are used as input/output registers. + * + * Return (via RAX) TDX_SEAMCALL_VMFAILINVALID if the SEAMCALL itself + * fails, or the completion status of the SEAMCALL leaf function. + */ +SYM_FUNC_START(__seamcall_saved_ret) + TDX_MODULE_CALL host=1 ret=1 saved=1 +SYM_FUNC_END(__seamcall_saved_ret) +EXPORT_SYMBOL_GPL(__seamcall_saved_ret) --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/tdx.c +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/tdx.c @@ -0,0 +1,1935 @@ +// SPDX-License-Identifier: GPL-2.0 +/* + * Copyright(c) 2023 Intel Corporation. + * + * Intel Trusted Domain Extensions (TDX) support + */ + +#define pr_fmt(fmt) "tdx: " fmt + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include "tdx.h" + +#ifdef CONFIG_SYSFS +static int tdx_sysfs_init(void); +#else +static inline int tdx_sysfs_init(void) { return 0; } +#endif + +u32 tdx_global_keyid __ro_after_init; +EXPORT_SYMBOL_GPL(tdx_global_keyid); +static u32 tdx_guest_keyid_start __ro_after_init; +static u32 tdx_nr_guest_keyids __ro_after_init; + +static bool tdx_global_initialized; +static DEFINE_RAW_SPINLOCK(tdx_global_init_lock); +static DEFINE_PER_CPU(bool, tdx_lp_initialized); + +static enum tdx_module_status_t tdx_module_status; +static DEFINE_MUTEX(tdx_module_lock); + +/* All TDX-usable memory regions. Protected by mem_hotplug_lock. */ +static LIST_HEAD(tdx_memlist); + +static struct tdmr_info_list tdx_tdmr_list; + +static atomic_t tdx_may_has_private_mem; + +u32 tdx_get_nr_guest_keyids(void) +{ + return tdx_nr_guest_keyids; +} +EXPORT_SYMBOL_GPL(tdx_get_nr_guest_keyids); + +/* REVERTME: tdx module debug */ +/* Non-architectural debug configuration SEAMCALLs. */ +#define SEAMCALL_TDDEBUGCONFIG 0xFE + +#define DEBUGCONFIG_SET_TRACE_LEVEL 3 + +static bool trace_boot_seamcalls; + +static int __init trace_seamcalls(char *s) +{ + trace_boot_seamcalls = true; + return 1; +} +__setup("trace_boot_seamcalls", trace_seamcalls); + +static u64 tdx_trace_level = DEBUGCONFIG_TRACE_CUSTOM; + +static int trace_level_set(const char *val, const struct kernel_param *kp) +{ + int r; + + r = param_set_ulong(val, kp); + if (tdx_trace_level == DEBUGCONFIG_TRACE_ALL || + tdx_trace_level == DEBUGCONFIG_TRACE_WARN || + tdx_trace_level == DEBUGCONFIG_TRACE_ERROR || + tdx_trace_level == DEBUGCONFIG_TRACE_CUSTOM || + tdx_trace_level == DEBUGCONFIG_TRACE_NONE) { + tdx_trace_seamcalls(tdx_trace_level); + } + + return r; +} + +static const struct kernel_param_ops tdx_trace_ops = { + .set = trace_level_set, + .get = param_get_ulong, +}; + +module_param_cb(tdx_trace_level, &tdx_trace_ops, &tdx_trace_level, 0644); +MODULE_PARM_DESC(tdx_trace_level, "TDX module trace level"); + +/* TDX KeyID pool */ +static DEFINE_IDA(tdx_guest_keyid_pool); + +int tdx_guest_keyid_alloc(void) +{ + if (WARN_ON_ONCE(!tdx_guest_keyid_start || !tdx_nr_guest_keyids)) + return -EINVAL; + + /* The first keyID is reserved for the global key. */ + return ida_alloc_range(&tdx_guest_keyid_pool, tdx_guest_keyid_start + 1, + tdx_guest_keyid_start + tdx_nr_guest_keyids - 1, + GFP_KERNEL); +} +EXPORT_SYMBOL_GPL(tdx_guest_keyid_alloc); + +void tdx_guest_keyid_free(int keyid) +{ + /* keyid = 0 is reserved. */ + if (WARN_ON_ONCE(keyid <= 0)) + return; + + ida_free(&tdx_guest_keyid_pool, keyid); +} +EXPORT_SYMBOL_GPL(tdx_guest_keyid_free); + +/* + * Wrapper of __seamcall() to convert SEAMCALL leaf function error code + * to kernel error code. @seamcall_ret and @out contain the SEAMCALL + * leaf function return code and the additional output respectively if + * not NULL. + */ +static int __always_unused seamcall(u64 fn, struct tdx_module_args *args) +{ + u64 sret; + int cpu; + + /* Need a stable CPU id for printing error message */ + cpu = get_cpu(); + sret = __seamcall_ret(fn, args); + put_cpu(); + + switch (sret) { + case 0: + /* SEAMCALL was successful */ + return 0; + case TDX_SEAMCALL_VMFAILINVALID: + pr_err_once("module is not loaded.\n"); + return -ENODEV; + case TDX_SEAMCALL_GP: + pr_err_once("not enabled by BIOS.\n"); + return -ENODEV; + case TDX_SEAMCALL_UD: + pr_err_once("SEAMCALL failed: CPU %d is not in VMX operation.\n", + cpu); + return -EINVAL; + case TDX_INCORRECT_CPUID_VALUE: + pr_err_once("TDX module is outdated. Use v1.0.3 or newer.\n"); + return -ENODEV; + default: + pr_err_once("SEAMCALL failed: CPU %d: leaf %llu, error 0x%llx.\n", + cpu, fn, sret); + pr_err_once("additional output: rcx 0x%llx, rdx 0x%llx, r8 0x%llx, r9 0x%llx, r10 0x%llx, r11 0x%llx.\n", + args->rcx, args->rdx, args->r8, + args->r9, args->r10, args->r11); + return -EIO; + } +} + +void tdx_trace_seamcalls(u64 level) +{ + static bool debugconfig_supported = true; + + if (debugconfig_supported) { + struct tdx_module_args args = { + .rcx = DEBUGCONFIG_SET_TRACE_LEVEL, + .rdx = level, + }; + u64 err; + + err = __seamcall(SEAMCALL_TDDEBUGCONFIG, &args); + if (err) { + pr_info_once("TDDEBUGCONFIG isn't supported.\n"); + debugconfig_supported = false; + } + } +} +EXPORT_SYMBOL_GPL(tdx_trace_seamcalls); + +/* + * Do the module global initialization if not done yet. + * It's always called with interrupts and preemption disabled. + */ +static int try_init_module_global(void) +{ + struct tdx_module_args args = {}; + unsigned long flags; + int ret; + + /* + * The TDX module global initialization only needs to be done + * once on any cpu. + */ + raw_spin_lock_irqsave(&tdx_global_init_lock, flags); + + if (tdx_global_initialized) { + ret = 0; + goto out; + } + + ret = seamcall(TDH_SYS_INIT, &args); + if (!ret) + tdx_global_initialized = true; +out: + raw_spin_unlock_irqrestore(&tdx_global_init_lock, flags); + + return ret; +} + +/** + * tdx_cpu_enable - Enable TDX on local cpu + * + * Do one-time TDX module per-cpu initialization SEAMCALL (and TDX module + * global initialization SEAMCALL if not done) on local cpu to make this + * cpu be ready to run any other SEAMCALLs. + * + * Call this function with preemption disabled. + * + * Return 0 on success, otherwise errors. + */ +int tdx_cpu_enable(void) +{ + struct tdx_module_args args = {}; + int ret; + + if (!platform_tdx_enabled()) + return -ENODEV; + + lockdep_assert_preemption_disabled(); + + /* Already done */ + if (__this_cpu_read(tdx_lp_initialized)) + return 0; + + /* + * The TDX module global initialization is the very first step + * to enable TDX. Need to do it first (if hasn't been done) + * before the per-cpu initialization. + */ + ret = try_init_module_global(); + if (ret) + return ret; + + ret = seamcall(TDH_SYS_LP_INIT, &args); + if (ret) + return ret; + + __this_cpu_write(tdx_lp_initialized, true); + + return 0; +} +EXPORT_SYMBOL_GPL(tdx_cpu_enable); + +static void print_cmrs(struct cmr_info *cmr_array, int nr_cmrs) +{ + int i; + + for (i = 0; i < nr_cmrs; i++) { + struct cmr_info *cmr = &cmr_array[i]; + + /* + * The array of CMRs reported via TDH.SYS.INFO can + * contain tail empty CMRs. Don't print them. + */ + if (!cmr->size) + break; + + pr_info("CMR: [0x%llx, 0x%llx)\n", cmr->base, + cmr->base + cmr->size); + } +} + +static int __tdx_get_sysinfo(struct tdsysinfo_struct *sysinfo, + struct cmr_info *cmr_array) +{ + struct tdx_module_args args = { + .rcx = __pa(sysinfo), + .rdx = TDSYSINFO_STRUCT_SIZE, + .r8 = __pa(cmr_array), + .r9 = MAX_CMRS, + }; + int ret; + + ret = seamcall(TDH_SYS_INFO, &args); + if (ret) + return ret; + + ret = tdx_sysfs_init(); + if (ret) + return ret; + + pr_info("TDX module: attributes 0x%x, vendor_id 0x%x, major_version %u, minor_version %u, build_date %u, build_num %u", + sysinfo->attributes, sysinfo->vendor_id, + sysinfo->major_version, sysinfo->minor_version, + sysinfo->build_date, sysinfo->build_num); + + /* R9 contains the actual entries written to the CMR array. */ + print_cmrs(cmr_array, args.r9); + + return 0; +} + +static struct tdsysinfo_struct *sysinfo; + +const struct tdsysinfo_struct *tdx_get_sysinfo(void) +{ + const struct tdsysinfo_struct *r = NULL; + + mutex_lock(&tdx_module_lock); + if (tdx_module_status == TDX_MODULE_INITIALIZED) + r = sysinfo; + mutex_unlock(&tdx_module_lock); + return r; +} +EXPORT_SYMBOL_GPL(tdx_get_sysinfo); + +/* + * Add a memory region as a TDX memory block. The caller must make sure + * all memory regions are added in address ascending order and don't + * overlap. + */ +static int add_tdx_memblock(struct list_head *tmb_list, unsigned long start_pfn, + unsigned long end_pfn, int nid) +{ + struct tdx_memblock *tmb; + + tmb = kmalloc(sizeof(*tmb), GFP_KERNEL); + if (!tmb) + return -ENOMEM; + + INIT_LIST_HEAD(&tmb->list); + tmb->start_pfn = start_pfn; + tmb->end_pfn = end_pfn; + tmb->nid = nid; + + /* @tmb_list is protected by mem_hotplug_lock */ + list_add_tail(&tmb->list, tmb_list); + return 0; +} + +static void free_tdx_memlist(struct list_head *tmb_list) +{ + /* @tmb_list is protected by mem_hotplug_lock */ + while (!list_empty(tmb_list)) { + struct tdx_memblock *tmb = list_first_entry(tmb_list, + struct tdx_memblock, list); + + list_del(&tmb->list); + kfree(tmb); + } +} + +/* + * Ensure that all memblock memory regions are convertible to TDX + * memory. Once this has been established, stash the memblock + * ranges off in a secondary structure because memblock is modified + * in memory hotplug while TDX memory regions are fixed. + */ +static int build_tdx_memlist(struct list_head *tmb_list) +{ + unsigned long start_pfn, end_pfn; + int i, nid, ret; + + for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, &nid) { + /* + * The first 1MB is not reported as TDX convertible memory. + * Although the first 1MB is always reserved and won't end up + * to the page allocator, it is still in memblock's memory + * regions. Skip them manually to exclude them as TDX memory. + */ + start_pfn = max(start_pfn, PHYS_PFN(SZ_1M)); + if (start_pfn >= end_pfn) + continue; + + /* + * Add the memory regions as TDX memory. The regions in + * memblock has already guaranteed they are in address + * ascending order and don't overlap. + */ + ret = add_tdx_memblock(tmb_list, start_pfn, end_pfn, nid); + if (ret) + goto err; + } + + return 0; +err: + free_tdx_memlist(tmb_list); + return ret; +} + +/* Calculate the actual TDMR size */ +static int tdmr_size_single(u16 max_reserved_per_tdmr) +{ + int tdmr_sz; + + /* + * The actual size of TDMR depends on the maximum + * number of reserved areas. + */ + tdmr_sz = sizeof(struct tdmr_info); + tdmr_sz += sizeof(struct tdmr_reserved_area) * max_reserved_per_tdmr; + + return ALIGN(tdmr_sz, TDMR_INFO_ALIGNMENT); +} + +static int alloc_tdmr_list(struct tdmr_info_list *tdmr_list, + struct tdsysinfo_struct *sysinfo) +{ + size_t tdmr_sz, tdmr_array_sz; + void *tdmr_array; + + tdmr_sz = tdmr_size_single(sysinfo->max_reserved_per_tdmr); + tdmr_array_sz = tdmr_sz * sysinfo->max_tdmrs; + + /* + * To keep things simple, allocate all TDMRs together. + * The buffer needs to be physically contiguous to make + * sure each TDMR is physically contiguous. + */ + tdmr_array = alloc_pages_exact(tdmr_array_sz, + GFP_KERNEL | __GFP_ZERO); + if (!tdmr_array) + return -ENOMEM; + + tdmr_list->tdmrs = tdmr_array; + + /* + * Keep the size of TDMR to find the target TDMR + * at a given index in the TDMR list. + */ + tdmr_list->tdmr_sz = tdmr_sz; + tdmr_list->max_tdmrs = sysinfo->max_tdmrs; + tdmr_list->nr_consumed_tdmrs = 0; + + return 0; +} + +static void free_tdmr_list(struct tdmr_info_list *tdmr_list) +{ + free_pages_exact(tdmr_list->tdmrs, + tdmr_list->max_tdmrs * tdmr_list->tdmr_sz); +} + +/* Get the TDMR from the list at the given index. */ +static struct tdmr_info *tdmr_entry(struct tdmr_info_list *tdmr_list, + int idx) +{ + int tdmr_info_offset = tdmr_list->tdmr_sz * idx; + + return (void *)tdmr_list->tdmrs + tdmr_info_offset; +} + +#define TDMR_ALIGNMENT SZ_1G +#define TDMR_ALIGN_DOWN(_addr) ALIGN_DOWN((_addr), TDMR_ALIGNMENT) +#define TDMR_ALIGN_UP(_addr) ALIGN((_addr), TDMR_ALIGNMENT) + +static inline u64 tdmr_end(struct tdmr_info *tdmr) +{ + return tdmr->base + tdmr->size; +} + +/* + * Take the memory referenced in @tmb_list and populate the + * preallocated @tdmr_list, following all the special alignment + * and size rules for TDMR. + */ +static int fill_out_tdmrs(struct list_head *tmb_list, + struct tdmr_info_list *tdmr_list) +{ + struct tdx_memblock *tmb; + int tdmr_idx = 0; + + /* + * Loop over TDX memory regions and fill out TDMRs to cover them. + * To keep it simple, always try to use one TDMR to cover one + * memory region. + * + * In practice TDX supports at least 64 TDMRs. A 2-socket system + * typically only consumes less than 10 of those. This code is + * dumb and simple and may use more TMDRs than is strictly + * required. + */ + list_for_each_entry(tmb, tmb_list, list) { + struct tdmr_info *tdmr = tdmr_entry(tdmr_list, tdmr_idx); + u64 start, end; + + start = TDMR_ALIGN_DOWN(PFN_PHYS(tmb->start_pfn)); + end = TDMR_ALIGN_UP(PFN_PHYS(tmb->end_pfn)); + + /* + * A valid size indicates the current TDMR has already + * been filled out to cover the previous memory region(s). + */ + if (tdmr->size) { + /* + * Loop to the next if the current memory region + * has already been fully covered. + */ + if (end <= tdmr_end(tdmr)) + continue; + + /* Otherwise, skip the already covered part. */ + if (start < tdmr_end(tdmr)) + start = tdmr_end(tdmr); + + /* + * Create a new TDMR to cover the current memory + * region, or the remaining part of it. + */ + tdmr_idx++; + if (tdmr_idx >= tdmr_list->max_tdmrs) { + pr_warn("initialization failed: TDMRs exhausted.\n"); + return -ENOSPC; + } + + tdmr = tdmr_entry(tdmr_list, tdmr_idx); + } + + tdmr->base = start; + tdmr->size = end - start; + } + + /* @tdmr_idx is always the index of the last valid TDMR. */ + tdmr_list->nr_consumed_tdmrs = tdmr_idx + 1; + + /* + * Warn early that kernel is about to run out of TDMRs. + * + * This is an indication that TDMR allocation has to be + * reworked to be smarter to not run into an issue. + */ + if (tdmr_list->max_tdmrs - tdmr_list->nr_consumed_tdmrs < TDMR_NR_WARN) + pr_warn("consumed TDMRs reaching limit: %d used out of %d\n", + tdmr_list->nr_consumed_tdmrs, + tdmr_list->max_tdmrs); + + return 0; +} + +/* + * Calculate PAMT size given a TDMR and a page size. The returned + * PAMT size is always aligned up to 4K page boundary. + */ +static unsigned long tdmr_get_pamt_sz(struct tdmr_info *tdmr, int pgsz, + u16 pamt_entry_size) +{ + unsigned long pamt_sz, nr_pamt_entries; + + switch (pgsz) { + case TDX_PS_4K: + nr_pamt_entries = tdmr->size >> PAGE_SHIFT; + break; + case TDX_PS_2M: + nr_pamt_entries = tdmr->size >> PMD_SHIFT; + break; + case TDX_PS_1G: + nr_pamt_entries = tdmr->size >> PUD_SHIFT; + break; + default: + WARN_ON_ONCE(1); + return 0; + } + + pamt_sz = nr_pamt_entries * pamt_entry_size; + /* TDX requires PAMT size must be 4K aligned */ + pamt_sz = ALIGN(pamt_sz, PAGE_SIZE); + + return pamt_sz; +} + +/* + * Locate a NUMA node which should hold the allocation of the @tdmr + * PAMT. This node will have some memory covered by the TDMR. The + * relative amount of memory covered is not considered. + */ +static int tdmr_get_nid(struct tdmr_info *tdmr, struct list_head *tmb_list) +{ + struct tdx_memblock *tmb; + + /* + * A TDMR must cover at least part of one TMB. That TMB will end + * after the TDMR begins. But, that TMB may have started before + * the TDMR. Find the next 'tmb' that _ends_ after this TDMR + * begins. Ignore 'tmb' start addresses. They are irrelevant. + */ + list_for_each_entry(tmb, tmb_list, list) { + if (tmb->end_pfn > PHYS_PFN(tdmr->base)) + return tmb->nid; + } + + /* + * Fall back to allocating the TDMR's metadata from node 0 when + * no TDX memory block can be found. This should never happen + * since TDMRs originate from TDX memory blocks. + */ + pr_warn("TDMR [0x%llx, 0x%llx): unable to find local NUMA node for PAMT allocation, fallback to use node 0.\n", + tdmr->base, tdmr_end(tdmr)); + return 0; +} + +/* + * Allocate PAMTs from the local NUMA node of some memory in @tmb_list + * within @tdmr, and set up PAMTs for @tdmr. + */ +static int tdmr_set_up_pamt(struct tdmr_info *tdmr, + struct list_head *tmb_list, + u16 pamt_entry_size) +{ + unsigned long pamt_base[TDX_PS_NR]; + unsigned long pamt_size[TDX_PS_NR]; + unsigned long tdmr_pamt_base; + unsigned long tdmr_pamt_size; + struct page *pamt; + int pgsz, nid; + + nid = tdmr_get_nid(tdmr, tmb_list); + + /* + * Calculate the PAMT size for each TDX supported page size + * and the total PAMT size. + */ + tdmr_pamt_size = 0; + for (pgsz = TDX_PS_4K; pgsz < TDX_PS_NR ; pgsz++) { + pamt_size[pgsz] = tdmr_get_pamt_sz(tdmr, pgsz, + pamt_entry_size); + tdmr_pamt_size += pamt_size[pgsz]; + } + + /* + * Allocate one chunk of physically contiguous memory for all + * PAMTs. This helps minimize the PAMT's use of reserved areas + * in overlapped TDMRs. + */ + pamt = alloc_contig_pages(tdmr_pamt_size >> PAGE_SHIFT, GFP_KERNEL, + nid, &node_online_map); + if (!pamt) + return -ENOMEM; + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + set_memory_np((unsigned long)page_to_virt(pamt), + tdmr_pamt_size >> PAGE_SHIFT); + + /* + * Break the contiguous allocation back up into the + * individual PAMTs for each page size. + */ + tdmr_pamt_base = page_to_pfn(pamt) << PAGE_SHIFT; + for (pgsz = TDX_PS_4K; pgsz < TDX_PS_NR; pgsz++) { + pamt_base[pgsz] = tdmr_pamt_base; + tdmr_pamt_base += pamt_size[pgsz]; + } + + tdmr->pamt_4k_base = pamt_base[TDX_PS_4K]; + tdmr->pamt_4k_size = pamt_size[TDX_PS_4K]; + tdmr->pamt_2m_base = pamt_base[TDX_PS_2M]; + tdmr->pamt_2m_size = pamt_size[TDX_PS_2M]; + tdmr->pamt_1g_base = pamt_base[TDX_PS_1G]; + tdmr->pamt_1g_size = pamt_size[TDX_PS_1G]; + + return 0; +} + +static void tdmr_get_pamt(struct tdmr_info *tdmr, unsigned long *pamt_base, + unsigned long *pamt_size) +{ + unsigned long pamt_bs, pamt_sz; + + /* + * The PAMT was allocated in one contiguous unit. The 4K PAMT + * should always point to the beginning of that allocation. + */ + pamt_bs = tdmr->pamt_4k_base; + pamt_sz = tdmr->pamt_4k_size + tdmr->pamt_2m_size + tdmr->pamt_1g_size; + + WARN_ON_ONCE((pamt_bs & ~PAGE_MASK) || (pamt_sz & ~PAGE_MASK)); + + *pamt_base = pamt_bs; + *pamt_size = pamt_sz; +} + +static void tdmr_do_pamt_func(struct tdmr_info *tdmr, + void (*pamt_func)(unsigned long base, unsigned long size)) +{ + unsigned long pamt_base, pamt_size; + + tdmr_get_pamt(tdmr, &pamt_base, &pamt_size); + + /* Do nothing if PAMT hasn't been allocated for this TDMR */ + if (!pamt_size) + return; + + if (WARN_ON_ONCE(!pamt_base)) + return; + + (*pamt_func)(pamt_base, pamt_size); +} + +void pamt_free_contig_range(unsigned long pfn, unsigned long npages) +{ + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + set_memory_p((unsigned long)pfn_to_kaddr(pfn), npages); + free_contig_range(pfn, npages); +} + +static void tdmr_free_pamt(struct tdmr_info *tdmr) +{ + tdmr_do_pamt_func(tdmr, pamt_free_contig_range); +} + +static void tdmrs_free_pamt_all(struct tdmr_info_list *tdmr_list) +{ + int i; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) + tdmr_free_pamt(tdmr_entry(tdmr_list, i)); +} + +/* Allocate and set up PAMTs for all TDMRs */ +static int tdmrs_set_up_pamt_all(struct tdmr_info_list *tdmr_list, + struct list_head *tmb_list, + u16 pamt_entry_size) +{ + int i, ret = 0; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + ret = tdmr_set_up_pamt(tdmr_entry(tdmr_list, i), tmb_list, + pamt_entry_size); + if (ret) + goto err; + } + + return 0; +err: + tdmrs_free_pamt_all(tdmr_list); + return ret; +} + +static void set_tdx_pages_p(unsigned long pfn, unsigned long npages) +{ + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + set_memory_p((unsigned long)pfn_to_kaddr(pfn), npages); +} + +static int tdx_reboot_notifier(struct notifier_block *nb, + unsigned long action, + void *data) +{ + int i; + + for (i = 0; i < tdx_tdmr_list.nr_consumed_tdmrs; i++) + tdmr_do_pamt_func(tdmr_entry(&tdx_tdmr_list, i), set_tdx_pages_p); + + return NOTIFY_DONE; +} + +static struct notifier_block tdx_reboot_nb = { + .notifier_call = tdx_reboot_notifier, +}; + +/* + * Convert TDX private pages back to normal by using MOVDIR64B to + * clear these pages. Note this function doesn't flush cache of + * these TDX private pages. The caller should make sure of that. + */ +static void reset_tdx_pages(unsigned long base, unsigned long size) +{ + const void *zero_page = (const void *)page_address(ZERO_PAGE(0)); + unsigned long phys, end; + + if (system_state != SYSTEM_HALT && + system_state != SYSTEM_POWER_OFF && + system_state != SYSTEM_RESTART) + set_tdx_pages_p(base >> PAGE_SHIFT, size >> PAGE_SHIFT); + + end = base + size; + for (phys = base; phys < end; phys += 64) + movdir64b(__va(phys), zero_page); + + /* + * MOVDIR64B uses WC protocol. Use memory barrier to + * make sure any later user of these pages sees the + * updated data. + */ + mb(); +} + +static void tdmr_reset_pamt(struct tdmr_info *tdmr) +{ + tdmr_do_pamt_func(tdmr, reset_tdx_pages); +} + +static void tdmrs_reset_pamt_all(struct tdmr_info_list *tdmr_list) +{ + int i; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) + tdmr_reset_pamt(tdmr_entry(tdmr_list, i)); +} + +static unsigned long tdmrs_count_pamt_kb(struct tdmr_info_list *tdmr_list) +{ + unsigned long pamt_size = 0; + int i; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + unsigned long base, size; + + tdmr_get_pamt(tdmr_entry(tdmr_list, i), &base, &size); + pamt_size += size; + } + + return pamt_size / 1024; +} + +static int tdmr_add_rsvd_area(struct tdmr_info *tdmr, int *p_idx, u64 addr, + u64 size, u16 max_reserved_per_tdmr) +{ + struct tdmr_reserved_area *rsvd_areas = tdmr->reserved_areas; + int idx = *p_idx; + + /* Reserved area must be 4K aligned in offset and size */ + if (WARN_ON(addr & ~PAGE_MASK || size & ~PAGE_MASK)) + return -EINVAL; + + if (idx >= max_reserved_per_tdmr) { + pr_warn("initialization failed: TDMR [0x%llx, 0x%llx): reserved areas exhausted.\n", + tdmr->base, tdmr_end(tdmr)); + return -ENOSPC; + } + + /* + * Consume one reserved area per call. Make no effort to + * optimize or reduce the number of reserved areas which are + * consumed by contiguous reserved areas, for instance. + */ + rsvd_areas[idx].offset = addr - tdmr->base; + rsvd_areas[idx].size = size; + + *p_idx = idx + 1; + + return 0; +} + +/* + * Go through @tmb_list to find holes between memory areas. If any of + * those holes fall within @tdmr, set up a TDMR reserved area to cover + * the hole. + */ +static int tdmr_populate_rsvd_holes(struct list_head *tmb_list, + struct tdmr_info *tdmr, + int *rsvd_idx, + u16 max_reserved_per_tdmr) +{ + struct tdx_memblock *tmb; + u64 prev_end; + int ret; + + /* + * Start looking for reserved blocks at the + * beginning of the TDMR. + */ + prev_end = tdmr->base; + list_for_each_entry(tmb, tmb_list, list) { + u64 start, end; + + start = PFN_PHYS(tmb->start_pfn); + end = PFN_PHYS(tmb->end_pfn); + + /* Break if this region is after the TDMR */ + if (start >= tdmr_end(tdmr)) + break; + + /* Exclude regions before this TDMR */ + if (end < tdmr->base) + continue; + + /* + * Skip over memory areas that + * have already been dealt with. + */ + if (start <= prev_end) { + prev_end = end; + continue; + } + + /* Add the hole before this region */ + ret = tdmr_add_rsvd_area(tdmr, rsvd_idx, prev_end, + start - prev_end, + max_reserved_per_tdmr); + if (ret) + return ret; + + prev_end = end; + } + + /* Add the hole after the last region if it exists. */ + if (prev_end < tdmr_end(tdmr)) { + ret = tdmr_add_rsvd_area(tdmr, rsvd_idx, prev_end, + tdmr_end(tdmr) - prev_end, + max_reserved_per_tdmr); + if (ret) + return ret; + } + + return 0; +} + +/* + * Go through @tdmr_list to find all PAMTs. If any of those PAMTs + * overlaps with @tdmr, set up a TDMR reserved area to cover the + * overlapping part. + */ +static int tdmr_populate_rsvd_pamts(struct tdmr_info_list *tdmr_list, + struct tdmr_info *tdmr, + int *rsvd_idx, + u16 max_reserved_per_tdmr) +{ + int i, ret; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + struct tdmr_info *tmp = tdmr_entry(tdmr_list, i); + unsigned long pamt_base, pamt_size, pamt_end; + + tdmr_get_pamt(tmp, &pamt_base, &pamt_size); + /* Each TDMR must already have PAMT allocated */ + WARN_ON_ONCE(!pamt_size|| !pamt_base); + + pamt_end = pamt_base + pamt_size; + /* Skip PAMTs outside of the given TDMR */ + if ((pamt_end <= tdmr->base) || + (pamt_base >= tdmr_end(tdmr))) + continue; + + /* Only mark the part within the TDMR as reserved */ + if (pamt_base < tdmr->base) + pamt_base = tdmr->base; + if (pamt_end > tdmr_end(tdmr)) + pamt_end = tdmr_end(tdmr); + + ret = tdmr_add_rsvd_area(tdmr, rsvd_idx, pamt_base, + pamt_end - pamt_base, + max_reserved_per_tdmr); + if (ret) + return ret; + } + + return 0; +} + +/* Compare function called by sort() for TDMR reserved areas */ +static int rsvd_area_cmp_func(const void *a, const void *b) +{ + struct tdmr_reserved_area *r1 = (struct tdmr_reserved_area *)a; + struct tdmr_reserved_area *r2 = (struct tdmr_reserved_area *)b; + + if (r1->offset + r1->size <= r2->offset) + return -1; + if (r1->offset >= r2->offset + r2->size) + return 1; + + /* Reserved areas cannot overlap. The caller must guarantee. */ + WARN_ON_ONCE(1); + return -1; +} + +/* + * Populate reserved areas for the given @tdmr, including memory holes + * (via @tmb_list) and PAMTs (via @tdmr_list). + */ +static int tdmr_populate_rsvd_areas(struct tdmr_info *tdmr, + struct list_head *tmb_list, + struct tdmr_info_list *tdmr_list, + u16 max_reserved_per_tdmr) +{ + int ret, rsvd_idx = 0; + + ret = tdmr_populate_rsvd_holes(tmb_list, tdmr, &rsvd_idx, + max_reserved_per_tdmr); + if (ret) + return ret; + + ret = tdmr_populate_rsvd_pamts(tdmr_list, tdmr, &rsvd_idx, + max_reserved_per_tdmr); + if (ret) + return ret; + + /* TDX requires reserved areas listed in address ascending order */ + sort(tdmr->reserved_areas, rsvd_idx, sizeof(struct tdmr_reserved_area), + rsvd_area_cmp_func, NULL); + + return 0; +} + +/* + * Populate reserved areas for all TDMRs in @tdmr_list, including memory + * holes (via @tmb_list) and PAMTs. + */ +static int tdmrs_populate_rsvd_areas_all(struct tdmr_info_list *tdmr_list, + struct list_head *tmb_list, + u16 max_reserved_per_tdmr) +{ + int i; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + int ret; + + ret = tdmr_populate_rsvd_areas(tdmr_entry(tdmr_list, i), + tmb_list, tdmr_list, max_reserved_per_tdmr); + if (ret) + return ret; + } + + return 0; +} + +/* + * Construct a list of TDMRs on the preallocated space in @tdmr_list + * to cover all TDX memory regions in @tmb_list based on the TDX module + * information in @sysinfo. + */ +static int construct_tdmrs(struct list_head *tmb_list, + struct tdmr_info_list *tdmr_list, + struct tdsysinfo_struct *sysinfo) +{ + int ret; + + ret = fill_out_tdmrs(tmb_list, tdmr_list); + if (ret) + return ret; + + ret = tdmrs_set_up_pamt_all(tdmr_list, tmb_list, + sysinfo->pamt_entry_size); + if (ret) + return ret; + + ret = tdmrs_populate_rsvd_areas_all(tdmr_list, tmb_list, + sysinfo->max_reserved_per_tdmr); + if (ret) + tdmrs_free_pamt_all(tdmr_list); + + return ret; +} + +static int config_tdx_module(struct tdmr_info_list *tdmr_list, u64 global_keyid) +{ + struct tdx_module_args args = {}; + u64 *tdmr_pa_array; + size_t array_sz; + int i, ret; + + /* + * TDMRs are passed to the TDX module via an array of physical + * addresses of each TDMR. The array itself also has certain + * alignment requirement. + */ + array_sz = tdmr_list->nr_consumed_tdmrs * sizeof(u64); + array_sz = roundup_pow_of_two(array_sz); + if (array_sz < TDMR_INFO_PA_ARRAY_ALIGNMENT) + array_sz = TDMR_INFO_PA_ARRAY_ALIGNMENT; + + tdmr_pa_array = kzalloc(array_sz, GFP_KERNEL); + if (!tdmr_pa_array) + return -ENOMEM; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) + tdmr_pa_array[i] = __pa(tdmr_entry(tdmr_list, i)); + + args.rcx = __pa(tdmr_pa_array); + args.rdx = tdmr_list->nr_consumed_tdmrs; + args.r8 = global_keyid; + ret = seamcall(TDH_SYS_CONFIG, &args); + + /* Free the array as it is not required anymore. */ + kfree(tdmr_pa_array); + + return ret; +} + +static int do_global_key_config(void *data) +{ + struct tdx_module_args args = {}; + + /* + * TDH.SYS.KEY.CONFIG may fail with entropy error (which is a + * recoverable error). Assume this is exceedingly rare and + * just return error if encountered instead of retrying. + */ + return seamcall(TDH_SYS_KEY_CONFIG, &args); +} + +/* + * Attempt to configure the global KeyID on all physical packages. + * + * This requires running code on at least one CPU in each package. If a + * package has no online CPUs, that code will not run and TDX module + * initialization (TDMR initialization) will fail. + * + * This code takes no affirmative steps to online CPUs. Callers (aka. + * KVM) can ensure success by ensuring sufficient CPUs are online for + * this to succeed. + */ +static int config_global_keyid(void) +{ + cpumask_var_t packages; + int cpu, ret = -EINVAL; + + if (!zalloc_cpumask_var(&packages, GFP_KERNEL)) + return -ENOMEM; + + for_each_online_cpu(cpu) { + if (cpumask_test_and_set_cpu(topology_physical_package_id(cpu), + packages)) + continue; + + /* + * TDH.SYS.KEY.CONFIG cannot run concurrently on + * different cpus, so just do it one by one. + */ + ret = smp_call_on_cpu(cpu, do_global_key_config, NULL, true); + if (ret) + break; + } + + free_cpumask_var(packages); + return ret; +} + +static int init_tdmr(struct tdmr_info *tdmr) +{ + u64 next; + + /* + * Initializing a TDMR can be time consuming. To avoid long + * SEAMCALLs, the TDX module may only initialize a part of the + * TDMR in each call. + */ + do { + struct tdx_module_args args = { + .rcx = tdmr->base, + }; + int ret; + + ret = seamcall(TDH_SYS_TDMR_INIT, &args); + if (ret) + return ret; + /* + * RDX contains 'next-to-initialize' address if + * TDH.SYS.TDMR.INIT did not fully complete and + * should be retried. + */ + next = args.rdx; + cond_resched(); + /* Keep making SEAMCALLs until the TDMR is done */ + } while (next < tdmr->base + tdmr->size); + + return 0; +} + +static int init_tdmrs(struct tdmr_info_list *tdmr_list) +{ + int i; + + /* + * This operation is costly. It can be parallelized, + * but keep it simple for now. + */ + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + int ret; + + ret = init_tdmr(tdmr_entry(tdmr_list, i)); + if (ret) + return ret; + } + + return 0; +} + +static int init_tdx_module(void) +{ + struct cmr_info *cmr_array; + int ret; + + /* + * Get the TDSYSINFO_STRUCT and CMRs from the TDX module. + * + * The buffers of the TDSYSINFO_STRUCT and the CMR array passed + * to the TDX module must be 1024-bytes and 512-bytes aligned + * respectively. Allocate one page to accommodate them both and + * also meet those alignment requirements. + */ + sysinfo = (struct tdsysinfo_struct *)__get_free_page(GFP_KERNEL); + if (!sysinfo) + return -ENOMEM; + cmr_array = (struct cmr_info *)((unsigned long)sysinfo + PAGE_SIZE / 2); + + BUILD_BUG_ON(PAGE_SIZE / 2 < TDSYSINFO_STRUCT_SIZE); + BUILD_BUG_ON(PAGE_SIZE / 2 < sizeof(struct cmr_info) * MAX_CMRS); + + ret = __tdx_get_sysinfo(sysinfo, cmr_array); + if (ret) + goto out; + + /* TDX seamcall trace is supported only with debug build. */ + if (sysinfo->attributes & TDSYSINFO_ATTRIBUTES_DEBUG) { + if (trace_boot_seamcalls) + tdx_trace_seamcalls(DEBUGCONFIG_TRACE_ALL); + else + tdx_trace_seamcalls(tdx_trace_level); + } + + /* + * To keep things simple, assume that all TDX-protected memory + * will come from the page allocator. Make sure all pages in the + * page allocator are TDX-usable memory. + * + * Build the list of "TDX-usable" memory regions which cover all + * pages in the page allocator to guarantee that. Do it while + * holding mem_hotplug_lock read-lock as the memory hotplug code + * path reads the @tdx_memlist to reject any new memory. + */ + get_online_mems(); + + ret = build_tdx_memlist(&tdx_memlist); + if (ret) + goto out_put_tdxmem; + + /* Allocate enough space for constructing TDMRs */ + ret = alloc_tdmr_list(&tdx_tdmr_list, sysinfo); + if (ret) + goto out_free_tdxmem; + + /* Cover all TDX-usable memory regions in TDMRs */ + ret = construct_tdmrs(&tdx_memlist, &tdx_tdmr_list, sysinfo); + if (ret) + goto out_free_tdmrs; + + /* Pass the TDMRs and the global KeyID to the TDX module */ + ret = config_tdx_module(&tdx_tdmr_list, tdx_global_keyid); + if (ret) + goto out_free_pamts; + + /* + * Hardware doesn't guarantee cache coherency across different + * KeyIDs. The kernel needs to flush PAMT's dirty cachelines + * (associated with KeyID 0) before the TDX module can use the + * global KeyID to access the PAMT. Given PAMTs are potentially + * large (~1/256th of system RAM), just use WBINVD on all cpus + * to flush the cache. + */ + wbinvd_on_all_cpus(); + + /* + * Starting from this point the system may have TDX private + * memory. Make it globally visible so tdx_reset_memory() only + * reads TDMRs/PAMTs when they are stable. + * + * Note using atomic_inc_return() to provide the explicit memory + * ordering isn't mandatory here as the WBINVD above already + * does that. Compiler barrier isn't needed here either. + */ + atomic_inc_return(&tdx_may_has_private_mem); + + /* Config the key of global KeyID on all packages */ + ret = config_global_keyid(); + if (ret) + goto out_reset_pamts; + + /* Initialize TDMRs to complete the TDX module initialization */ + ret = init_tdmrs(&tdx_tdmr_list); + if (ret) + goto out_reset_pamts; + + pr_info("%lu KBs allocated for PAMT.\n", + tdmrs_count_pamt_kb(&tdx_tdmr_list)); + + /* + * @tdx_memlist is written here and read at memory hotplug time. + * Lock out memory hotplug code while building it. + */ + put_online_mems(); + + return 0; +out_reset_pamts: + /* + * Part of PAMTs may already have been initialized by the + * TDX module. Flush cache before returning PAMTs back + * to the kernel. + */ + wbinvd_on_all_cpus(); + /* + * According to the TDX hardware spec, if the platform + * doesn't have the "partial write machine check" + * erratum, any kernel read/write will never cause #MC + * in kernel space, thus it's OK to not convert PAMTs + * back to normal. But do the conversion anyway here + * as suggested by the TDX spec. + */ + tdmrs_reset_pamt_all(&tdx_tdmr_list); + /* + * No more TDX private pages now, and PAMTs/TDMRs are + * going to be freed. Make this globally visible so + * tdx_reset_memory() can read stable TDMRs/PAMTs. + * + * Note atomic_dec_return(), which is an atomic RMW with + * return value, always enforces the memory barrier. + */ + atomic_dec_return(&tdx_may_has_private_mem); +out_free_pamts: + tdmrs_free_pamt_all(&tdx_tdmr_list); +out_free_tdmrs: + free_tdmr_list(&tdx_tdmr_list); +out_free_tdxmem: + free_tdx_memlist(&tdx_memlist); +out_put_tdxmem: + put_online_mems(); +out: + free_page((unsigned long)sysinfo); + sysinfo = NULL; + return ret; +} + +static int __tdx_enable(void) +{ + int ret; + + ret = init_tdx_module(); + if (ret) { + pr_err("module initialization failed (%d)\n", ret); + tdx_module_status = TDX_MODULE_ERROR; + return ret; + } + + pr_info("module initialized.\n"); + tdx_module_status = TDX_MODULE_INITIALIZED; + + return 0; +} + +/** + * tdx_enable - Enable TDX module to make it ready to run TDX guests + * + * This function assumes the caller has: 1) held read lock of CPU hotplug + * lock to prevent any new cpu from becoming online; 2) done both VMXON + * and tdx_cpu_enable() on all online cpus. + * + * This function requires there's at least one online cpu for each CPU + * package to succeed. + * + * This function can be called in parallel by multiple callers. + * + * Return 0 if TDX is enabled successfully, otherwise error. + */ +int tdx_enable(void) +{ + int ret; + + if (!platform_tdx_enabled()) + return -ENODEV; + + lockdep_assert_cpus_held(); + + mutex_lock(&tdx_module_lock); + + switch (tdx_module_status) { + case TDX_MODULE_UNKNOWN: + ret = __tdx_enable(); + break; + case TDX_MODULE_INITIALIZED: + /* Already initialized, great, tell the caller. */ + ret = 0; + break; + default: + /* Failed to initialize in the previous attempts */ + ret = -EINVAL; + break; + } + + mutex_unlock(&tdx_module_lock); + + return ret; +} +EXPORT_SYMBOL_GPL(tdx_enable); + +/* + * Convert TDX private pages back to normal on platforms with + * "partial write machine check" erratum. + * + * Called from machine_kexec() before booting to the new kernel. + */ +void tdx_reset_memory(void) +{ + if (!platform_tdx_enabled()) + return; + + /* + * Kernel read/write to TDX private memory doesn't + * cause machine check on hardware w/o this erratum. + */ + if (!boot_cpu_has_bug(X86_BUG_TDX_PW_MCE)) + return; + + /* Called from kexec() when only rebooting cpu is alive */ + WARN_ON_ONCE(num_online_cpus() != 1); + + if (!atomic_read(&tdx_may_has_private_mem)) + return; + + /* + * Ideally it's better to cover all types of TDX private pages, + * but there's no existing infrastructure to tell whether a page + * is TDX private memory or not. Using SEAMCALL to query TDX + * module isn't feasible either because: 1) VMX has been turned + * off by reaching here so SEAMCALL cannot be made; 2) Even + * SEAMCALL can be made the result from TDX module may not be + * accurate (e.g., remote CPU can be stopped while the kernel + * is in the middle of reclaiming one TDX private page and doing + * MOVDIR64B). + * + * One solution could be just converting all memory pages, but + * this may bring non-trivial latency on large memory systems + * (especially when the number of TDX private pages is small). + * So even with this temporary solution, eventually the kernel + * should only convert TDX private pages. + * + * Also, not all pages are mapped as writable in direct mapping, + * thus it's problematic to do so. It can be done by switching + * to the identical mapping table for kexec() or a new page table + * which maps all pages as writable, but the complexity looks + * overkill. + * + * Thus instead of doing something dramatic to convert all pages, + * only convert PAMTs as for now TDX private pages can only be + * PAMT. + * + * All other cpus are already dead. TDMRs/PAMTs are stable when + * @tdx_may_has_private_mem reads true. + */ + tdmrs_reset_pamt_all(&tdx_tdmr_list); +} + +static bool is_pamt_page(unsigned long phys) +{ + struct tdmr_info_list *tdmr_list = &tdx_tdmr_list; + int i; + + /* + * This function is called from #MC handler, and theoretically + * it could run in parallel with the TDX module initialization + * on other logical cpus. But it's not OK to hold mutex here + * so just blindly check module status to make sure PAMTs/TDMRs + * are stable to access. + * + * This may return inaccurate result in rare cases, e.g., when + * #MC happens on a PAMT page during module initialization, but + * this is fine as #MC handler doesn't need a 100% accurate + * result. + */ + if (tdx_module_status != TDX_MODULE_INITIALIZED) + return false; + + for (i = 0; i < tdmr_list->nr_consumed_tdmrs; i++) { + unsigned long base, size; + + tdmr_get_pamt(tdmr_entry(tdmr_list, i), &base, &size); + + if (phys >= base && phys < (base + size)) + return true; + } + + return false; +} + +/* + * Return whether the memory page at the given physical address is TDX + * private memory or not. Called from #MC handler do_machine_check(). + * + * Note this function may not return an accurate result in rare cases. + * This is fine as the #MC handler doesn't need a 100% accurate result, + * because it cannot distinguish #MC between software bug and real + * hardware error anyway. + */ +bool tdx_is_private_mem(unsigned long phys) +{ + struct tdx_module_args args = { + .rcx = phys & PAGE_MASK, + }; + u64 sret; + + if (!platform_tdx_enabled()) + return false; + + /* Get page type from the TDX module */ + sret = __seamcall_ret(TDH_PHYMEM_PAGE_RDMD, &args); + /* + * Handle the case that CPU isn't in VMX operation. + * + * KVM guarantees no VM is running (thus no TDX guest) + * when there's any online CPU isn't in VMX operation. + * This means there will be no TDX guest private memory + * and Secure-EPT pages. However the TDX module may have + * been initialized and the memory page could be PAMT. + */ + if (sret == TDX_SEAMCALL_UD) + return is_pamt_page(phys); + + /* + * Any other failure means: + * + * 1) TDX module not loaded; or + * 2) Memory page isn't managed by the TDX module. + * + * In either case, the memory page cannot be a TDX + * private page. + */ + if (sret) + return false; + + /* + * SEAMCALL was successful -- read page type (via RCX): + * + * - PT_NDA: Page is not used by the TDX module + * - PT_RSVD: Reserved for Non-TDX use + * - Others: Page is used by the TDX module + * + * Note PAMT pages are marked as PT_RSVD but they are also TDX + * private memory. + * + * Note: Even page type is PT_NDA, the memory page could still + * be associated with TDX private KeyID if the kernel hasn't + * explicitly used MOVDIR64B to clear the page. Assume KVM + * always does that after reclaiming any private page from TDX + * gusets. + */ + switch (args.rcx) { + case PT_NDA: + return false; + case PT_RSVD: + return is_pamt_page(phys); + default: + return true; + } +} + +static int __init record_keyid_partitioning(u32 *tdx_keyid_start, + u32 *nr_tdx_keyids) +{ + u32 _nr_mktme_keyids, _tdx_keyid_start, _nr_tdx_keyids; + int ret; + + /* + * IA32_MKTME_KEYID_PARTIONING: + * Bit [31:0]: Number of MKTME KeyIDs. + * Bit [63:32]: Number of TDX private KeyIDs. + */ + ret = rdmsr_safe(MSR_IA32_MKTME_KEYID_PARTITIONING, &_nr_mktme_keyids, + &_nr_tdx_keyids); + if (ret) + return -ENODEV; + + if (!_nr_tdx_keyids) + return -ENODEV; + + /* TDX KeyIDs start after the last MKTME KeyID. */ + _tdx_keyid_start = _nr_mktme_keyids + 1; + + *tdx_keyid_start = _tdx_keyid_start; + *nr_tdx_keyids = _nr_tdx_keyids; + + return 0; +} + +static bool is_tdx_memory(unsigned long start_pfn, unsigned long end_pfn) +{ + struct tdx_memblock *tmb; + + /* + * This check assumes that the start_pfn<->end_pfn range does not + * cross multiple @tdx_memlist entries. A single memory online + * event across multiple memblocks (from which @tdx_memlist + * entries are derived at the time of module initialization) is + * not possible. This is because memory offline/online is done + * on granularity of 'struct memory_block', and the hotpluggable + * memory region (one memblock) must be multiple of memory_block. + */ + list_for_each_entry(tmb, &tdx_memlist, list) { + if (start_pfn >= tmb->start_pfn && end_pfn <= tmb->end_pfn) + return true; + } + return false; +} + +static int tdx_memory_notifier(struct notifier_block *nb, unsigned long action, + void *v) +{ + struct memory_notify *mn = v; + + if (action != MEM_GOING_ONLINE) + return NOTIFY_OK; + + /* + * Empty list means TDX isn't enabled. Allow any memory + * to go online. + */ + if (list_empty(&tdx_memlist)) + return NOTIFY_OK; + + /* + * The TDX memory configuration is static and can not be + * changed. Reject onlining any memory which is outside of + * the static configuration whether it supports TDX or not. + */ + return is_tdx_memory(mn->start_pfn, mn->start_pfn + mn->nr_pages) ? + NOTIFY_OK : NOTIFY_BAD; +} + +static struct notifier_block tdx_memory_nb = { + .notifier_call = tdx_memory_notifier, +}; + +static int __init tdx_init(void) +{ + u32 tdx_keyid_start, nr_tdx_keyids; + int err; + + err = record_keyid_partitioning(&tdx_keyid_start, &nr_tdx_keyids); + if (err) + return err; + + pr_info("BIOS enabled: private KeyID range [%u, %u)\n", + tdx_keyid_start, tdx_keyid_start + nr_tdx_keyids); + + /* + * The TDX module itself requires one 'global KeyID' to protect + * its metadata. If there's only one TDX KeyID, there won't be + * any left for TDX guests thus there's no point to enable TDX + * at all. + */ + if (nr_tdx_keyids < 2) { + pr_err("initialization failed: too few private KeyIDs available.\n"); + return -ENODEV; + } + + err = register_memory_notifier(&tdx_memory_nb); + if (err) { + pr_info("initialization failed: register_memory_notifier() failed (%d)\n", + err); + return -ENODEV; + } + + /* + * Just use the first TDX KeyID as the 'global KeyID' and + * leave the rest for TDX guests. + */ + tdx_global_keyid = tdx_keyid_start; + tdx_guest_keyid_start = tdx_keyid_start + 1; + tdx_nr_guest_keyids = nr_tdx_keyids - 1; + + if (boot_cpu_has_bug(X86_BUG_TDX_PW_MCE)) { + /* + * Because tdx_memory_shutdown() will access PAMT with movdir64b, + * make the PAMT accesible that requires TLB flush. TLB + * shootdown requires SMP context. memory_shutdown context + * isn't such context. Do it early with notifier. + */ + if (IS_ENABLED(CONFIG_INTEL_TDX_HOST_DEBUG_MEMORY_CORRUPT)) + register_reboot_notifier(&tdx_reboot_nb); + } + + return 0; +} +early_initcall(tdx_init); + +/* Return whether the BIOS has enabled TDX */ +bool platform_tdx_enabled(void) +{ + return !!tdx_global_keyid; +} + +#ifdef CONFIG_SYSFS + +static struct kobject *tdx_kobj; +static struct kobject *tdx_module_kobj; +static struct kobject *tdx_metadata_kobj; + +static ssize_t tdx_nr_guest_keyids_show(struct kobject *kobj, + struct kobj_attribute *attr, char *buf) +{ + return sprintf(buf, "0x%08x", tdx_nr_guest_keyids); +} + +static struct kobj_attribute tdx_nr_guest_keyids_attr = { + .attr = { + .name = "nr_guest_keyids", + .mode = 0444 + }, + .show = tdx_nr_guest_keyids_show, +}; + +static ssize_t tdx_module_status_show(struct kobject *kobj, struct kobj_attribute *attr, char *buf) +{ + static const char * const names[] = { + [TDX_MODULE_UNKNOWN] = "unknown", + [TDX_MODULE_INITIALIZED] = "initialized", + [TDX_MODULE_ERROR] = "error", + }; + const char *status = "unknown"; + + mutex_lock(&tdx_module_lock); + if (tdx_module_status < ARRAY_SIZE(names)) + status = names[tdx_module_status]; + mutex_unlock(&tdx_module_lock); + + return sprintf(buf, "%s", status); +} + +static struct kobj_attribute tdx_module_status_attr = { + .attr = { + .name = "status", + .mode = 0444 + }, + .show = tdx_module_status_show, +}; + +#define TDX_METADATA_ATTR(_name, field_id_name, _size) \ +static struct bin_attribute tdx_metadata_ ## _name = { \ + .attr = { \ + .name = field_id_name, \ + .mode = 0444, \ + }, \ + .size = _size, \ + .read = tdx_metadata_ ## _name ## _show, \ +} + +#define TDX_METADATA_ATTR_SHOW(_name, field_id_name) \ +static ssize_t tdx_metadata_ ## _name ## _show(struct file *filp, struct kobject *kobj, \ + struct bin_attribute *bin_attr, \ + char *buf, loff_t offset, size_t count) \ +{ \ + return memory_read_from_buffer(buf, count, &offset, \ + &sysinfo->_name, \ + sizeof(sysinfo->_name)); \ +} \ +TDX_METADATA_ATTR(_name, field_id_name, sizeof_field(struct tdsysinfo_struct, _name)) + +TDX_METADATA_ATTR_SHOW(attributes_fixed0, TDX_METADATA_ATTRIBUTES_FIXED0_NAME); +TDX_METADATA_ATTR_SHOW(attributes_fixed1, TDX_METADATA_ATTRIBUTES_FIXED1_NAME); +TDX_METADATA_ATTR_SHOW(xfam_fixed0, TDX_METADATA_XFAM_FIXED0_NAME); +TDX_METADATA_ATTR_SHOW(xfam_fixed1, TDX_METADATA_XFAM_FIXED1_NAME); + +static ssize_t tdx_metadata_num_cpuid_config_show(struct file *filp, struct kobject *kobj, + struct bin_attribute *bin_attr, + char *buf, loff_t offset, size_t count) +{ + /* + * Although tdsysinfo_struct.num_cpuid_config is defined as u32 for + * alignment, TDX 1.5 defines metadata NUM_CONFIG_CPUID as u16. + */ + u16 tmp = (u16)sysinfo->num_cpuid_config; + + WARN_ON_ONCE(tmp != sysinfo->num_cpuid_config); + return memory_read_from_buffer(buf, count, &offset, &tmp, sizeof(tmp)); +} +TDX_METADATA_ATTR(num_cpuid_config, TDX_METADATA_NUM_CPUID_CONFIG_NAME, sizeof(u16)); + +static ssize_t tdx_metadata_cpuid_leaves_show(struct file *filp, struct kobject *kobj, + struct bin_attribute *bin_attr, char *buf, + loff_t offset, size_t count) +{ + ssize_t r; + struct tdx_cpuid_config_leaf *tmp; + u32 i; + + tmp = kmalloc(bin_attr->size, GFP_KERNEL); + if (!tmp) + return -ENOMEM; + + for (i = 0; i < sysinfo->num_cpuid_config; i++) { + struct tdx_cpuid_config *c = &sysinfo->cpuid_configs[i]; + struct tdx_cpuid_config_leaf *leaf = (struct tdx_cpuid_config_leaf *)c; + + memcpy(tmp + i, leaf, sizeof(*leaf)); + } + + r = memory_read_from_buffer(buf, count, &offset, tmp, bin_attr->size); + kfree(tmp); + return r; +} + +TDX_METADATA_ATTR(cpuid_leaves, TDX_METADATA_CPUID_LEAVES_NAME, 0); + +static ssize_t tdx_metadata_cpuid_values_show(struct file *filp, struct kobject *kobj, + struct bin_attribute *bin_attr, char *buf, + loff_t offset, size_t count) +{ + struct tdx_cpuid_config_value *tmp; + ssize_t r; + u32 i; + + tmp = kmalloc(bin_attr->size, GFP_KERNEL); + if (!tmp) + return -ENOMEM; + + for (i = 0; i < sysinfo->num_cpuid_config; i++) { + struct tdx_cpuid_config *c = &sysinfo->cpuid_configs[i]; + struct tdx_cpuid_config_value *value = (struct tdx_cpuid_config_value *)&c->eax; + + memcpy(tmp + i, value, sizeof(*value)); + } + + r = memory_read_from_buffer(buf, count, &offset, tmp, bin_attr->size); + kfree(tmp); + return r; +} + +TDX_METADATA_ATTR(cpuid_values, TDX_METADATA_CPUID_VALUES_NAME, 0); + +static struct bin_attribute *tdx_metadata_attrs[] = { + &tdx_metadata_attributes_fixed0, + &tdx_metadata_attributes_fixed1, + &tdx_metadata_xfam_fixed0, + &tdx_metadata_xfam_fixed1, + &tdx_metadata_num_cpuid_config, + &tdx_metadata_cpuid_leaves, + &tdx_metadata_cpuid_values, + NULL, +}; + +static const struct attribute_group tdx_metadata_attr_group = { + .bin_attrs = tdx_metadata_attrs, +}; + +#define TDX_MODULE_ATTR_SHOW(_name, fmt) \ +static ssize_t tdx_module_ ## _name ## _show( \ + struct kobject *kobj, struct kobj_attribute *attr, char *buf) \ +{ \ + return sprintf(buf, fmt, sysinfo->_name); \ +} \ +static struct kobj_attribute tdx_module_##_name = { \ + .attr = { .name = __stringify(_name), .mode = 0444 }, \ + .show = tdx_module_ ## _name ## _show, \ +} + +TDX_MODULE_ATTR_SHOW(attributes, "0x%08x"); +TDX_MODULE_ATTR_SHOW(vendor_id, "0x%08x"); +TDX_MODULE_ATTR_SHOW(build_date, "%d"); +TDX_MODULE_ATTR_SHOW(build_num, "0x%08x"); +TDX_MODULE_ATTR_SHOW(minor_version, "0x%08x"); +TDX_MODULE_ATTR_SHOW(major_version, "0x%08x"); + +static struct attribute *tdx_module_attrs[] = { + &tdx_module_attributes.attr, + &tdx_module_vendor_id.attr, + &tdx_module_build_date.attr, + &tdx_module_build_num.attr, + &tdx_module_minor_version.attr, + &tdx_module_major_version.attr, + NULL, +}; + +static const struct attribute_group tdx_module_attr_group = { + .attrs = tdx_module_attrs, +}; + +static int tdx_sysfs_init(void) +{ + int ret; + + if (!sysinfo) + return 0; + + tdx_kobj = kobject_create_and_add("tdx", firmware_kobj); + if (!tdx_kobj) { + pr_err("kobject_create_and_add tdx failed\n"); + return -EINVAL; + } + + ret = sysfs_create_file(tdx_kobj, &tdx_nr_guest_keyids_attr.attr); + if (ret) { + pr_err("Sysfs exporting seam nr_keyids failed %d\n", ret); + return ret; + } + + tdx_module_kobj = kobject_create_and_add("tdx_module", tdx_kobj); + if (!tdx_module_kobj) { + pr_err("kobject_create_and_add tdx_module failed\n"); + return -EINVAL; + } + + ret = sysfs_create_file(tdx_module_kobj, &tdx_module_status_attr.attr); + if (ret) { + pr_err("Sysfs exporting tdx module status failed %d\n", ret); + return ret; + } + + tdx_metadata_kobj = kobject_create_and_add("metadata", tdx_module_kobj); + if (!tdx_metadata_kobj) { + pr_err("Sysfs exporting tdx global metadata failed %d\n", ret); + return -EINVAL; + } + + ret = sysfs_create_group(tdx_module_kobj, &tdx_module_attr_group); + if (ret) { + pr_err("Sysfs exporting tdx module attributes failed %d\n", ret); + return ret; + } + + tdx_metadata_cpuid_leaves.size = sysinfo->num_cpuid_config * + sizeof(struct tdx_cpuid_config_leaf); + tdx_metadata_cpuid_values.size = sysinfo->num_cpuid_config * + sizeof(struct tdx_cpuid_config_value); + ret = sysfs_create_group(tdx_metadata_kobj, &tdx_metadata_attr_group); + if (ret) + pr_err("Sysfs exporting tdx module attributes failed %d\n", ret); + + return ret; +} +#endif --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/tdx.h +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/tdx.h @@ -0,0 +1,114 @@ +/* SPDX-License-Identifier: GPL-2.0 */ +#ifndef _X86_VIRT_TDX_H +#define _X86_VIRT_TDX_H + +#include +#include +#include + +/* + * This file contains both macros and data structures defined by the TDX + * architecture and Linux defined software data structures and functions. + * The two should not be mixed together for better readability. The + * architectural definitions come first. + */ + +/* + * TDX module SEAMCALL leaf functions + */ +#define TDH_PHYMEM_PAGE_RDMD 24 +#define TDH_SYS_KEY_CONFIG 31 +#define TDH_SYS_INFO 32 +#define TDH_SYS_INIT 33 +#define TDH_SYS_LP_INIT 35 +#define TDH_SYS_TDMR_INIT 36 +#define TDH_SYS_CONFIG 45 + +/* TDX page types */ +#define PT_NDA 0x0 +#define PT_RSVD 0x1 + +/* CPUID induced SEAMCALL error */ +#define TDX_INCORRECT_CPUID_VALUE 0xC000090000000000ULL + +struct cmr_info { + u64 base; + u64 size; +} __packed; + +#define MAX_CMRS 32 + +struct tdmr_reserved_area { + u64 offset; + u64 size; +} __packed; + +#define TDMR_INFO_ALIGNMENT 512 +#define TDMR_INFO_PA_ARRAY_ALIGNMENT 512 + +struct tdmr_info { + u64 base; + u64 size; + u64 pamt_1g_base; + u64 pamt_1g_size; + u64 pamt_2m_base; + u64 pamt_2m_size; + u64 pamt_4k_base; + u64 pamt_4k_size; + /* + * Actual number of reserved areas depends on + * 'struct tdsysinfo_struct'::max_reserved_per_tdmr. + */ + DECLARE_FLEX_ARRAY(struct tdmr_reserved_area, reserved_areas); +} __packed __aligned(TDMR_INFO_ALIGNMENT); + +/* + * Do not put any hardware-defined TDX structure representations below + * this comment! + */ + +/* Kernel defined TDX module status during module initialization. */ +enum tdx_module_status_t { + TDX_MODULE_UNKNOWN, + TDX_MODULE_INITIALIZED, + TDX_MODULE_ERROR +}; + +struct tdx_memblock { + struct list_head list; + unsigned long start_pfn; + unsigned long end_pfn; + int nid; +}; + +/* Warn if kernel has less than TDMR_NR_WARN TDMRs after allocation */ +#define TDMR_NR_WARN 4 + +struct tdmr_info_list { + void *tdmrs; /* Flexible array to hold 'tdmr_info's */ + int nr_consumed_tdmrs; /* How many 'tdmr_info's are in use */ + + /* Metadata for finding target 'tdmr_info' and freeing @tdmrs */ + int tdmr_sz; /* Size of one 'tdmr_info' */ + int max_tdmrs; /* How many 'tdmr_info's are allocated */ +}; + +/* TDX metadata base field id. */ +#define TDX_METADATA_ATTRIBUTES_FIXED0 0x1900000300000000ULL +#define TDX_METADATA_ATTRIBUTES_FIXED1 0x1900000300000001ULL +#define TDX_METADATA_XFAM_FIXED0 0x1900000300000002ULL +#define TDX_METADATA_XFAM_FIXED1 0x1900000300000003ULL +#define TDX_METADATA_NUM_CPUID_CONFIG 0x9900000100000004ULL +#define TDX_METADATA_CPUID_LEAVES 0x9900000300000400ULL +#define TDX_METADATA_CPUID_VALUES 0x9900000300000500ULL + +/* File name for sysfs: hex with lower case. */ +#define TDX_METADATA_ATTRIBUTES_FIXED0_NAME "1900000300000000" +#define TDX_METADATA_ATTRIBUTES_FIXED1_NAME "1900000300000001" +#define TDX_METADATA_XFAM_FIXED0_NAME "1900000300000002" +#define TDX_METADATA_XFAM_FIXED1_NAME "1900000300000003" +#define TDX_METADATA_NUM_CPUID_CONFIG_NAME "9900000100000004" +#define TDX_METADATA_CPUID_LEAVES_NAME "9900000300000400" +#define TDX_METADATA_CPUID_VALUES_NAME "9900000300000500" + +#endif --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/tdx_debug.c +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/tdx_debug.c @@ -0,0 +1,361 @@ +// SPDX-License-Identifier: GPL-2.0 +#include +#include +#include + +#include +#include + +#include "tdx.h" + +#undef pr_fmt +#define pr_fmt(fmt) "tdx: " fmt + +/* Non-architectural debug configuration SEAMCALLs. */ +#define SEAMCALL_TDDEBUGCONFIG 0xFE + +#define DEBUGCONFIG_SET_TARGET 0 +#define DEBUGCONFIG_TARGET_TRACE_BUFFER 0 +#define DEBUGCONFIG_TARGET_SERIAL_PORT 1 +#define DEBUGCONFIG_TARGET_EXTERNAL_BUFFER 2 + +#define DEBUGCONFIG_DUMP_TRACE_BUFFER 1 + +#define DEBUGCONFIG_SET_EMERGENCY_BUFFER 2 + +#define DEBUGCONFIG_SET_TRACE_LEVEL 3 +#define DEBUGCONFIG_TRACE_ALL 0 +#define DEBUGCONFIG_TRACE_WARN 1 +#define DEBUGCONFIG_TRACE_ERROR 2 +#define DEBUGCONFIG_TRACE_CUSTOM 1000 +#define DEBUGCONFIG_TRACE_NONE -1ULL + +static inline u64 tddebugconfig(u64 subleaf, u64 param1, u64 param2) +{ + static bool debugconfig_supported = true; + int ret = 0; + + if (debugconfig_supported) { + struct tdx_module_args args = { + .rcx = subleaf, + .rdx = param1, + .r8 = param2, + }; + ret = __seamcall(SEAMCALL_TDDEBUGCONFIG, &args); + if (ret) { + pr_info("DEBUGCONFIG SEAMCALL isn't supported.\n"); + debugconfig_supported = false; + } + } + + return ret; +} + +static int trace_seamcalls __read_mostly = DEBUGCONFIG_TRACE_CUSTOM; +module_param(trace_seamcalls, int, 0444); + +static int print_severity_get(void *data, u64 *val) +{ + *val = trace_seamcalls; + return 0; +} + +static int print_severity_set(void *data, u64 val) +{ + int ret = -EINVAL; + int vmxon_ret; + + if (val == DEBUGCONFIG_TRACE_ALL || + val == DEBUGCONFIG_TRACE_WARN || + val == DEBUGCONFIG_TRACE_ERROR || + val == DEBUGCONFIG_TRACE_CUSTOM || + val == DEBUGCONFIG_TRACE_NONE) { + vmxon_ret = vmxon_get(); + tddebugconfig(DEBUGCONFIG_SET_TRACE_LEVEL, val, 0); + if (!vmxon_ret) + vmxoff_put(); + trace_seamcalls = val; + ret = 0; + } + return ret; +} + +DEFINE_DEBUGFS_ATTRIBUTE(print_severity_fops, + print_severity_get, print_severity_set, "%llu\n"); + +static int trace_target = DEBUGCONFIG_TARGET_SERIAL_PORT; + +#define TRACE_BUFFER_SIZE 4096 +#define MAX_PRINT_LENGTH 256 +#define BUFFER_SIZE (TRACE_BUFFER_SIZE * MAX_PRINT_LENGTH) +static char *buffer_trace; + +static int trace_target_get(void *data, u64 *val) +{ + *val = trace_target; + return 0; +} + +static int trace_target_set(void *data, u64 val) +{ + int ret = -EINVAL; + int vmxon_ret; + u64 err; + u64 paddr = 0; + + switch (val) { + case DEBUGCONFIG_TARGET_EXTERNAL_BUFFER: + case DEBUGCONFIG_TARGET_TRACE_BUFFER: + case DEBUGCONFIG_TARGET_SERIAL_PORT: + if (val == DEBUGCONFIG_TARGET_EXTERNAL_BUFFER) + paddr = __pa(buffer_trace); + else + paddr = 0; + vmxon_ret = vmxon_get(); + err = tddebugconfig(DEBUGCONFIG_SET_TARGET, val, paddr); + if (!vmxon_ret) + vmxoff_put(); + if (err) + pr_err("TDDEBUGCONFIG 0x%llx", err); + else + trace_target = val; + ret = err; + break; + default: + /* nothing */ + break; + } + return ret; +} + +DEFINE_DEBUGFS_ATTRIBUTE(trace_target_fops, + trace_target_get, trace_target_set, "%llu\n"); + +static char *buffer_emergency; +static bool emergency_configured; + +static int emergency_get(void *data, u64 *val) +{ + *val = emergency_configured; + return 0; +} + +static int emergency_set(void *data, u64 val) +{ + int ret = 0; + + /* emergency buffer can't be de-configured */ + if (!val && emergency_configured) + return -EINVAL; + + memset(buffer_emergency, 0, BUFFER_SIZE); + if (!emergency_configured) { + int vmxon_ret; + u64 err; + + vmxon_ret = vmxon_get(); + err = tddebugconfig(DEBUGCONFIG_SET_EMERGENCY_BUFFER, + __pa(buffer_emergency), + TRACE_BUFFER_SIZE); + if (!vmxon_ret) + vmxoff_put(); + if ((s64)err < 0) { + pr_err("TDDEBUGCONFIG 0x%llx\n", err); + ret = (s64)err; + } else + ret = 0; + + emergency_configured = true; + } + return ret; +} + +DEFINE_DEBUGFS_ATTRIBUTE(emergency_fops, + emergency_get, emergency_set, "%llu\n"); + +static char *buffer_dump; +static int dump_set(void *data, u64 val) +{ + int ret = -EINVAL; + + if (trace_target == DEBUGCONFIG_TARGET_TRACE_BUFFER) { + int vmxon_ret; + u64 err; + + memset(buffer_dump, 0, BUFFER_SIZE); + vmxon_ret = vmxon_get(); + err = tddebugconfig(DEBUGCONFIG_DUMP_TRACE_BUFFER, + __pa(buffer_dump), TRACE_BUFFER_SIZE); + if (!vmxon_ret) + vmxoff_put(); + if ((s64)err < 0) { + pr_err("TDDEBUGCONFIG 0x%llx\n", err); + ret = (s64)err; + } else + ret = 0; + } + return ret; +} + +DEFINE_DEBUGFS_ATTRIBUTE(dump_fops, NULL, dump_set, "%llu\n"); + +static void *buffer_start(struct seq_file *sfile, loff_t *pos) +{ + if (*pos == 0) + return SEQ_START_TOKEN; + if (*pos > TRACE_BUFFER_SIZE) + return NULL; + return pos; +} + +static void *buffer_next(struct seq_file *sfile, void *v, loff_t *pos) +{ + (*pos)++; + if (*pos > TRACE_BUFFER_SIZE) + return NULL; + return pos; +} + +static void buffer_stop(struct seq_file *sfile, void *v) +{ +} + +static int buffer_show(struct seq_file *sfile, void *v) +{ + char *buffer = sfile->private; + + if (v == SEQ_START_TOKEN) { + if (buffer == buffer_trace) + seq_puts(sfile, "------- trace buffer ------\n"); + else if (buffer == buffer_dump) + seq_puts(sfile, "------- dump buffer ------\n"); + else + seq_puts(sfile, "------- emerg buffer ------\n"); + } else { + int index = *((loff_t *)v) - 1; + const char *buf = &buffer[MAX_PRINT_LENGTH * index]; + + seq_printf(sfile, "%."__stringify(MAX_PRINT_LENGTH)"s", buf); + } + return 0; +} + +static const struct seq_operations buffer_sops = { + .start = buffer_start, + .next = buffer_next, + .stop = buffer_stop, + .show = buffer_show, +}; + +DEFINE_SEQ_ATTRIBUTE(buffer); + +static struct dentry *tdx_seam; + +static int __init tdx_debugfs_init(void) +{ + int ret = 0; + + ret = -ENOMEM; + buffer_trace = kcalloc(TRACE_BUFFER_SIZE, MAX_PRINT_LENGTH, GFP_KERNEL_ACCOUNT); + if (!buffer_trace) + goto err; + + buffer_emergency = kcalloc(TRACE_BUFFER_SIZE, MAX_PRINT_LENGTH, GFP_KERNEL_ACCOUNT); + if (!buffer_emergency) + goto err; + + buffer_dump = kcalloc(TRACE_BUFFER_SIZE, MAX_PRINT_LENGTH, GFP_KERNEL_ACCOUNT); + if (!buffer_dump) + goto err; + + tdx_seam = debugfs_create_dir("tdx_seam", NULL); + + debugfs_create_file("print_severity", 0600, + tdx_seam, NULL, &print_severity_fops); + debugfs_create_file("trace_target", 0600, + tdx_seam, NULL, &trace_target_fops); + debugfs_create_file("emergency", 0200, + tdx_seam, NULL, &emergency_fops); + + debugfs_create_file("dump", 0200, + tdx_seam, NULL, &dump_fops); + debugfs_create_file("buffer_trace", 0400, + tdx_seam, buffer_trace, &buffer_fops); + debugfs_create_file("buffer_dump", 0400, + tdx_seam, buffer_dump, &buffer_fops); + debugfs_create_file("buffer_emergency", 0400, + tdx_seam, buffer_emergency, &buffer_fops); + + return 0; +err: + kfree(buffer_trace); + kfree(buffer_emergency); + kfree(buffer_dump); + + return ret; +} +module_init(tdx_debugfs_init) + +static void __exit tdx_debugfs_exit(void) +{ + if (buffer_trace) + kvfree(buffer_trace); + if (buffer_emergency) + kvfree(buffer_emergency); + if (buffer_dump) + kvfree(buffer_dump); + + debugfs_remove_recursive(tdx_seam); + tdx_seam = NULL; +} +module_exit(tdx_debugfs_exit); + +MODULE_LICENSE("GPL"); + + +/* + * debug fs + * - tdx_seam/print_severity + * 0: TRACE_ALL + * 1: TRACE_WARN + * 2: TRACE_ERROR + * 1000: TRACE_CUSTOM + * - tdx_seam/trace_target + * 0: TRACE_BUFFER: output to buffer internal to TDX module + * 1: TRACE_SERIAL_PORT: output to serial port + * 2: TRACE_EXTERNAL_BUFFER: output to VMM buffer which is external + * to TDX module + * - tdx_seam/emergency + * 0: noop + * 1: set emergency buffer + * + * - tdx_seam/dump + * copy buffer from internal buffer of tdx seam module to VMM buffer + * only when trace_target is TRACE_BUFFER + * + * - tdx_seam/buffer_trace + * read the buffer for trace + * - tdx_seam/buffer_dump + * read the buffer dumped from buffer internal to TDX module + * - tdx_seam/buffer_emergency + * read the buffer for emergency dump + * + * Usage example: + * # change print_severity + * echo 0 > /sys/kernel/debug/tdx_seam/print_severity + * + * # set buffer in KVM and read the trace + * echo 2 > /sys/kernel/debug/tdx_seam/trace_target + * cat /sys/kernel/debug/tdx_seam/buffer_trace + * + * # make tdx module to record in its internal buffer + * # and dump it into KVM buffer + * echo 0 > /sys/kernel/debug/tdx_seam/trace_target + * echo 1 > /sys/kernel/debug/tdx_seam/dump + * cat /sys/kernel/debug/tdx_seam/buffer_dump + * + * # set emergency buffer + * echo 1 > /sys/kernel/debug/tdx_seam/emergency + * # after tdx seam module panics + * cat /sys/kernel/debug/tdx_seam/buffer_emergency + */ --- linux-intel-opt-6.5.0.orig/arch/x86/virt/vmx/tdx/tdxcall.S +++ linux-intel-opt-6.5.0/arch/x86/virt/vmx/tdx/tdxcall.S @@ -1,5 +1,7 @@ /* SPDX-License-Identifier: GPL-2.0 */ #include +#include +#include #include /* @@ -16,35 +18,80 @@ * TDX module and hypercalls to the VMM. * SEAMCALL - used by TDX hosts to make requests to the * TDX module. + * + *------------------------------------------------------------------------- + * TDCALL/SEAMCALL ABI: + *------------------------------------------------------------------------- + * Input Registers: + * + * RAX - TDCALL/SEAMCALL Leaf number. + * RCX,RDX,RDI,RSI,RBX,R8-R15 - TDCALL/SEAMCALL Leaf specific input registers. + * + * Output Registers: + * + * RAX - TDCALL/SEAMCALL Leaf number. + * RCX,RDX,RDI,RSI,RBX,R8-R15 - TDCALL/SEAMCALL Leaf specific output registers. + * + *------------------------------------------------------------------------- + * + * So while the common core (RAX,RCX,RDX,R8-R11) fits nicely in the + * callee-clobbered registers and even leaves RDI,RSI free to act as a + * base pointer, some leafs (e.g., VP.ENTER) make a giant mess of things. + * + * For simplicity, assume that anything that needs the callee-saved regs + * also tramples on RDI,RSI. This isn't strictly true, see for example + * TDH.EXPORT.MEM. */ -.macro TDX_MODULE_CALL host:req - /* - * R12 will be used as temporary storage for struct tdx_module_output - * pointer. Since R12-R15 registers are not used by TDCALL/SEAMCALL - * services supported by this function, it can be reused. - */ +.macro TDX_MODULE_CALL host:req ret=0 saved=0 +.if \host && \ret && \saved + pushq %rbp + movq %rsp, %rbp +.else + FRAME_BEGIN +.endif + + /* Move Leaf ID to RAX */ + mov %rdi, %rax - /* Callee saved, so preserve it */ - push %r12 + /* Move other input regs from 'struct tdx_module_args' */ + movq TDX_MODULE_rcx(%rsi), %rcx + movq TDX_MODULE_rdx(%rsi), %rdx + movq TDX_MODULE_r8(%rsi), %r8 + movq TDX_MODULE_r9(%rsi), %r9 + movq TDX_MODULE_r10(%rsi), %r10 + movq TDX_MODULE_r11(%rsi), %r11 +.if \saved /* - * Push output pointer to stack. - * After the operation, it will be fetched into R12 register. + * Move additional input regs from the structure. For simplicity + * assume that anything needs the callee-saved regs also tramples + * on %rdi/%rsi (see VP.ENTER). */ - push %r9 - - /* Mangle function call ABI into TDCALL/SEAMCALL ABI: */ - /* Move Leaf ID to RAX */ - mov %rdi, %rax - /* Move input 4 to R9 */ - mov %r8, %r9 - /* Move input 3 to R8 */ - mov %rcx, %r8 - /* Move input 1 to RCX */ - mov %rsi, %rcx - /* Leave input param 2 in RDX */ + /* Save those callee-saved GPRs as mandated by the x86_64 ABI */ + pushq %rbx + pushq %r12 + pushq %r13 + pushq %r14 + pushq %r15 + + movq TDX_MODULE_r12(%rsi), %r12 + movq TDX_MODULE_r13(%rsi), %r13 + movq TDX_MODULE_r14(%rsi), %r14 + movq TDX_MODULE_r15(%rsi), %r15 + movq TDX_MODULE_rbx(%rsi), %rbx + +.if \ret + /* Save the structure pointer as %rsi is about to be clobbered */ + pushq %rsi +.endif + + movq TDX_MODULE_rdi(%rsi), %rdi + /* %rsi needs to be done at last */ + movq TDX_MODULE_rsi(%rsi), %rsi +.endif /* \saved */ - .if \host +.if \host +.Lseamcall\@: seamcall /* * SEAMCALL instruction is essentially a VMExit from VMX root @@ -57,40 +104,127 @@ * This value will never be used as actual SEAMCALL error code as * it is from the Reserved status code class. */ - jnc .Lno_vmfailinvalid - mov $TDX_SEAMCALL_VMFAILINVALID, %rax -.Lno_vmfailinvalid: - - .else + jc .Lseamcall_vmfailinvalid\@ +.else tdcall - .endif +.endif +.if \ret +.if \saved /* - * Fetch output pointer from stack to R12 (It is used - * as temporary storage) + * Restore the structure from stack to save the output registers + * + * In case of VP.ENTER returns due to TDVMCALL, all registers are + * valid thus no register can be used as spare to restore the + * structure from the stack (see "TDH.VP.ENTER Output Operands + * Definition on TDCALL(TDG.VP.VMCALL) Following a TD Entry"). + * For this case, need to make one register as spare by saving it + * to the stack and then manually load the structure pointer to + * the spare register. + * + * Note for other TDCALLs/SEAMCALLs there are spare registers + * thus no need for such hack but just use this for all. */ - pop %r12 + pushq %rax /* save the TDCALL/SEAMCALL return code */ + movq 8(%rsp), %rax /* restore the structure pointer */ + movq %rsi, TDX_MODULE_rsi(%rax) /* save %rsi */ + movq %rax, %rsi /* use %rsi as structure pointer */ + popq %rax /* restore the return code */ + popq %rsi /* pop the structure pointer */ + + /* Copy additional output regs to the structure */ + movq %r12, TDX_MODULE_r12(%rsi) + movq %r13, TDX_MODULE_r13(%rsi) + movq %r14, TDX_MODULE_r14(%rsi) + movq %r15, TDX_MODULE_r15(%rsi) + movq %rbx, TDX_MODULE_rbx(%rsi) + movq %rdi, TDX_MODULE_rdi(%rsi) +.endif /* \saved */ + + /* Copy output registers to the structure */ + movq %rcx, TDX_MODULE_rcx(%rsi) + movq %rdx, TDX_MODULE_rdx(%rsi) + movq %r8, TDX_MODULE_r8(%rsi) + movq %r9, TDX_MODULE_r9(%rsi) + movq %r10, TDX_MODULE_r10(%rsi) + movq %r11, TDX_MODULE_r11(%rsi) +.endif /* \ret */ +.if \saved && \ret /* - * Since this macro can be invoked with NULL as an output pointer, - * check if caller provided an output struct before storing output - * registers. + * Clear registers shared by guest for VP.VMCALL/VP.ENTER to prevent + * speculative use of guest's/VMM's values, including those are + * restored from the stack. * - * Update output registers, even if the call failed (RAX != 0). - * Other registers may contain details of the failure. + * See arch/x86/kvm/vmx/vmenter.S: + * + * In theory, a L1 cache miss when restoring register from stack + * could lead to speculative execution with guest's values. + * + * Note: RBP/RSP are not used as shared register. RSI has been + * restored already. + * + * XOR is cheap, thus unconditionally do for all leafs. */ - test %r12, %r12 - jz .Lno_output_struct + xorl %ecx, %ecx + xorl %edx, %edx + xorl %r8d, %r8d + xorl %r9d, %r9d + xorl %r10d, %r10d + xorl %r11d, %r11d + xorl %r12d, %r12d + xorl %r13d, %r13d + xorl %r14d, %r14d + xorl %r15d, %r15d + xorl %ebx, %ebx + xorl %edi, %edi +.endif /* \ret && \host */ + +.if \host +.Lout\@: +.endif + +.if \saved + /* Restore callee-saved GPRs as mandated by the x86_64 ABI */ + popq %r15 + popq %r14 + popq %r13 + popq %r12 + popq %rbx +.endif /* \saved */ + +.if \host && \ret && \saved + popq %rbp +.else + FRAME_END +.endif + RET + +.if \host +.Lseamcall_vmfailinvalid\@: + mov $TDX_SEAMCALL_VMFAILINVALID, %rax + jmp .Lseamcall_fail\@ + +.Lseamcall_trap\@: + /* + * SEAMCALL caused #GP or #UD. By reaching here %eax contains + * the trap number. Convert the trap number to the TDX error + * code by setting TDX_SW_ERROR to the high 32-bits of %rax. + * + * Note cannot OR TDX_SW_ERROR directly to %rax as OR instruction + * only accepts 32-bit immediate at most. + */ + movq $TDX_SW_ERROR, %rdi + orq %rdi, %rax + +.Lseamcall_fail\@: +.if \ret && \saved + /* pop the unused structure pointer back to %rsi */ + popq %rsi +.endif + jmp .Lout\@ + + _ASM_EXTABLE_FAULT(.Lseamcall\@, .Lseamcall_trap\@) +.endif /* \host */ - /* Copy result registers to output struct: */ - movq %rcx, TDX_MODULE_rcx(%r12) - movq %rdx, TDX_MODULE_rdx(%r12) - movq %r8, TDX_MODULE_r8(%r12) - movq %r9, TDX_MODULE_r9(%r12) - movq %r10, TDX_MODULE_r10(%r12) - movq %r11, TDX_MODULE_r11(%r12) - -.Lno_output_struct: - /* Restore the state of R12 register */ - pop %r12 .endm --- linux-intel-opt-6.5.0.orig/arch/xtensa/boot/Makefile +++ linux-intel-opt-6.5.0/arch/xtensa/boot/Makefile @@ -9,8 +9,7 @@ # KBUILD_CFLAGS used when building rest of boot (takes effect recursively) -KBUILD_CFLAGS += -fno-builtin -Iarch/$(ARCH)/boot/include -HOSTFLAGS += -Iarch/$(ARCH)/boot/include +KBUILD_CFLAGS += -fno-builtin subdir-y := lib targets += vmlinux.bin vmlinux.bin.gz --- linux-intel-opt-6.5.0.orig/arch/xtensa/boot/lib/zmem.c +++ linux-intel-opt-6.5.0/arch/xtensa/boot/lib/zmem.c @@ -4,13 +4,14 @@ /* bits taken from ppc */ extern void *avail_ram, *end_avail; +void gunzip(void *dst, int dstlen, unsigned char *src, int *lenp); -void exit (void) +static void exit(void) { for (;;); } -void *zalloc(unsigned size) +static void *zalloc(unsigned int size) { void *p = avail_ram; --- linux-intel-opt-6.5.0.orig/arch/xtensa/include/asm/core.h +++ linux-intel-opt-6.5.0/arch/xtensa/include/asm/core.h @@ -6,6 +6,10 @@ #include +#ifndef XCHAL_HAVE_DIV32 +#define XCHAL_HAVE_DIV32 0 +#endif + #ifndef XCHAL_HAVE_EXCLUSIVE #define XCHAL_HAVE_EXCLUSIVE 0 #endif @@ -52,4 +56,13 @@ #define XTENSA_STACK_ALIGNMENT 16 #endif +#ifndef XCHAL_HW_MIN_VERSION +#if defined(XCHAL_HW_MIN_VERSION_MAJOR) && defined(XCHAL_HW_MIN_VERSION_MINOR) +#define XCHAL_HW_MIN_VERSION (XCHAL_HW_MIN_VERSION_MAJOR * 100 + \ + XCHAL_HW_MIN_VERSION_MINOR) +#else +#define XCHAL_HW_MIN_VERSION 0 +#endif +#endif + #endif --- linux-intel-opt-6.5.0.orig/arch/xtensa/kernel/perf_event.c +++ linux-intel-opt-6.5.0/arch/xtensa/kernel/perf_event.c @@ -13,17 +13,26 @@ #include #include +#include #include #include +#define XTENSA_HWVERSION_RG_2015_0 260000 + +#if XCHAL_HW_MIN_VERSION >= XTENSA_HWVERSION_RG_2015_0 +#define XTENSA_PMU_ERI_BASE 0x00101000 +#else +#define XTENSA_PMU_ERI_BASE 0x00001000 +#endif + /* Global control/status for all perf counters */ -#define XTENSA_PMU_PMG 0x1000 +#define XTENSA_PMU_PMG XTENSA_PMU_ERI_BASE /* Perf counter values */ -#define XTENSA_PMU_PM(i) (0x1080 + (i) * 4) +#define XTENSA_PMU_PM(i) (XTENSA_PMU_ERI_BASE + 0x80 + (i) * 4) /* Perf counter control registers */ -#define XTENSA_PMU_PMCTRL(i) (0x1100 + (i) * 4) +#define XTENSA_PMU_PMCTRL(i) (XTENSA_PMU_ERI_BASE + 0x100 + (i) * 4) /* Perf counter status registers */ -#define XTENSA_PMU_PMSTAT(i) (0x1180 + (i) * 4) +#define XTENSA_PMU_PMSTAT(i) (XTENSA_PMU_ERI_BASE + 0x180 + (i) * 4) #define XTENSA_PMU_PMG_PMEN 0x1 --- linux-intel-opt-6.5.0.orig/arch/xtensa/lib/umulsidi3.S +++ linux-intel-opt-6.5.0/arch/xtensa/lib/umulsidi3.S @@ -3,7 +3,9 @@ #include #include -#if !XCHAL_HAVE_MUL16 && !XCHAL_HAVE_MUL32 && !XCHAL_HAVE_MAC16 +#if XCHAL_HAVE_MUL16 || XCHAL_HAVE_MUL32 || XCHAL_HAVE_MAC16 +#define XCHAL_NO_MUL 0 +#else #define XCHAL_NO_MUL 1 #endif --- linux-intel-opt-6.5.0.orig/arch/xtensa/platforms/iss/network.c +++ linux-intel-opt-6.5.0/arch/xtensa/platforms/iss/network.c @@ -201,7 +201,7 @@ return simc_write(lp->tp.info.tuntap.fd, (*skb)->data, (*skb)->len); } -unsigned short tuntap_protocol(struct sk_buff *skb) +static unsigned short tuntap_protocol(struct sk_buff *skb) { return eth_type_trans(skb, skb->dev); } @@ -441,7 +441,7 @@ return -EINVAL; } -void iss_net_user_timer_expire(struct timer_list *unused) +static void iss_net_user_timer_expire(struct timer_list *unused) { } --- linux-intel-opt-6.5.0.orig/block/bio-integrity.c +++ linux-intel-opt-6.5.0/block/bio-integrity.c @@ -123,17 +123,34 @@ int bio_integrity_add_page(struct bio *bio, struct page *page, unsigned int len, unsigned int offset) { + struct request_queue *q = bdev_get_queue(bio->bi_bdev); struct bio_integrity_payload *bip = bio_integrity(bio); - if (bip->bip_vcnt >= bip->bip_max_vcnt) { - printk(KERN_ERR "%s: bip_vec full\n", __func__); + if (((bip->bip_iter.bi_size + len) >> SECTOR_SHIFT) > + queue_max_hw_sectors(q)) return 0; - } - if (bip->bip_vcnt && - bvec_gap_to_prev(&bdev_get_queue(bio->bi_bdev)->limits, - &bip->bip_vec[bip->bip_vcnt - 1], offset)) - return 0; + if (bip->bip_vcnt > 0) { + struct bio_vec *bv = &bip->bip_vec[bip->bip_vcnt - 1]; + bool same_page = false; + + if (bvec_try_merge_hw_page(q, bv, page, len, offset, + &same_page)) { + bip->bip_iter.bi_size += len; + return len; + } + + if (bip->bip_vcnt >= + min(bip->bip_max_vcnt, queue_max_integrity_segments(q))) + return 0; + + /* + * If the queue doesn't support SG gaps and adding this segment + * would create a gap, disallow it. + */ + if (bvec_gap_to_prev(&q->limits, bv, offset)) + return 0; + } bvec_set_page(&bip->bip_vec[bip->bip_vcnt], page, len, offset); bip->bip_vcnt++; --- linux-intel-opt-6.5.0.orig/block/bio.c +++ linux-intel-opt-6.5.0/block/bio.c @@ -903,9 +903,8 @@ return false; } -static inline bool page_is_mergeable(const struct bio_vec *bv, - struct page *page, unsigned int len, unsigned int off, - bool *same_page) +static bool bvec_try_merge_page(struct bio_vec *bv, struct page *page, + unsigned int len, unsigned int off, bool *same_page) { size_t bv_end = bv->bv_offset + bv->bv_len; phys_addr_t vec_end_addr = page_to_phys(bv->bv_page) + bv_end - 1; @@ -919,49 +918,15 @@ return false; *same_page = ((vec_end_addr & PAGE_MASK) == page_addr); - if (*same_page) - return true; - else if (IS_ENABLED(CONFIG_KMSAN)) - return false; - return (bv->bv_page + bv_end / PAGE_SIZE) == (page + off / PAGE_SIZE); -} - -/** - * __bio_try_merge_page - try appending data to an existing bvec. - * @bio: destination bio - * @page: start page to add - * @len: length of the data to add - * @off: offset of the data relative to @page - * @same_page: return if the segment has been merged inside the same page - * - * Try to add the data at @page + @off to the last bvec of @bio. This is a - * useful optimisation for file systems with a block size smaller than the - * page size. - * - * Warn if (@len, @off) crosses pages in case that @same_page is true. - * - * Return %true on success or %false on failure. - */ -static bool __bio_try_merge_page(struct bio *bio, struct page *page, - unsigned int len, unsigned int off, bool *same_page) -{ - if (WARN_ON_ONCE(bio_flagged(bio, BIO_CLONED))) - return false; - - if (bio->bi_vcnt > 0) { - struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; - - if (page_is_mergeable(bv, page, len, off, same_page)) { - if (bio->bi_iter.bi_size > UINT_MAX - len) { - *same_page = false; - return false; - } - bv->bv_len += len; - bio->bi_iter.bi_size += len; - return true; - } + if (!*same_page) { + if (IS_ENABLED(CONFIG_KMSAN)) + return false; + if (bv->bv_page + bv_end / PAGE_SIZE != page + off / PAGE_SIZE) + return false; } - return false; + + bv->bv_len += len; + return true; } /* @@ -969,11 +934,10 @@ * size limit. This is not for normal read/write bios, but for passthrough * or Zone Append operations that we can't split. */ -static bool bio_try_merge_hw_seg(struct request_queue *q, struct bio *bio, - struct page *page, unsigned len, - unsigned offset, bool *same_page) +bool bvec_try_merge_hw_page(struct request_queue *q, struct bio_vec *bv, + struct page *page, unsigned len, unsigned offset, + bool *same_page) { - struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; unsigned long mask = queue_segment_boundary(q); phys_addr_t addr1 = page_to_phys(bv->bv_page) + bv->bv_offset; phys_addr_t addr2 = page_to_phys(page) + offset + len - 1; @@ -982,7 +946,7 @@ return false; if (bv->bv_len + len > queue_max_segment_size(q)) return false; - return __bio_try_merge_page(bio, page, len, offset, same_page); + return bvec_try_merge_page(bv, page, len, offset, same_page); } /** @@ -1002,8 +966,6 @@ struct page *page, unsigned int len, unsigned int offset, unsigned int max_sectors, bool *same_page) { - struct bio_vec *bvec; - if (WARN_ON_ONCE(bio_flagged(bio, BIO_CLONED))) return 0; @@ -1011,15 +973,19 @@ return 0; if (bio->bi_vcnt > 0) { - if (bio_try_merge_hw_seg(q, bio, page, len, offset, same_page)) + struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; + + if (bvec_try_merge_hw_page(q, bv, page, len, offset, + same_page)) { + bio->bi_iter.bi_size += len; return len; + } /* * If the queue doesn't support SG gaps and adding this segment * would create a gap, disallow it. */ - bvec = &bio->bi_io_vec[bio->bi_vcnt - 1]; - if (bvec_gap_to_prev(&q->limits, bvec, offset)) + if (bvec_gap_to_prev(&q->limits, bv, offset)) return 0; } @@ -1129,11 +1095,21 @@ { bool same_page = false; - if (!__bio_try_merge_page(bio, page, len, offset, &same_page)) { - if (bio_full(bio, len)) - return 0; - __bio_add_page(bio, page, len, offset); + if (WARN_ON_ONCE(bio_flagged(bio, BIO_CLONED))) + return 0; + if (bio->bi_iter.bi_size > UINT_MAX - len) + return 0; + + if (bio->bi_vcnt > 0 && + bvec_try_merge_page(&bio->bi_io_vec[bio->bi_vcnt - 1], + page, len, offset, &same_page)) { + bio->bi_iter.bi_size += len; + return len; } + + if (bio_full(bio, len)) + return 0; + __bio_add_page(bio, page, len, offset); return len; } EXPORT_SYMBOL(bio_add_page); @@ -1207,13 +1183,18 @@ { bool same_page = false; - if (!__bio_try_merge_page(bio, page, len, offset, &same_page)) { - __bio_add_page(bio, page, len, offset); + if (WARN_ON_ONCE(bio->bi_iter.bi_size > UINT_MAX - len)) + return -EIO; + + if (bio->bi_vcnt > 0 && + bvec_try_merge_page(&bio->bi_io_vec[bio->bi_vcnt - 1], + page, len, offset, &same_page)) { + bio->bi_iter.bi_size += len; + if (same_page) + bio_release_page(bio, page); return 0; } - - if (same_page) - bio_release_page(bio, page); + __bio_add_page(bio, page, len, offset); return 0; } @@ -1337,6 +1318,9 @@ { int ret = 0; + if (WARN_ON_ONCE(bio_flagged(bio, BIO_CLONED))) + return -EIO; + if (iov_iter_is_bvec(iter)) { bio_iov_bvec_set(bio, iter); iov_iter_advance(iter, bio->bi_iter.bi_size); --- linux-intel-opt-6.5.0.orig/block/blk-cgroup.c +++ linux-intel-opt-6.5.0/block/blk-cgroup.c @@ -1511,7 +1511,7 @@ retry: spin_lock_irq(&q->queue_lock); - /* blkg_list is pushed at the head, reverse walk to allocate parents first */ + /* blkg_list is pushed at the head, reverse walk to initialize parents first */ list_for_each_entry_reverse(blkg, &q->blkg_list, q_node) { struct blkg_policy_data *pd; @@ -1549,21 +1549,20 @@ goto enomem; } - blkg->pd[pol->plid] = pd; + spin_lock(&blkg->blkcg->lock); + pd->blkg = blkg; pd->plid = pol->plid; - pd->online = false; - } + blkg->pd[pol->plid] = pd; - /* all allocated, init in the same order */ - if (pol->pd_init_fn) - list_for_each_entry_reverse(blkg, &q->blkg_list, q_node) - pol->pd_init_fn(blkg->pd[pol->plid]); + if (pol->pd_init_fn) + pol->pd_init_fn(pd); - list_for_each_entry_reverse(blkg, &q->blkg_list, q_node) { if (pol->pd_online_fn) - pol->pd_online_fn(blkg->pd[pol->plid]); - blkg->pd[pol->plid]->online = true; + pol->pd_online_fn(pd); + pd->online = true; + + spin_unlock(&blkg->blkcg->lock); } __set_bit(pol->plid, q->blkcg_pols); @@ -1580,14 +1579,19 @@ return ret; enomem: - /* alloc failed, nothing's initialized yet, free everything */ + /* alloc failed, take down everything */ spin_lock_irq(&q->queue_lock); list_for_each_entry(blkg, &q->blkg_list, q_node) { struct blkcg *blkcg = blkg->blkcg; + struct blkg_policy_data *pd; spin_lock(&blkcg->lock); - if (blkg->pd[pol->plid]) { - pol->pd_free_fn(blkg->pd[pol->plid]); + pd = blkg->pd[pol->plid]; + if (pd) { + if (pd->online && pol->pd_offline_fn) + pol->pd_offline_fn(pd); + pd->online = false; + pol->pd_free_fn(pd); blkg->pd[pol->plid] = NULL; } spin_unlock(&blkcg->lock); --- linux-intel-opt-6.5.0.orig/block/blk-flush.c +++ linux-intel-opt-6.5.0/block/blk-flush.c @@ -443,7 +443,7 @@ * the post flush, and then just pass the command on. */ blk_rq_init_flush(rq); - rq->flush.seq |= REQ_FSEQ_POSTFLUSH; + rq->flush.seq |= REQ_FSEQ_PREFLUSH; spin_lock_irq(&fq->mq_flush_lock); list_move_tail(&rq->flush.list, &fq->flush_data_in_flight); spin_unlock_irq(&fq->mq_flush_lock); --- linux-intel-opt-6.5.0.orig/block/blk-map.c +++ linux-intel-opt-6.5.0/block/blk-map.c @@ -315,12 +315,11 @@ n = bytes; if (!bio_add_hw_page(rq->q, bio, page, n, offs, - max_sectors, &same_page)) { - if (same_page) - bio_release_page(bio, page); + max_sectors, &same_page)) break; - } + if (same_page) + bio_release_page(bio, page); bytes -= n; offs = 0; } --- linux-intel-opt-6.5.0.orig/block/blk-mq.c +++ linux-intel-opt-6.5.0/block/blk-mq.c @@ -4402,6 +4402,7 @@ int new_nr_hw_queues) { struct blk_mq_tags **new_tags; + int i; if (set->nr_hw_queues >= new_nr_hw_queues) goto done; @@ -4416,6 +4417,16 @@ sizeof(*set->tags)); kfree(set->tags); set->tags = new_tags; + + for (i = set->nr_hw_queues; i < new_nr_hw_queues; i++) { + if (!__blk_mq_alloc_map_and_rqs(set, i)) { + while (--i >= set->nr_hw_queues) + __blk_mq_free_map_and_rqs(set, i); + return -ENOMEM; + } + cond_resched(); + } + done: set->nr_hw_queues = new_nr_hw_queues; return 0; @@ -4704,7 +4715,8 @@ { struct request_queue *q; LIST_HEAD(head); - int prev_nr_hw_queues; + int prev_nr_hw_queues = set->nr_hw_queues; + int i; lockdep_assert_held(&set->tag_list_lock); @@ -4731,7 +4743,6 @@ blk_mq_sysfs_unregister_hctxs(q); } - prev_nr_hw_queues = set->nr_hw_queues; if (blk_mq_realloc_tag_set_tags(set, nr_hw_queues) < 0) goto reregister; @@ -4767,6 +4778,10 @@ list_for_each_entry(q, &set->tag_list, tag_set_list) blk_mq_unfreeze_queue(q); + + /* Free the excess tags when nr_hw_queues shrink. */ + for (i = set->nr_hw_queues; i < prev_nr_hw_queues; i++) + __blk_mq_free_map_and_rqs(set, i); } void blk_mq_update_nr_hw_queues(struct blk_mq_tag_set *set, int nr_hw_queues) --- linux-intel-opt-6.5.0.orig/block/blk-settings.c +++ linux-intel-opt-6.5.0/block/blk-settings.c @@ -830,10 +830,13 @@ */ void blk_queue_write_cache(struct request_queue *q, bool wc, bool fua) { - if (wc) + if (wc) { + blk_queue_flag_set(QUEUE_FLAG_HW_WC, q); blk_queue_flag_set(QUEUE_FLAG_WC, q); - else + } else { + blk_queue_flag_clear(QUEUE_FLAG_HW_WC, q); blk_queue_flag_clear(QUEUE_FLAG_WC, q); + } if (fua) blk_queue_flag_set(QUEUE_FLAG_FUA, q); else --- linux-intel-opt-6.5.0.orig/block/blk-sysfs.c +++ linux-intel-opt-6.5.0/block/blk-sysfs.c @@ -449,21 +449,16 @@ static ssize_t queue_wc_store(struct request_queue *q, const char *page, size_t count) { - int set = -1; - - if (!strncmp(page, "write back", 10)) - set = 1; - else if (!strncmp(page, "write through", 13) || - !strncmp(page, "none", 4)) - set = 0; - - if (set == -1) - return -EINVAL; - - if (set) + if (!strncmp(page, "write back", 10)) { + if (!test_bit(QUEUE_FLAG_HW_WC, &q->queue_flags)) + return -EINVAL; blk_queue_flag_set(QUEUE_FLAG_WC, q); - else + } else if (!strncmp(page, "write through", 13) || + !strncmp(page, "none", 4)) { blk_queue_flag_clear(QUEUE_FLAG_WC, q); + } else { + return -EINVAL; + } return count; } --- linux-intel-opt-6.5.0.orig/block/blk-throttle.c +++ linux-intel-opt-6.5.0/block/blk-throttle.c @@ -697,11 +697,41 @@ return true; } +static unsigned int calculate_io_allowed(u32 iops_limit, + unsigned long jiffy_elapsed) +{ + unsigned int io_allowed; + u64 tmp; + + /* + * jiffy_elapsed should not be a big value as minimum iops can be + * 1 then at max jiffy elapsed should be equivalent of 1 second as we + * will allow dispatch after 1 second and after that slice should + * have been trimmed. + */ + + tmp = (u64)iops_limit * jiffy_elapsed; + do_div(tmp, HZ); + + if (tmp > UINT_MAX) + io_allowed = UINT_MAX; + else + io_allowed = tmp; + + return io_allowed; +} + +static u64 calculate_bytes_allowed(u64 bps_limit, unsigned long jiffy_elapsed) +{ + return mul_u64_u64_div_u64(bps_limit, (u64)jiffy_elapsed, (u64)HZ); +} + /* Trim the used slices and adjust slice start accordingly */ static inline void throtl_trim_slice(struct throtl_grp *tg, bool rw) { - unsigned long nr_slices, time_elapsed, io_trim; - u64 bytes_trim, tmp; + unsigned long time_elapsed; + long long bytes_trim; + int io_trim; BUG_ON(time_before(tg->slice_end[rw], tg->slice_start[rw])); @@ -723,67 +753,38 @@ throtl_set_slice_end(tg, rw, jiffies + tg->td->throtl_slice); - time_elapsed = jiffies - tg->slice_start[rw]; - - nr_slices = time_elapsed / tg->td->throtl_slice; - - if (!nr_slices) + time_elapsed = rounddown(jiffies - tg->slice_start[rw], + tg->td->throtl_slice); + if (!time_elapsed) return; - tmp = tg_bps_limit(tg, rw) * tg->td->throtl_slice * nr_slices; - do_div(tmp, HZ); - bytes_trim = tmp; - - io_trim = (tg_iops_limit(tg, rw) * tg->td->throtl_slice * nr_slices) / - HZ; - if (!bytes_trim && !io_trim) + bytes_trim = calculate_bytes_allowed(tg_bps_limit(tg, rw), + time_elapsed) + + tg->carryover_bytes[rw]; + io_trim = calculate_io_allowed(tg_iops_limit(tg, rw), time_elapsed) + + tg->carryover_ios[rw]; + if (bytes_trim <= 0 && io_trim <= 0) return; - if (tg->bytes_disp[rw] >= bytes_trim) + tg->carryover_bytes[rw] = 0; + if ((long long)tg->bytes_disp[rw] >= bytes_trim) tg->bytes_disp[rw] -= bytes_trim; else tg->bytes_disp[rw] = 0; - if (tg->io_disp[rw] >= io_trim) + tg->carryover_ios[rw] = 0; + if ((int)tg->io_disp[rw] >= io_trim) tg->io_disp[rw] -= io_trim; else tg->io_disp[rw] = 0; - tg->slice_start[rw] += nr_slices * tg->td->throtl_slice; + tg->slice_start[rw] += time_elapsed; throtl_log(&tg->service_queue, - "[%c] trim slice nr=%lu bytes=%llu io=%lu start=%lu end=%lu jiffies=%lu", - rw == READ ? 'R' : 'W', nr_slices, bytes_trim, io_trim, - tg->slice_start[rw], tg->slice_end[rw], jiffies); -} - -static unsigned int calculate_io_allowed(u32 iops_limit, - unsigned long jiffy_elapsed) -{ - unsigned int io_allowed; - u64 tmp; - - /* - * jiffy_elapsed should not be a big value as minimum iops can be - * 1 then at max jiffy elapsed should be equivalent of 1 second as we - * will allow dispatch after 1 second and after that slice should - * have been trimmed. - */ - - tmp = (u64)iops_limit * jiffy_elapsed; - do_div(tmp, HZ); - - if (tmp > UINT_MAX) - io_allowed = UINT_MAX; - else - io_allowed = tmp; - - return io_allowed; -} - -static u64 calculate_bytes_allowed(u64 bps_limit, unsigned long jiffy_elapsed) -{ - return mul_u64_u64_div_u64(bps_limit, (u64)jiffy_elapsed, (u64)HZ); + "[%c] trim slice nr=%lu bytes=%lld io=%d start=%lu end=%lu jiffies=%lu", + rw == READ ? 'R' : 'W', time_elapsed / tg->td->throtl_slice, + bytes_trim, io_trim, tg->slice_start[rw], tg->slice_end[rw], + jiffies); } static void __tg_update_carryover(struct throtl_grp *tg, bool rw) --- linux-intel-opt-6.5.0.orig/block/blk.h +++ linux-intel-opt-6.5.0/block/blk.h @@ -76,6 +76,10 @@ gfp_t gfp_mask); void bvec_free(mempool_t *pool, struct bio_vec *bv, unsigned short nr_vecs); +bool bvec_try_merge_hw_page(struct request_queue *q, struct bio_vec *bv, + struct page *page, unsigned len, unsigned offset, + bool *same_page); + static inline bool biovec_phys_mergeable(struct request_queue *q, struct bio_vec *vec1, struct bio_vec *vec2) { --- linux-intel-opt-6.5.0.orig/block/fops.c +++ linux-intel-opt-6.5.0/block/fops.c @@ -659,24 +659,35 @@ filemap_invalidate_lock(inode->i_mapping); - /* Invalidate the page cache, including dirty pages. */ - error = truncate_bdev_range(bdev, file_to_blk_mode(file), start, end); - if (error) - goto fail; - + /* + * Invalidate the page cache, including dirty pages, for valid + * de-allocate mode calls to fallocate(). + */ switch (mode) { case FALLOC_FL_ZERO_RANGE: case FALLOC_FL_ZERO_RANGE | FALLOC_FL_KEEP_SIZE: + error = truncate_bdev_range(bdev, file_to_blk_mode(file), start, end); + if (error) + goto fail; + error = blkdev_issue_zeroout(bdev, start >> SECTOR_SHIFT, len >> SECTOR_SHIFT, GFP_KERNEL, BLKDEV_ZERO_NOUNMAP); break; case FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE: + error = truncate_bdev_range(bdev, file_to_blk_mode(file), start, end); + if (error) + goto fail; + error = blkdev_issue_zeroout(bdev, start >> SECTOR_SHIFT, len >> SECTOR_SHIFT, GFP_KERNEL, BLKDEV_ZERO_NOFALLBACK); break; case FALLOC_FL_PUNCH_HOLE | FALLOC_FL_KEEP_SIZE | FALLOC_FL_NO_HIDE_STALE: + error = truncate_bdev_range(bdev, file_to_blk_mode(file), start, end); + if (error) + goto fail; + error = blkdev_issue_discard(bdev, start >> SECTOR_SHIFT, len >> SECTOR_SHIFT, GFP_KERNEL); break; --- linux-intel-opt-6.5.0.orig/block/ioctl.c +++ linux-intel-opt-6.5.0/block/ioctl.c @@ -20,6 +20,8 @@ struct blkpg_partition p; long long start, length; + if (disk->flags & GENHD_FL_NO_PART) + return -EINVAL; if (!capable(CAP_SYS_ADMIN)) return -EACCES; if (copy_from_user(&p, upart, sizeof(struct blkpg_partition))) --- linux-intel-opt-6.5.0.orig/block/mq-deadline.c +++ linux-intel-opt-6.5.0/block/mq-deadline.c @@ -646,8 +646,9 @@ struct request_queue *q = hctx->queue; struct deadline_data *dd = q->elevator->elevator_data; struct blk_mq_tags *tags = hctx->sched_tags; + unsigned int shift = tags->bitmap_tags.sb.shift; - dd->async_depth = max(1UL, 3 * q->nr_requests / 4); + dd->async_depth = max(1U, 3 * (1U << shift) / 4); sbitmap_queue_min_shallow_depth(&tags->bitmap_tags, dd->async_depth); } --- linux-intel-opt-6.5.0.orig/certs/blacklist.c +++ linux-intel-opt-6.5.0/certs/blacklist.c @@ -276,6 +276,9 @@ if (IS_ERR(key)) { pr_err("Problem with revocation key (%ld)\n", PTR_ERR(key)); return PTR_ERR(key); + } else { + pr_notice("Revoked X.509 cert '%s'\n", + key_ref_to_ptr(key)->description); } return 0; --- linux-intel-opt-6.5.0.orig/crypto/aegis128-neon-inner.c +++ linux-intel-opt-6.5.0/crypto/aegis128-neon-inner.c @@ -148,8 +148,8 @@ kiv, vld1q_u8(const1), vld1q_u8(const0), - k ^ vld1q_u8(const0), - k ^ vld1q_u8(const1), + (uint8x16_t) (k ^ vld1q_u8(const0)), + (uint8x16_t) (k ^ vld1q_u8(const1)), }}; int i; --- linux-intel-opt-6.5.0.orig/crypto/af_alg.c +++ linux-intel-opt-6.5.0/crypto/af_alg.c @@ -320,18 +320,21 @@ if (IS_ERR(ret)) { up_read(&key->sem); + key_put(key); return PTR_ERR(ret); } key_data = sock_kmalloc(&ask->sk, key_datalen, GFP_KERNEL); if (!key_data) { up_read(&key->sem); + key_put(key); return -ENOMEM; } memcpy(key_data, ret, key_datalen); up_read(&key->sem); + key_put(key); err = type->setkey(ask->private, key_data, key_datalen); @@ -1192,6 +1195,7 @@ areq->areqlen = areqlen; areq->sk = sk; + areq->first_rsgl.sgl.sgt.sgl = areq->first_rsgl.sgl.sgl; areq->last_rsgl = NULL; INIT_LIST_HEAD(&areq->rsgl_list); areq->tsgl = NULL; --- linux-intel-opt-6.5.0.orig/crypto/algapi.c +++ linux-intel-opt-6.5.0/crypto/algapi.c @@ -17,6 +17,7 @@ #include #include #include +#include #include "internal.h" @@ -74,15 +75,26 @@ inst->alg.cra_type->free(inst); } -static void crypto_destroy_instance(struct crypto_alg *alg) +static void crypto_destroy_instance_workfn(struct work_struct *w) { - struct crypto_instance *inst = (void *)alg; + struct crypto_instance *inst = container_of(w, struct crypto_instance, + free_work); struct crypto_template *tmpl = inst->tmpl; crypto_free_instance(inst); crypto_tmpl_put(tmpl); } +static void crypto_destroy_instance(struct crypto_alg *alg) +{ + struct crypto_instance *inst = container_of(alg, + struct crypto_instance, + alg); + + INIT_WORK(&inst->free_work, crypto_destroy_instance_workfn); + schedule_work(&inst->free_work); +} + /* * This function adds a spawn to the list secondary_spawns which * will be used at the end of crypto_remove_spawns to unregister --- linux-intel-opt-6.5.0.orig/crypto/asymmetric_keys/x509_loader.c +++ linux-intel-opt-6.5.0/crypto/asymmetric_keys/x509_loader.c @@ -41,6 +41,7 @@ if (IS_ERR(key)) { pr_err("Problem loading in-kernel X.509 certificate (%ld)\n", PTR_ERR(key)); + WARN_ON_ONCE(1); } else { pr_notice("Loaded X.509 cert '%s'\n", key_ref_to_ptr(key)->description); --- linux-intel-opt-6.5.0.orig/crypto/asymmetric_keys/x509_public_key.c +++ linux-intel-opt-6.5.0/crypto/asymmetric_keys/x509_public_key.c @@ -130,6 +130,11 @@ goto out; } + if (cert->unsupported_sig) { + ret = 0; + goto out; + } + ret = public_key_verify_signature(cert->pub, cert->sig); if (ret < 0) { if (ret == -ENOPKG) { --- linux-intel-opt-6.5.0.orig/crypto/lrw.c +++ linux-intel-opt-6.5.0/crypto/lrw.c @@ -357,10 +357,10 @@ * cipher name. */ if (!strncmp(cipher_name, "ecb(", 4)) { - unsigned len; + int len; - len = strlcpy(ecb_name, cipher_name + 4, sizeof(ecb_name)); - if (len < 2 || len >= sizeof(ecb_name)) + len = strscpy(ecb_name, cipher_name + 4, sizeof(ecb_name)); + if (len < 2) goto err_free_inst; if (ecb_name[len - 1] != ')') --- linux-intel-opt-6.5.0.orig/crypto/sm2.c +++ linux-intel-opt-6.5.0/crypto/sm2.c @@ -278,10 +278,14 @@ if (!ec) return -ENOMEM; - err = __sm2_set_pub_key(ec, key, keylen); + err = sm2_ec_ctx_init(ec); if (err) goto out_free_ec; + err = __sm2_set_pub_key(ec, key, keylen); + if (err) + goto out_deinit_ec; + bits_len = SM2_DEFAULT_USERID_LEN * 8; entl[0] = bits_len >> 8; entl[1] = bits_len & 0xff; --- linux-intel-opt-6.5.0.orig/crypto/xts.c +++ linux-intel-opt-6.5.0/crypto/xts.c @@ -396,10 +396,10 @@ * cipher name. */ if (!strncmp(cipher_name, "ecb(", 4)) { - unsigned len; + int len; - len = strlcpy(ctx->name, cipher_name + 4, sizeof(ctx->name)); - if (len < 2 || len >= sizeof(ctx->name)) + len = strscpy(ctx->name, cipher_name + 4, sizeof(ctx->name)); + if (len < 2) goto err_free_inst; if (ctx->name[len - 1] != ')') --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/abiname +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/abiname @@ -0,0 +1 @@ +1005 --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/amd64/intel-opt +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/amd64/intel-opt @@ -0,0 +1,26211 @@ +ACPI EXPORT_SYMBOL_GPL 0xa6af1390 acpi_table_parse_cedt vmlinux +BRCMFMAC EXPORT_SYMBOL_GPL 0x91048989 brcmf_fwvid_unregister_vendor drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac +BRCMFMAC EXPORT_SYMBOL_GPL 0xbbf229ec brcmf_fwvid_register_vendor drivers/net/wireless/broadcom/brcm80211/brcmfmac/brcmfmac +COUNTER EXPORT_SYMBOL_GPL 0x13a82dc6 counter_unregister drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0x2ee4c04a counter_alloc drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0x4b2106a3 counter_push_event drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0x5c88063b counter_priv drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0x8a51298b devm_counter_add drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0x8b0da8fa devm_counter_alloc drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0xbdbd3c1c counter_put drivers/counter/counter +COUNTER EXPORT_SYMBOL_GPL 0xf1e8c5ad counter_add drivers/counter/counter +CRYPTO_INTERNAL EXPORT_SYMBOL_GPL 0x09bce895 crypto_cipher_decrypt_one vmlinux +CRYPTO_INTERNAL EXPORT_SYMBOL_GPL 0x5f1a9560 crypto_cipher_encrypt_one vmlinux +CRYPTO_INTERNAL EXPORT_SYMBOL_GPL 0xcd7a34e6 crypto_cipher_setkey vmlinux +CXL EXPORT_SYMBOL_GPL 0x0708982f cxl_enumerate_cmds drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x0709c192 cxl_mem_get_poison drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x089d8ea6 cxl_hb_modulo drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x0a2fc4fb is_endpoint_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x0f6c8fd7 cxl_await_media_ready drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x11249849 to_cxl_nvdimm drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x13d1940e cxl_decoder_autoremove drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x13db8a28 cxl_decoder_add_locked drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x1af4c707 cxl_dpa_debug drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x1bce5a38 cxl_pci_find_port drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x1e03edb8 clear_exclusive_cxl_commands drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x21155775 cxl_port_to_pci_bus drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x24aa47bd cxl_switch_decoder_alloc drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x26ad1d30 cxl_root_decoder_alloc drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x2f21f36c to_cxl_root_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x31e924c8 devm_cxl_add_memdev drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x34b92076 read_cdat_data drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x35e355db devm_cxl_enumerate_decoders drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x3ea73f60 cxl_map_component_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x3fea6360 devm_cxl_register_pci_bus drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x49bb20c2 cxl_mem_sanitize drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x4a377a13 cxl_find_regblock drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x4ba31910 to_cxl_dax_region drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x4ce55ba8 cxl_bus_type drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x4fafeeb5 set_exclusive_cxl_commands drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x591cf912 cxl_mem_find_port drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x5971e374 is_cxl_nvdimm drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x5ac14295 cxl_driver_unregister drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x5c183dd2 cxl_trigger_poison_list drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x61ff68f6 cxl_find_nvdimm_bridge drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x6547a3c4 is_cxl_memdev drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x65c68cae devm_cxl_enumerate_ports drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x6c2ba76e cxl_setup_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x6c505f1d cxl_cor_error_detected drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x6ed6aa5e cxl_map_device_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x6f7024cf to_cxl_endpoint_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x701bbaad cxl_bus_rescan drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x726e1885 devm_cxl_add_nvdimm_bridge drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x785ba13c cxl_debugfs_create_dir drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x7a13c93c cxl_count_regblock drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x7fa19cc4 alloc_free_mem_region vmlinux +CXL EXPORT_SYMBOL_GPL 0x80b6eb68 cxl_probe_component_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x8318d7eb cxl_map_pmu_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x84b45156 insert_resource_expand_to_fit vmlinux +CXL EXPORT_SYMBOL_GPL 0x886738d2 to_cxl_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x898e86ac cxl_mem_create_range_info drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x8c09996a is_cxl_nvdimm_bridge drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x8e9c8a2f cxl_internal_send_cmd drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x94d5ddf2 schedule_cxl_memdev_detach drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x98628ac8 cxl_bus_drain drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x99fc2389 cxl_dev_state_identify drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x9b581694 devm_cxl_port_enumerate_dports drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0x9fe8c775 cxl_decoder_add drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xa51de1af cxl_add_to_region drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xab3d87ac cxl_probe_device_regs drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xaba3cd12 cxl_mem_get_event_records drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xade82e62 find_cxl_root drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xae7f52a6 cxl_clear_poison drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xaf21b4db devm_cxl_add_port drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xb130acdf cxl_hdm_decode_init drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xb2f7ee5c devm_cxl_add_rch_dport drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xb3b74fe4 cxl_rcd_component_reg_phys drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xb9dcb898 is_cxl_region drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xba52e5e3 cxl_set_timestamp drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xbb19f3ed devm_cxl_add_passthrough_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xbb6d012e is_cxl_port drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xbfa8eff0 cxl_endpoint_autoremove drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xc092c3f6 is_root_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xc365cbdc cxl_memdev_setup_fw_upload drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xc73a6a03 to_cxl_switch_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xcbdd768d devm_cxl_dpa_reserve drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xd286f016 devm_cxl_setup_hdm drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xd2c4a73e cxl_find_regblock_instance drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xd69b3c85 to_cxl_pmem_region drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xd8d7d697 cxl_inject_poison drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xdca60c22 cxl_error_detected drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xde42a229 devm_cxl_add_nvdimm drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xe014950b __cxl_driver_register drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xe1f5991f cxl_poison_state_init drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xe5e42cf4 cxl_dvsec_rr_decode drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xe6ad8549 cxl_endpoint_decoder_alloc drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xeaa3bab7 devm_cxl_add_dport drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xefad7a82 devm_cxl_pmu_add drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xf12730c0 to_cxl_port drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xf2af9d2c is_cxl_pmem_region drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xf7077eac is_switch_decoder drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xfc5242f9 cxl_memdev_state_create drivers/cxl/core/cxl_core +CXL EXPORT_SYMBOL_GPL 0xfe88965b to_cxl_nvdimm_bridge drivers/cxl/core/cxl_core +DEVMEM EXPORT_SYMBOL_GPL 0x3c804b25 cpu_cache_invalidate_memregion vmlinux +DEVMEM EXPORT_SYMBOL_GPL 0xd6551b9c cpu_cache_has_invalidate_memregion vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x044d78e5 dma_buf_vunmap_unlocked vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x0617d058 dma_buf_export vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x0ab8187e dma_buf_mmap vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x152bdd33 dma_buf_vmap_unlocked vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x2cebde28 dma_buf_dynamic_attach vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x488962a1 dma_buf_detach vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x4bce1a3d dma_buf_map_attachment vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x51c22345 dma_buf_unmap_attachment vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x6d43d530 dma_buf_put vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x72bd99f2 dma_buf_vunmap vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x7d6add88 dma_buf_get vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x8b4ebd82 dma_buf_move_notify vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x8b8442c4 dma_buf_unpin vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x8bad9db2 dma_buf_end_cpu_access vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0x97dd65bc dma_buf_unmap_attachment_unlocked vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xa147ea24 dma_buf_vmap vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xa4f26fb2 dma_buf_pin vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xc3df1b3d dma_buf_attach vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xca8467d1 dma_buf_fd vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xdffd3746 dma_buf_begin_cpu_access vmlinux +DMA_BUF EXPORT_SYMBOL_GPL 0xe6bda3b5 dma_buf_map_attachment_unlocked vmlinux +DRM_SSD130X EXPORT_SYMBOL_GPL 0x33cf1f58 ssd130x_variants drivers/gpu/drm/solomon/ssd130x +EFIVAR EXPORT_SYMBOL_GPL 0x02cfcd2e efivar_trylock vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0x11940489 efivar_set_variable vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0x2303b915 efivar_lock vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0x5a3c9dbb efivar_get_variable vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0xa336852c efivar_get_next_variable vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0xc961bff7 efivar_unlock vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0xee5240dc efivar_query_variable_info vmlinux +EFIVAR EXPORT_SYMBOL_GPL 0xefc77711 efivar_set_variable_locked vmlinux +EXPORT_SYMBOL arch/x86/crypto/chacha-x86_64 0x220b49ab chacha_crypt_arch +EXPORT_SYMBOL arch/x86/crypto/chacha-x86_64 0xdc94f829 chacha_init_arch +EXPORT_SYMBOL arch/x86/crypto/chacha-x86_64 0xdd8ec6bd hchacha_block_arch +EXPORT_SYMBOL arch/x86/crypto/curve25519-x86_64 0x3c74a43e curve25519_base_arch +EXPORT_SYMBOL arch/x86/crypto/curve25519-x86_64 0xc832c670 curve25519_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xd9ec23eb poly1305_update_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xe1df0e1b poly1305_init_arch +EXPORT_SYMBOL arch/x86/crypto/poly1305-x86_64 0xfaeb41b2 poly1305_final_arch +EXPORT_SYMBOL arch/x86/kvm/kvm 0x48cf8fc8 kvm_mmu_load +EXPORT_SYMBOL arch/x86/kvm/kvm 0x5098d4da kvm_mmu_move_private_pages_from +EXPORT_SYMBOL crypto/blake2b_generic 0x32e24c8a blake2b_compress_generic +EXPORT_SYMBOL crypto/ecc 0x16e410ff vli_from_be64 +EXPORT_SYMBOL crypto/ecc 0x188a1647 ecc_is_pubkey_valid_full +EXPORT_SYMBOL crypto/ecc 0x1a5faa3a vli_mod_inv +EXPORT_SYMBOL crypto/ecc 0x4c281912 vli_is_zero +EXPORT_SYMBOL crypto/ecc 0x671f7aa5 ecc_is_key_valid +EXPORT_SYMBOL crypto/ecc 0x7c0fbb00 vli_mod_mult_slow +EXPORT_SYMBOL crypto/ecc 0x8261eccb ecc_get_curve25519 +EXPORT_SYMBOL crypto/ecc 0x8e688192 ecc_alloc_point +EXPORT_SYMBOL crypto/ecc 0x90cdc197 ecc_free_point +EXPORT_SYMBOL crypto/ecc 0x9263b417 ecc_point_mult_shamir +EXPORT_SYMBOL crypto/ecc 0x92668805 vli_cmp +EXPORT_SYMBOL crypto/ecc 0x932b6ff7 vli_num_bits +EXPORT_SYMBOL crypto/ecc 0x9f6efabd vli_sub +EXPORT_SYMBOL crypto/ecc 0xa76b31a2 crypto_ecdh_shared_secret +EXPORT_SYMBOL crypto/ecc 0xb10fc19e ecc_get_curve +EXPORT_SYMBOL crypto/ecc 0xd6315f31 ecc_gen_privkey +EXPORT_SYMBOL crypto/ecc 0xd94c8eb5 ecc_point_is_zero +EXPORT_SYMBOL crypto/ecc 0xde867c29 ecc_is_pubkey_valid_partial +EXPORT_SYMBOL crypto/ecc 0xeac9b99a vli_from_le64 +EXPORT_SYMBOL crypto/ecc 0xed4ae15e ecc_make_pub_key +EXPORT_SYMBOL crypto/nhpoly1305 0x10c8989d crypto_nhpoly1305_update_helper +EXPORT_SYMBOL crypto/nhpoly1305 0x827a8f0d crypto_nhpoly1305_update +EXPORT_SYMBOL crypto/nhpoly1305 0x8e1ac03b crypto_nhpoly1305_final_helper +EXPORT_SYMBOL crypto/nhpoly1305 0xa7f303be crypto_nhpoly1305_final +EXPORT_SYMBOL crypto/nhpoly1305 0xc84ab0f0 crypto_nhpoly1305_setkey +EXPORT_SYMBOL crypto/nhpoly1305 0xd5a26747 crypto_nhpoly1305_init +EXPORT_SYMBOL crypto/sm4 0x2b098da5 crypto_sm4_ck +EXPORT_SYMBOL crypto/sm4 0x7931a202 crypto_sm4_fk +EXPORT_SYMBOL crypto/sm4 0xf4fd3bd2 crypto_sm4_sbox +EXPORT_SYMBOL crypto/xor 0x5b6c00e6 xor_blocks +EXPORT_SYMBOL drivers/acpi/nfit/nfit 0x06848c60 to_nfit_uuid +EXPORT_SYMBOL drivers/acpi/video 0x45b61916 acpi_video_register_backlight +EXPORT_SYMBOL drivers/acpi/video 0x47ebc21e acpi_video_get_edid +EXPORT_SYMBOL drivers/acpi/video 0x7a45377b acpi_video_unregister +EXPORT_SYMBOL drivers/acpi/video 0x7cc484a5 acpi_video_handles_brightness_key_presses +EXPORT_SYMBOL drivers/acpi/video 0x7de7bf50 __acpi_video_get_backlight_type +EXPORT_SYMBOL drivers/acpi/video 0x8826c13b acpi_video_register +EXPORT_SYMBOL drivers/acpi/video 0xb3a377f2 acpi_video_get_levels +EXPORT_SYMBOL drivers/atm/suni 0x4dda1d1c suni_init +EXPORT_SYMBOL drivers/bcma/bcma 0x97be3c48 bcma_core_dma_translation +EXPORT_SYMBOL drivers/bcma/bcma 0xc7560eef bcma_core_irq +EXPORT_SYMBOL drivers/block/drbd/drbd 0x127a5901 drbd_set_st_err_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x35131b36 drbd_role_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0x7730f22d drbd_conn_str +EXPORT_SYMBOL drivers/block/drbd/drbd 0xaf27bebf drbd_disk_str +EXPORT_SYMBOL drivers/bus/mhi/host/mhi 0x64510705 mhi_sync_power_up +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x03bc993e ipmi_set_my_LUN +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x0705dd14 ipmi_register_for_cmd +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x12dd1e77 ipmi_set_maintenance_mode +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x1f65170f ipmi_alloc_smi_msg +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x230094ac ipmi_smi_watchdog_pretimeout +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x4c2054d7 ipmi_request_settime +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x50f65edf ipmi_set_gets_events +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x54fe2c95 ipmi_add_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x636fad74 ipmi_smi_watcher_register +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x67369b42 ipmi_addr_src_to_str +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x74778a80 ipmi_get_my_LUN +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x804f922a ipmi_addr_length +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x80aa4656 ipmi_free_recv_msg +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x89a5279a ipmi_get_version +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x931ad38d ipmi_smi_watcher_unregister +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x96a6e5e8 ipmi_smi_msg_received +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0x9d6fb996 ipmi_get_smi_info +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xaca90ebd ipmi_request_supply_msgs +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xae71627d ipmi_create_user +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xd54a5050 ipmi_unregister_for_cmd +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xe4330a39 ipmi_unregister_smi +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xe4f4665b ipmi_validate_addr +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xe98c507d ipmb_checksum +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xec1c2a90 ipmi_get_my_address +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xf388b18b ipmi_destroy_user +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xf5531bea ipmi_poll_interface +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xfaaa4831 ipmi_set_my_address +EXPORT_SYMBOL drivers/char/ipmi/ipmi_msghandler 0xfe0f2369 ipmi_get_maintenance_mode +EXPORT_SYMBOL drivers/char/nvram 0x3ef38dc9 arch_nvram_ops +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0x96bb7c82 st33zp24_pm_suspend +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xd23803c6 st33zp24_pm_resume +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xd89580d8 st33zp24_probe +EXPORT_SYMBOL drivers/char/tpm/st33zp24/tpm_st33zp24 0xeccc115c st33zp24_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_class 0x61f032a5 xillybus_find_inode +EXPORT_SYMBOL drivers/char/xillybus/xillybus_class 0x646299bd xillybus_init_chrdev +EXPORT_SYMBOL drivers/char/xillybus/xillybus_class 0xd2851fcd xillybus_cleanup_chrdev +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0x25978d50 xillybus_isr +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xc6cf6961 xillybus_endpoint_discovery +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xd6005af2 xillybus_endpoint_remove +EXPORT_SYMBOL drivers/char/xillybus/xillybus_core 0xef2c0919 xillybus_init_endpoint +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x1d524d8a atmel_i2c_enqueue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x3fce4cac atmel_i2c_send_receive +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x6e4dc8d7 atmel_i2c_probe +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0x80a11b1d atmel_i2c_init_read_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xb6c854bb atmel_i2c_init_ecdh_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc71ed50c atmel_i2c_init_genkey_cmd +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xc80f14e8 atmel_i2c_flush_queue +EXPORT_SYMBOL drivers/crypto/atmel-i2c 0xf283e995 atmel_i2c_init_random_cmd +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x47d3c97f psp_check_tee_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0x4a937398 psp_check_platform_access_status +EXPORT_SYMBOL drivers/crypto/ccp/ccp 0xaa04056c psp_tee_process_cmd +EXPORT_SYMBOL drivers/dma/xilinx/xdma 0x57e2a86d xdma_get_user_irq +EXPORT_SYMBOL drivers/dma/xilinx/xdma 0x5c2ef072 xdma_disable_user_irq +EXPORT_SYMBOL drivers/dma/xilinx/xdma 0xbe6beca9 xdma_enable_user_irq +EXPORT_SYMBOL drivers/firewire/firewire-core 0x00c2a005 fw_iso_buffer_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0776df67 fw_core_handle_request +EXPORT_SYMBOL drivers/firewire/firewire-core 0x0bc6094c fw_core_remove_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x17ed7d20 fw_schedule_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1829d945 fw_device_enable_phys_dma +EXPORT_SYMBOL drivers/firewire/firewire-core 0x1b99db5c fw_core_remove_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x2885fec5 fw_get_request_speed +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3a771e39 fw_core_add_descriptor +EXPORT_SYMBOL drivers/firewire/firewire-core 0x3c56ef91 fw_workqueue +EXPORT_SYMBOL drivers/firewire/firewire-core 0x40440449 fw_iso_buffer_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0x486c1e86 fw_core_remove_card +EXPORT_SYMBOL drivers/firewire/firewire-core 0x4e5e9d4d fw_fill_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0x51c42b82 fw_cancel_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x5a371beb fw_run_transaction +EXPORT_SYMBOL drivers/firewire/firewire-core 0x64d82944 fw_iso_context_stop +EXPORT_SYMBOL drivers/firewire/firewire-core 0x6dc50487 fw_csr_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x86468d44 fw_rcode_string +EXPORT_SYMBOL drivers/firewire/firewire-core 0x8fda6c49 fw_core_add_address_handler +EXPORT_SYMBOL drivers/firewire/firewire-core 0x90bb1cca fw_iso_context_flush_completions +EXPORT_SYMBOL drivers/firewire/firewire-core 0xa8d786ae fw_iso_context_create +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaedf84ce fw_high_memory_region +EXPORT_SYMBOL drivers/firewire/firewire-core 0xaeeb7048 fw_iso_context_queue_flush +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb1fcc0a2 fw_iso_context_queue +EXPORT_SYMBOL drivers/firewire/firewire-core 0xb38f9cbe fw_iso_resource_manage +EXPORT_SYMBOL drivers/firewire/firewire-core 0xbb2b60e1 fw_iso_context_start +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc0f555ff fw_bus_type +EXPORT_SYMBOL drivers/firewire/firewire-core 0xc88a6d7c fw_card_initialize +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd152efec fw_core_handle_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xd9f78390 fw_iso_context_destroy +EXPORT_SYMBOL drivers/firewire/firewire-core 0xdc18dee1 fw_send_response +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe3fde125 fw_csr_iterator_next +EXPORT_SYMBOL drivers/firewire/firewire-core 0xe80e5087 fw_csr_iterator_init +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf218c397 fw_core_handle_bus_reset +EXPORT_SYMBOL drivers/firewire/firewire-core 0xf24e239f fw_card_add +EXPORT_SYMBOL drivers/fpga/dfl 0x2c36c1b4 __dfl_driver_register +EXPORT_SYMBOL drivers/fpga/dfl 0x41fc8156 dfl_driver_unregister +EXPORT_SYMBOL drivers/fpga/lattice-sysconfig 0x57728883 sysconfig_probe +EXPORT_SYMBOL drivers/gpu/drm/amd/amdxcp/amdxcp 0x0ea5d74b amdgpu_xcp_drv_release +EXPORT_SYMBOL drivers/gpu/drm/amd/amdxcp/amdxcp 0x27be3ff2 amdgpu_xcp_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x0142d33e drm_dp_dpcd_write +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x01c4bba9 drm_dp_lttpr_max_link_rate +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x0434ba5f drm_dp_mst_get_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x04d3c847 drm_dp_pcon_pps_override_buf +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x09899529 drm_dp_start_crc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x0d606762 drm_atomic_get_old_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x0d6ba527 drm_dp_check_act_status +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x0f0fc6d5 drm_dp_read_desc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1032bf81 drm_dp_cec_irq +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1605d0ed drm_dp_lttpr_max_lane_count +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1709ddcf drm_dp_lttpr_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x18d03644 drm_edp_backlight_init +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x19de3929 drm_edp_backlight_disable +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1a5bf3ca drm_dsc_dp_rc_buffer_size +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1a73a267 drm_dp_aux_register +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1b0a1fdc drm_dp_lttpr_voltage_swing_level_3_supported +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1e4fce72 drm_dp_add_payload_part1 +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x1fd56859 drm_dp_mst_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x202bc10d drm_dp_mst_atomic_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x23961837 drm_dp_downstream_max_bpc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x24ada755 drm_dsc_set_rc_buf_thresh +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x26815dbc drm_dp_link_rate_to_bw_code +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x285f8f5e drm_dp_downstream_debug +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x2b2b4b6b drm_dp_pcon_frl_prepare +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x2fa94ef2 drm_dp_downstream_444_to_420_conversion +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x3164e1a8 drm_dp_mst_put_port_malloc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x334083ef drm_dp_mst_topology_mgr_suspend +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x335d2787 drm_dp_dual_mode_get_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x353d4145 drm_dp_dual_mode_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x392a838b drm_dp_downstream_max_dotclock +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x3ab47b7f drm_dp_dpcd_read_phy_link_status +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x3b59a099 drm_dp_vsc_sdp_log +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x3fcdafa5 drm_dp_add_payload_part2 +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x40047967 drm_atomic_get_mst_payload_state +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x442a4481 drm_dp_stop_crc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x4603c416 drm_dp_pcon_dsc_bpp_incr +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x46583809 drm_dp_mst_topology_state_funcs +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x522329c9 drm_dp_downstream_mode +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x5407ae9e drm_dp_get_dual_mode_type_name +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x54112814 drm_dp_mst_root_conn_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x56a663e9 drm_dp_dsc_sink_line_buf_depth +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x57d09b4c drm_dp_mst_atomic_enable_dsc +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x582f248e drm_dp_get_adjust_request_pre_emphasis +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x58d8fcaa drm_dsc_pps_payload_pack +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x590af863 drm_dp_pcon_hdmi_link_mode +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x59f27ed7 drm_dp_pcon_enc_is_dsc_1_2 +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x5a86f411 drm_dp_phy_name +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6099248a drm_lspcon_get_mode +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x616f6bcc drm_dp_pcon_frl_configure_1 +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x627ba04b drm_dsc_set_const_params +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x636fd90a drm_dp_pcon_hdmi_link_active +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x63a477fb drm_dp_downstream_min_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x648d953b drm_dsc_dp_pps_header_init +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x66b6a37d drm_dp_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6751e139 drm_dp_downstream_id +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6791cb86 drm_dp_send_power_updown_phy +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x688d57ac drm_dp_mst_topology_mgr_resume +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x68b08711 drm_dp_read_dpcd_caps +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x68d8dce7 drm_dp_downstream_is_tmds +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6a10049e drm_dp_mst_get_edid +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6a4df8c5 drm_dp_128b132b_eq_interlane_align_done +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6aacee47 drm_dp_128b132b_link_training_failed +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6b53e216 drm_dp_downstream_max_tmds_clock +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x6fb47fa1 drm_dp_set_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x7053fa72 drm_dp_get_pcon_max_frl_bw +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x70c0bdd6 drm_dp_pcon_convert_rgb_to_ycbcr +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x719eca5f drm_scdc_get_scrambling_status +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x72f60e31 drm_scdc_read +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x73011db0 drm_dp_bw_code_to_link_rate +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x73a70b38 drm_dp_get_vc_payload_bw +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x73c4e553 drm_dp_get_phy_test_pattern +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x745bb194 drm_connector_attach_content_protection_property +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x75cbd69b drm_scdc_set_scrambling +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x76ff6644 drm_dp_lttpr_pre_emphasis_level_3_supported +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x77760753 drm_hdcp_update_content_protection +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x79008c7e drm_dsc_setup_rc_params +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x7af8252e drm_dp_dpcd_read_link_status +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x7d934ba9 drm_lspcon_set_mode +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x7ef451d6 drm_dp_dual_mode_write +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x800df2a0 drm_dp_send_query_stream_enc_status +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x80b9a040 drm_dp_mst_connector_early_unregister +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8113bda1 drm_dp_read_lttpr_phy_caps +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x829b6048 drm_dp_dsc_sink_max_slice_count +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x835060b9 drm_scdc_write +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x84753697 drm_dp_mst_hpd_irq_handle_event +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x85a01fcd drm_dp_mst_dsc_aux_for_port +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x89b235c6 drm_dp_lttpr_link_train_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8b8d7be6 drm_dp_cec_set_edid +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8ca2d9e4 drm_dp_calc_pbn_mode +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8d701329 drm_dp_clock_recovery_ok +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8f1a9029 drm_hdmi_infoframe_set_hdr_metadata +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x8f95cba7 drm_dp_atomic_release_time_slots +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x927b5568 drm_dp_aux_init +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x92b9835e drm_dp_128b132b_cds_interlane_align_done +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x9431a4ba drm_dp_mst_update_slots +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x95883bb4 drm_dsc_initial_scale_value +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x96035648 drm_dp_mst_add_affected_dsc_crtcs +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x9666829b drm_atomic_get_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x98c1cce0 drm_dp_mst_connector_late_register +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x992fefa7 drm_dp_pcon_hdmi_frl_link_error_count +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0x9f8d5f94 drm_dp_pcon_reset_frl_config +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa183f944 drm_dp_cec_unset_edid +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa1fefe6a drm_dp_psr_setup_time +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa3f439f6 drm_dp_cec_unregister_connector +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa45ee567 drm_dp_mst_edid_read +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa77f2819 drm_dp_read_mst_cap +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xa843606e drm_dp_dsc_sink_supported_input_bpcs +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xaf267620 drm_dp_lttpr_count +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xb049b67f drm_edp_backlight_enable +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xb08d9668 drm_hdmi_avi_infoframe_colorimetry +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xb2d6993f drm_dp_read_downstream_info +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xb77a3fb3 drm_dp_atomic_find_time_slots +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xb7f919cc drm_dp_link_train_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xbc287662 drm_dp_mst_topology_mgr_destroy +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xbd37ddef drm_dp_read_sink_count_cap +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xc020c0c1 drm_dp_pcon_dsc_max_slice_width +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xc5c99a79 drm_dp_get_adjust_request_voltage +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xc79ecffb drm_dp_downstream_is_type +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xc8b6a8ae drm_dp_128b132b_lane_channel_eq_done +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xcc62fe55 drm_dp_dpcd_read +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xccf54d5e drm_dp_get_adjust_tx_ffe_preset +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xcfad8c06 drm_dp_read_sink_count +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xd0e95456 drm_dsc_get_bpp_int +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xd5a95eae drm_dp_128b132b_lane_symbol_locked +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xd908ba28 drm_panel_dp_aux_backlight +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xd921d0fa drm_hdmi_avi_infoframe_content_type +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xd99b45fc drm_dp_pcon_frl_enable +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe021c19c drm_dp_dual_mode_detect +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe2468a48 drm_dsc_flatness_det_thresh +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe2d5f060 drm_edp_backlight_set_level +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe338ba87 drm_dp_pcon_pps_override_param +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe5360b84 drm_dp_pcon_dsc_max_slices +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe576e90a drm_dp_read_channel_eq_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe8462660 drm_hdmi_avi_infoframe_bars +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe90faf7e drm_scdc_set_high_tmds_clock_ratio +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xe987a733 drm_dp_remove_payload +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xeac65250 drm_dp_mst_hpd_irq_send_new_request +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xec6085a7 drm_dp_pcon_pps_default +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xedcf81ce drm_dp_channel_eq_ok +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xee3eee39 drm_dp_read_lttpr_common_caps +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xef9d0cfa drm_dp_mst_topology_mgr_set_mst +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf01a3e7a drm_dp_128b132b_read_aux_rd_interval +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf021e1ee drm_dp_mst_topology_mgr_init +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf144be3b drm_atomic_get_new_mst_topology_state +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf293d766 drm_dp_cec_register_connector +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf300e047 drm_dp_mst_dump_topology +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf3db64c5 drm_dp_remote_aux_init +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf630ad43 drm_dp_dual_mode_read +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf68741fb drm_dp_subconnector_type +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf689ad25 drm_dp_downstream_420_passthrough +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf7bb1135 drm_dp_read_clock_recovery_delay +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf8692b72 drm_dp_mst_detect_port +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf92f2d92 drm_dp_pcon_frl_configure_2 +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xf9f9e5fd drm_dp_pcon_is_frl_ready +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfa217397 drm_dp_set_subconnector_property +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfb1a7a5a drm_dp_downstream_rgb_to_ycbcr_conversion +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfcd05530 drm_dp_send_real_edid_checksum +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfde0dd49 drm_dp_aux_unregister +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfe12bcb9 drm_dsc_compute_rc_parameters +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfe3f3013 drm_dp_dual_mode_set_tmds_output +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xfed97bc7 drm_dp_dpcd_probe +EXPORT_SYMBOL drivers/gpu/drm/display/drm_display_helper 0xffe385ad drm_dp_mst_atomic_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x00323046 drm_plane_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x019ddc92 drm_atomic_state_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0382640d drm_crtc_commit_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x03c63897 __drm_get_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0436cf57 drm_property_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0446edd9 drm_gem_prime_import_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x044b6f29 drm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x04ea70eb drm_compat_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06a026ef drm_send_event_timestamp_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06ca89fc drm_gem_unlock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0x06cc19f9 drm_gem_object_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07e3012a drm_atomic_add_encoder_bridges +EXPORT_SYMBOL drivers/gpu/drm/drm 0x07fb449a drm_vma_offset_manager_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08c7e72f drm_vblank_work_cancel_sync +EXPORT_SYMBOL drivers/gpu/drm/drm 0x08d09cc6 drm_atomic_get_old_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09227a72 drm_modeset_acquire_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09484cdf drm_bridge_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x09d23e87 drm_gem_lru_move_tail +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0a72f765 drm_clflush_virt_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ae8929e drm_crtc_vblank_restore +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b03c9a5 drm_privacy_screen_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0b5464d4 drm_writeback_signal_completion +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0ba90e47 drm_privacy_screen_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c71e2c9 drm_atomic_bridge_chain_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c7acba0 drm_atomic_get_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0c94a727 drm_gem_handle_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d9b4753 drm_mode_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0d9c80bb drm_crtc_accurate_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0e2ed1f9 drm_syncobj_get_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0eb7f5eb drm_privacy_screen_lookup_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f71f0a0 drm_gem_dmabuf_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0f7acb66 drm_mm_print +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fd60df2 drm_get_connector_status_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x0fe31b8c drm_atomic_set_crtc_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107742a9 drm_get_subpixel_order_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x107ee795 drm_get_edid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x108b9f22 drm_debugfs_create_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x112be0a8 drm_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm 0x11529c51 drm_atomic_get_old_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x120bf260 __drm_universal_plane_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x128cb82d drm_gem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x130ab6b8 drm_prime_pages_to_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13873457 drm_mode_create_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13bd6484 drm_atomic_get_new_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13d2d5b8 drm_object_property_get_default_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x13dab04a drm_master_internal_acquire +EXPORT_SYMBOL drivers/gpu/drm/drm 0x142cc5e9 drm_plane_get_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm 0x14549aad drm_encoder_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x15bbfb0c drm_connector_update_privacy_screen +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16b809c8 drm_print_memory_stats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16bddf4e drm_atomic_add_affected_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x16fc58c7 drm_mode_config_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x170930b8 drm_edid_read_custom +EXPORT_SYMBOL drivers/gpu/drm/drm 0x173c2a5b drm_event_reserve_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19879db0 drm_crtc_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x19cb1425 drm_crtc_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1a411479 drm_syncobj_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1acc05cc drm_invalid_op +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b28a8a5 drm_analog_tv_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1b38c8c4 drm_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1c465edb drm_modeset_drop_locks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1d48b17a drm_dev_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1e71c678 drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1f01b712 drm_hdmi_avi_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x1fd44be8 drm_gem_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2183c08c drm_mm_scan_add_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2196f1b6 drm_bridge_chain_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22a1da71 drm_property_add_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0x22f1ee7d drm_crtc_vblank_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24993e50 drm_edid_are_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24cde253 drm_mode_create_tv_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24cf437a drm_vma_node_is_allowed +EXPORT_SYMBOL drivers/gpu/drm/drm 0x24d124ac drm_mode_equal_no_clocks_no_stereo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25262093 drm_crtc_vblank_helper_get_vblank_timestamp +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25981b83 drm_client_modeset_commit_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25ccb670 drm_gem_prime_handle_to_fd +EXPORT_SYMBOL drivers/gpu/drm/drm 0x25daad93 __drm_mm_interval_first +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2754dad8 drm_mm_reserve_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x27b3eab4 drm_gem_map_detach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28779e52 drm_printf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28b81b9d drm_writeback_cleanup_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0x28fe6404 drm_connector_init_with_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x291dc4db drm_client_rotation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29c207a5 drm_edid_read +EXPORT_SYMBOL drivers/gpu/drm/drm 0x29f078d1 drm_mode_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a557714 drm_mode_config_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a962499 drm_mm_scan_init_with_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2a9e0170 __drmm_encoder_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ae85d23 __drmm_universal_plane_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d1466b8 drm_crtc_from_index +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2d24beaa drm_atomic_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2e361485 drm_edid_connector_add_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2ed3c600 drm_mode_debug_printmodeline +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f476172 drm_privacy_screen_lookup_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f63f1da drm_plane_create_zpos_immutable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2f78800e drm_edid_read_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x2fd1a661 drm_atomic_set_mode_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x306bc9f2 drm_framebuffer_unregister_private +EXPORT_SYMBOL drivers/gpu/drm/drm 0x310ed37d drmm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31167969 drmm_kmalloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x31b8a5e3 __drm_set_edid_firmware_path +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32a0cc37 drm_print_bits +EXPORT_SYMBOL drivers/gpu/drm/drm 0x32e50921 drm_crtc_enable_color_mgmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x33cd7801 drm_panel_of_backlight +EXPORT_SYMBOL drivers/gpu/drm/drm 0x353630c1 drm_dev_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35850b0a drm_connector_list_iter_end +EXPORT_SYMBOL drivers/gpu/drm/drm 0x358bf89e drm_gem_vunmap_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35cceddf drm_property_create_bool +EXPORT_SYMBOL drivers/gpu/drm/drm 0x35d14729 drm_panel_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36528770 drm_panel_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36b62055 drm_sysfs_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x36dea860 drm_client_buffer_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x376fbc2f drm_mode_plane_set_obj_prop +EXPORT_SYMBOL drivers/gpu/drm/drm 0x37939ad0 drm_atomic_set_mode_prop_for_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x38690d99 drm_detect_hdmi_monitor +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3871bce3 drm_connector_list_iter_begin +EXPORT_SYMBOL drivers/gpu/drm/drm 0x397c3d27 drm_edid_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3ab87110 drm_mode_equal_no_clocks +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b069800 drm_crtc_create_scaling_filter_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3b0e5e9c __drm_puts_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c22a4d8 drm_vma_offset_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3c842ca2 drm_debugfs_add_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cc98d31 drm_warn_on_modeset_not_all_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3cdc37e9 drm_edid_to_speaker_allocation +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3d8b75b1 drm_syncobj_find_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e44ce0d drm_privacy_screen_get_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3e778fed drm_modeset_lock_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f37fd98 drm_property_create_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x3f405489 __drm_printfn_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0x405d13b8 drm_atomic_set_fb_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x405d7b9c drm_crtc_next_vblank_start +EXPORT_SYMBOL drivers/gpu/drm/drm 0x429c0962 drm_master_internal_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x430582fc drm_property_create_signed_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x431763c7 drm_connector_update_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4403a9c3 drm_mode_get_hv_timing +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4407cfbc drm_mode_create_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4489a5e9 drm_edid_raw +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4575a0ca drm_mode_set_crtcinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x45ca25a3 drm_gem_dmabuf_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4831da6e drm_vma_offset_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x48a583e3 drmm_kfree +EXPORT_SYMBOL drivers/gpu/drm/drm 0x498b0e11 drm_atomic_bridge_chain_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a35d30d drm_mode_set_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4a777672 drm_atomic_get_connector_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4b7ebf95 drm_mm_remove_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c0b6d64 drm_dev_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4c9fba41 drm_property_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4cc1d5de drm_writeback_connector_init_with_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e2a621e drm_prime_sg_to_dma_addr_array +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4e71f192 __drmm_add_action +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4f24f320 drm_gem_lru_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fa20a6e drm_bridge_chain_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x4fb656a1 drm_privacy_screen_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50674de7 drm_timeout_abs_to_jiffies +EXPORT_SYMBOL drivers/gpu/drm/drm 0x50a07b6e drm_plane_create_blend_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51175617 __drm_dev_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51296a58 drm_property_blob_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0x513072fe __drm_puts_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0x51bdb3fa drm_crtc_set_max_vblank_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0x521ad6d0 drm_puts +EXPORT_SYMBOL drivers/gpu/drm/drm 0x52898561 drm_atomic_set_crtc_for_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53058338 drm_connector_attach_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x530cb153 drm_client_buffer_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x531ae38c drm_release_noglobal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x537ab81e drm_plane_force_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x53eb0503 drm_gem_map_attach +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5411a7b9 drm_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x54a1ff15 drm_gem_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5530abaa drm_gem_dma_resv_wait +EXPORT_SYMBOL drivers/gpu/drm/drm 0x55eb38da drm_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0x56eee744 __devm_drm_dev_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57698a50 drm_mm_takedown +EXPORT_SYMBOL drivers/gpu/drm/drm 0x579b4a75 drm_mode_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b67c31 drm_gem_free_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x57b6efe3 drm_ioctl_flags +EXPORT_SYMBOL drivers/gpu/drm/drm 0x59056243 drm_mm_replace_node +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5957c456 drm_plane_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5a9ae19b drm_connector_attach_max_bpc_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5acdb861 drmm_mode_config_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5b1ae622 drm_gem_lru_scan +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5bcb5e57 drm_gtf_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c0e6620 drm_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5c91f7ed drm_color_lut_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d17ff6f drm_connector_oob_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5d4c53c1 drm_add_modes_noedid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ebc8138 drm_connector_attach_privacy_screen_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5ee0a2aa drm_debugfs_add_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f297285 drm_state_dump +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5f7985a5 drm_mm_scan_remove_block +EXPORT_SYMBOL drivers/gpu/drm/drm 0x5fe78811 drm_edid_get_panel_id +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6032540b drm_modeset_lock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60543e7d drm_gem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x60c86384 __drmm_mutex_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6119aa91 drm_mode_create_dp_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x616ea94b drm_gem_object_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x627740be drm_wait_one_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x62822f75 drm_object_property_set_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0x629d50c9 drm_put_dev +EXPORT_SYMBOL drivers/gpu/drm/drm 0x630e7d56 drm_syncobj_add_point +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6441cad4 drm_event_reserve_init_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x649c16b7 drm_master_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x64e1e49d drm_crtc_send_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x651a70a2 drm_atomic_normalize_zpos +EXPORT_SYMBOL drivers/gpu/drm/drm 0x65702bd6 drm_default_rgb_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6597c7c8 drm_gem_prime_import +EXPORT_SYMBOL drivers/gpu/drm/drm 0x66792b3b drm_atomic_get_crtc_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x67d10023 drm_atomic_get_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6910e4cd drm_format_info_min_pitch +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69353664 __drm_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0x69e1bf40 drm_clflush_sg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6aabd0c0 drm_probe_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6ac01ea8 drm_edid_to_sad +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bd74a06 drm_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6bde3007 drm_show_fdinfo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c04e060 drm_crtc_vblank_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c2e5a2c drm_mode_object_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c3833d5 drm_connector_create_privacy_screen_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c582cd3 drm_client_modeset_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6c66cf32 drm_mode_create_dvi_i_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d0cc71c drm_client_modeset_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6d6e6d00 drm_mode_get_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e0a33ee drm_crtc_vblank_count_and_time +EXPORT_SYMBOL drivers/gpu/drm/drm 0x6e5c299c drm_writeback_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71097d57 drm_any_plane_has_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0x71abd9f9 drm_set_preferred_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7239c27b drm_hdmi_vendor_infoframe_from_display_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72735540 drm_crtc_check_viewport +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7273e2c6 drm_atomic_state_default_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x727a46e6 drm_connector_set_link_status_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72a73fe8 drm_send_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x72b4eaad drm_modeset_lock_single_interruptible +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7382596f drm_connector_attach_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x73a3b6d0 drm_mode_create_tv_properties_legacy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x743c51ae drm_dev_printk +EXPORT_SYMBOL drivers/gpu/drm/drm 0x74fc6fbd drm_format_info_block_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0x75f968ff drm_atomic_add_affected_connectors +EXPORT_SYMBOL drivers/gpu/drm/drm 0x768d34ae drm_connector_atomic_hdr_metadata_equal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7691d11e __drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77490952 drm_atomic_state_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x77def66a drm_file_get_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x786187c9 drm_crtc_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0x79c00fa2 drm_edid_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7aa2b08c drm_edid_read_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b04ad59 drm_show_memory_stats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7b2e2166 drm_vma_node_revoke +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bc724d7 drm_mode_find_dmt +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7bcad361 drm_get_edid_switcheroo +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c0d9cad drm_display_info_set_bus_formats +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7c545285 drm_edid_get_monitor_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d192a69 drm_prime_sg_to_page_array +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d8379a5 drm_send_event_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7d9aa1b1 drm_plane_create_rotation_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7dd80dfe drm_privacy_screen_register_notifier +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e3277f8 ___drm_dbg +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7e9d7510 drm_atomic_nonblocking_commit +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7eca2e72 drm_hdmi_avi_infoframe_quant_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0x7edf470b drm_edid_duplicate +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81c2cce6 drm_modeset_unlock +EXPORT_SYMBOL drivers/gpu/drm/drm 0x81e146fa drm_mode_validate_driver +EXPORT_SYMBOL drivers/gpu/drm/drm 0x820ac5c0 drm_vma_node_allow_once +EXPORT_SYMBOL drivers/gpu/drm/drm 0x824634d4 drm_gem_dmabuf_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8258e637 drm_mode_create_aspect_ratio_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8299e9f7 drm_framebuffer_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0x837fb792 drm_property_create_bitmask +EXPORT_SYMBOL drivers/gpu/drm/drm 0x83b6899d drm_atomic_bridge_chain_post_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x84a6c572 drm_gem_prime_export +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86018caa drm_mode_put_tile_group +EXPORT_SYMBOL drivers/gpu/drm/drm 0x863aeee7 drm_vblank_work_flush +EXPORT_SYMBOL drivers/gpu/drm/drm 0x86af9a6b drm_atomic_print_new_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x885d5cf5 drmm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x89a1ded1 drm_atomic_get_new_private_obj_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8a25fe3b drm_crtc_vblank_helper_get_vblank_timestamp_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8b48ec3f drm_connector_list_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8c0d12e7 drm_modeset_acquire_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8d72789e drm_edid_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8ddb410c drm_sysfs_connector_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8de2928d drm_universal_plane_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f3e2971 drm_atomic_state_default_clear +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8f69c6bb drm_client_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0x8fbdd5ac drm_panel_disable +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9023de46 drm_atomic_get_new_connector_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0x914e89e7 drm_plane_enable_fb_damage_clips +EXPORT_SYMBOL drivers/gpu/drm/drm 0x91514d6c drm_poll +EXPORT_SYMBOL drivers/gpu/drm/drm 0x920df619 drm_connector_set_orientation_from_panel +EXPORT_SYMBOL drivers/gpu/drm/drm 0x92c0ba54 drm_edid_override_connector_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0x93cf4707 drm_client_framebuffer_delete +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9491c5ae drm_connector_unregister +EXPORT_SYMBOL drivers/gpu/drm/drm 0x949c369b drm_panel_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x94ee41f7 drm_gem_unmap_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0x963b9535 drm_syncobj_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96942398 drm_connector_set_vrr_capable_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96af35e4 drm_is_current_master +EXPORT_SYMBOL drivers/gpu/drm/drm 0x96dc3ab1 drm_connector_attach_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x97341795 drm_property_replace_global_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9773f354 drm_gtf_mode_complex +EXPORT_SYMBOL drivers/gpu/drm/drm 0x982d09b3 drm_format_info_block_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0x990bb3bd drm_debugfs_remove_files +EXPORT_SYMBOL drivers/gpu/drm/drm 0x999104e2 drm_prime_gem_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9992ead7 drm_vblank_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x999d4ef0 drm_atomic_private_obj_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9a54350b drm_privacy_screen_unregister_notifier +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ac21f5a drm_clflush_pages +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9affc372 drm_aperture_remove_conflicting_pci_framebuffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b285573 drm_match_cea_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b95c885 drm_mode_match +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9b9de1c1 drm_edid_header_is_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9caf142b drm_panel_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9ce050be drm_mode_copy +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d387e75 drm_sysfs_connector_status_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9d8d5aca drm_object_attach_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f318ca1 drm_privacy_screen_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f5d53d0 drm_property_replace_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0x9f769fb2 drm_mode_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa04f12dc drm_dev_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa248afde drm_detect_monitor_audio +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa26f94ec drm_panel_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa283beae drm_privacy_screen_set_sw_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa38c4c94 drm_memcpy_from_wc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa4560de9 drm_connector_attach_dp_subconnector_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa50052c0 drm_edid_connector_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa6b66100 drm_gem_private_object_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa81f3137 drm_crtc_vblank_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa840a384 drm_atomic_check_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa8df32a1 drm_crtc_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa956955b drm_gem_lru_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa957511a drm_plane_create_alpha_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xa9f16954 drm_mode_crtc_set_gamma_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaad823dc drm_syncobj_replace_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xab4f6767 drm_connector_attach_scaling_mode_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xac2e09b2 __drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad4e902b drm_color_ctm_s31_32_to_qm_n +EXPORT_SYMBOL drivers/gpu/drm/drm 0xad98dff7 drm_dev_enter +EXPORT_SYMBOL drivers/gpu/drm/drm 0xae277372 __drm_crtc_commit_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xaf0bfdd3 drm_mode_create_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb043ff6b drm_atomic_get_old_crtc_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb063cf1a drm_property_create_enum +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb086a4c9 drm_gem_dmabuf_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb0a8f69f drm_gem_prime_fd_to_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb11ac7a7 __drm_err +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb14582a0 drm_mode_object_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb1c64173 drm_vblank_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb212dc3e drm_edid_dup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb232a4a3 drm_connector_has_possible_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb29b6423 drm_add_edid_modes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2be9af8 drm_mode_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb2d315d5 drm_client_framebuffer_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3750192 drm_edid_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb3e22c90 drm_dev_has_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb4032484 drm_mm_insert_node_in_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb49f299e drm_mode_validate_ycbcr420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb6127243 drm_need_swiotlb +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb898e3e3 drm_crtc_vblank_off +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9cad492 __drm_atomic_state_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xb9fef41b drm_event_cancel_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba115779 drm_atomic_get_new_crtc_for_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xba230200 drm_gem_prime_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbad63cf0 drm_connector_attach_tv_margin_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb35fe7d drm_gem_vm_close +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbb60b762 drm_syncobj_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbc1b6916 drm_ioctl_kernel +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbebfb39d drm_property_blob_get +EXPORT_SYMBOL drivers/gpu/drm/drm 0xbf483c96 drm_atomic_bridge_chain_pre_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc0705071 drm_bridge_chain_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc10e0e93 drm_framebuffer_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc1b71787 drm_client_framebuffer_flush +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc2b2bfb6 drm_plane_create_color_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc4347aa6 drm_display_mode_from_cea_vic +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc5e9bb43 devm_aperture_acquire_from_firmware +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc70aa64f drm_object_property_get_value +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7901ef1 drm_modeset_backoff +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7910e38 drm_vma_offset_lookup_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xc7d04fc5 drm_vma_node_allow +EXPORT_SYMBOL drivers/gpu/drm/drm 0xccac4259 drm_crtc_arm_vblank_event +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd247b9e drm_atomic_get_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcd5ea5fb drm_gem_lock_reservations +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdad1cb3 drm_gem_lru_move_tail_locked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcdb99cc9 drm_mode_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcf90b7ef drm_client_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfa7b53f drm_mode_create_hdmi_colorspace_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xcfcd4678 drm_property_lookup_blob +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd086aa55 drm_modeset_unlock_all +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd08eb90d drm_crtc_vblank_waitqueue +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd13f9985 drm_edid_block_valid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd1f82bf0 drm_property_create_range +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd24c5559 drm_gem_private_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd24cf719 drm_master_put +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd25ad8db drm_mode_create_from_cmdline_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd2d6fb9a drm_gem_vm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd37459ae drm_connector_set_panel_orientation_with_quirk +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4a3cdf2 drm_gem_dmabuf_release +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd4fb74b5 drm_writeback_get_out_fence +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd5305fef drm_connector_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd535c21d drm_connector_attach_edid_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd60c0c4d drm_gem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd680a377 drm_gem_object_free +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6d4eb27 drm_gem_create_mmap_offset_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd6edd6ad drm_aperture_remove_conflicting_framebuffers +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd7a9cf42 drm_mode_validate_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd8218a29 drm_framebuffer_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd96984e0 drmm_crtc_init_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9bf2b88 __drmm_crtc_alloc_with_planes +EXPORT_SYMBOL drivers/gpu/drm/drm 0xd9fa93d4 drm_mode_create_content_type_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xda35aad7 drm_dev_unplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdad9c8b1 drm_prime_get_contiguous_size +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdb320a08 drm_mode_is_420 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdbeca5e6 drm_atomic_private_obj_fini +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdc2e197c drm_handle_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdcd416b1 drm_client_modeset_probe +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdd3c6afa drm_mode_is_420_also +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdda2d46b drm_plane_get_damage_clips_count +EXPORT_SYMBOL drivers/gpu/drm/drm 0xde59c7b6 drm_modeset_lock_all_ctx +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdeb73595 __drmm_add_action_or_reset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf3f760d drm_mm_scan_color_evict +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdf666902 drm_rotation_simplify +EXPORT_SYMBOL drivers/gpu/drm/drm 0xdff7b11b drm_driver_legacy_fb_format +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe00e4764 drm_atomic_get_old_bridge_state +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe02e0f27 drm_gem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1145f35 drm_connector_set_path_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe1abe315 drm_framebuffer_plane_width +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe224e43d drm_connector_register +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe2aab92e drm_mode_parse_command_line_for_connector +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe317082a __drm_printfn_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3ac15d5 drm_mode_is_420_only +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3c6b154 drm_mode_probed_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe3ffbe52 drm_mode_set_config_internal +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe42d765d drm_mode_prune_invalid +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe432bc7d drm_gem_handle_create +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4595765 drm_noop +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe4adf9be drm_writeback_prepare_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe583a0e8 drm_framebuffer_plane_height +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe5f0e3d6 drm_atomic_state_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe633a4cd drm_format_info_bpp +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe694b48e drm_connector_set_panel_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe6da5582 drm_plane_create_scaling_filter_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe75b8a0b drm_av_sync_delay +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a034df drm_dev_exit +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe8a0e334 drm_vma_offset_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xe9cde89e drm_connector_attach_encoder +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea00fe81 __drm_printfn_coredump +EXPORT_SYMBOL drivers/gpu/drm/drm 0xea850b04 drm_privacy_screen_call_notifier_chain +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb2e7d93 drm_get_format_info +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeb978779 drm_gem_objects_lookup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xebcb982d drm_crtc_vblank_on +EXPORT_SYMBOL drivers/gpu/drm/drm 0xec57a5ba drm_connector_list_update +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed68ca04 drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xed9d8183 drm_framebuffer_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xedbaedfd drm_gem_map_dma_buf +EXPORT_SYMBOL drivers/gpu/drm/drm 0xee97a00c drm_syncobj_get_handle +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeea405b9 drm_client_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xeeb1bfed drm_mode_object_find +EXPORT_SYMBOL drivers/gpu/drm/drm 0xef10cbd3 drm_panel_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf020d39f drm_plane_create_zpos_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf02e518b drm_modeset_lock +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0517d7a drm_mm_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf06336f5 drm_writeback_queue_job +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf095dc96 drm_get_tv_mode_from_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf0b716ab drm_gem_create_mmap_offset +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1421d13 drm_mode_sort +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf1b5340a drm_mode_vrefresh +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf31cc7ea drm_client_dev_hotplug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf406e46a drm_get_connector_type_name +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf4466cd1 drm_connector_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf532384f drm_cvt_mode +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf5ea2220 drm_print_regset32 +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf6a89a8e drm_gem_evict +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf7f7ffeb drm_client_modeset_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf824c7db __drm_printfn_debug +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8483842 drm_gem_vmap_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf8c55b14 drm_connector_attach_privacy_screen_provider +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9a3bfa2 drm_mode_create_suggested_offset_properties +EXPORT_SYMBOL drivers/gpu/drm/drm 0xf9d1b80b drm_connector_attach_hdr_output_metadata_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfaa832f1 drm_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfafaf0e8 drm_property_create_object +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfb02c9a9 drm_open +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfc8f7c7d drm_atomic_bridge_chain_check +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfce52037 drm_connector_set_tile_property +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd62322e drm_gem_object_init +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfd778d0c drm_panel_enable +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfeb953b1 __drm_printfn_seq_file +EXPORT_SYMBOL drivers/gpu/drm/drm 0xff9518e1 devm_drm_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm 0xfff148e7 drm_vblank_work_schedule +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0x22d53779 drm_buddy_free_list +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0x2d9e9583 drm_buddy_print +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0x40d76a49 drm_get_buddy +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0x9f44c898 drm_buddy_init +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0xabb5a026 drm_buddy_block_trim +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0xbd5b3bcc drm_buddy_free_block +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0xc30d71cc drm_buddy_block_print +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0xfa150882 drm_buddy_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_buddy 0xff748b76 drm_buddy_alloc_blocks +EXPORT_SYMBOL drivers/gpu/drm/drm_dma_helper 0x2a92b372 drm_gem_dma_prime_import_sg_table_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_dma_helper 0xba1b88af drm_gem_dma_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_dma_helper 0xd4227e3c drm_fbdev_dma_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0005b759 drm_atomic_helper_wait_for_flip_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0015ddf3 __drmm_simple_encoder_alloc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x001deee1 drm_crtc_helper_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x077f1d50 drm_fb_memcpy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0824b927 drm_atomic_helper_async_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0b9c4753 drm_fb_build_fourcc_list +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x0c052d8d drm_i2c_encoder_restore +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x127a8c6b drm_flip_work_queue +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1306a19d drm_atomic_helper_page_flip +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14d12c29 __drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x14f45643 drm_atomic_helper_check_modeset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1690fc83 drm_atomic_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x177fe8cf drm_gem_simple_kms_end_shadow_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x181e89b5 drm_gem_duplicate_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x18f8098f drm_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1a32d11f __drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1bb8a8f9 drm_fb_xrgb8888_to_argb2101010 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1c1dff4a __drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1d6efb84 drm_helper_probe_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1da4143a drm_helper_connector_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1dce12e6 drm_fb_helper_debug_leave +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f2b5417 drm_atomic_helper_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x1f52be5f drm_fb_helper_lastclose +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x21d541eb drm_flip_work_queue_task +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x23451022 drm_fb_helper_deferred_io +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x239f79a5 drm_panel_bridge_connector +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x24eaccbd drm_gem_simple_kms_duplicate_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x25350b58 __drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x26a74c31 drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x278ae5b5 drm_atomic_helper_setup_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2817049b drm_bridge_is_panel +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2989f978 __drm_atomic_helper_crtc_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29bec156 drm_helper_move_panel_connectors_to_head +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x29d9f519 drm_panel_bridge_remove +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2b1a0a09 drm_atomic_helper_check_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2cbbc94f drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2d50570f drm_rect_calc_hscale +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2db0e3a6 drm_atomic_helper_commit_modeset_disables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2f983cba drm_self_refresh_helper_update_avg_times +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x2fa8c6d2 drm_i2c_encoder_detect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x309baf60 drm_atomic_helper_commit_tail_rpm +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x32c57af6 drm_atomic_helper_commit_modeset_enables +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x35563054 __drm_gem_duplicate_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x36a83e1e drm_helper_mode_fill_fb_struct +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x37e10858 drm_fb_blit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3829a5f7 drm_gem_fb_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3d8ff134 drm_atomic_helper_dirtyfb +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x3f1ba2e8 drm_atomic_helper_commit_tail +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x44d143c7 drm_gem_simple_kms_destroy_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x462fb319 drm_atomic_helper_damage_iter_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x490c5e83 __drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4968a5dd drm_atomic_helper_cleanup_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4970bb0d drm_atomic_helper_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4bfcd3e6 drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4d6cba90 drm_atomic_helper_check_crtc_primary_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x4e514294 drm_atomic_helper_commit_cleanup_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x514e47a6 drm_fb_helper_damage_range +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x52153327 drm_atomic_helper_plane_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5273edd3 drm_plane_helper_disable_primary +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x545ab426 __drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x54cd5dff drm_fb_helper_set_par +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5542443b drm_flip_work_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x590af3e1 drm_crtc_helper_set_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x594dedc7 drm_atomic_helper_async_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a4734d1 drm_kms_helper_is_poll_worker +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5a593982 drm_atomic_helper_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5e717b85 drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f01ae8b drm_atomic_helper_connector_tv_margins_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x5f71a33c __drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6193ad6b drm_kms_helper_poll_reschedule +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x646bc6e5 drm_atomic_helper_commit_hw_done +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x65a6ade2 drm_fb_helper_setcmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x66ea9fe6 drm_plane_helper_atomic_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x688d6078 drm_atomic_helper_bridge_propagate_bus_fmt +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x68f07ef5 drm_atomic_helper_check_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x69cd0755 drm_atomic_helper_connector_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6ae83fad drm_gem_simple_kms_begin_shadow_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b5c2b06 drm_atomic_helper_damage_iter_next +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6b9e948e drm_fb_xrgb8888_to_argb8888 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6cc18eef drm_atomic_helper_check_plane_damage +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6e30ba8e drm_rect_rotate_inv +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x6f85ba62 drm_kms_helper_connector_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x71276e90 drm_atomic_helper_disable_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x714be43b __drm_atomic_helper_private_obj_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x71b2a6aa drm_fb_helper_initial_config +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x731d18ae drm_atomic_helper_page_flip_target +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x73bad515 drm_fb_swab +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x777e21f7 drm_i2c_encoder_mode_fixup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x78b0473a drm_mode_config_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7a9e33c4 drm_kms_helper_poll_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7bd73715 drm_gem_begin_shadow_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7c31630f drm_gem_destroy_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x7fe25f4b drm_atomic_helper_plane_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8039702c drm_atomic_helper_connector_tv_check +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x842dd90c drm_flip_work_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x84935cfd drm_self_refresh_helper_alter_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x86a46e06 drm_self_refresh_helper_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x870b51d8 __drm_atomic_helper_plane_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x871ab41a drm_rect_intersect +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x87a72f67 drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x89e64c52 devm_drm_panel_bridge_add_typed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8bd3f8cd drm_atomic_helper_commit_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c22c8ce drm_atomic_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8c7d3b32 drm_fb_helper_debug_enter +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8d3ddc47 drm_connector_helper_get_modes_fixed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e0bfdd3 drm_gem_fb_end_cpu_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e44977a drm_simple_display_pipe_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8e55a51d drm_atomic_helper_wait_for_vblanks +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f017bef drm_atomic_helper_check_wb_encoder_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x8f7d0ac6 drm_i2c_encoder_commit +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x91fec1cc drm_rect_calc_vscale +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9203b593 drm_plane_helper_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92045973 drm_fb_helper_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x92bc8968 drm_fb_xrgb8888_to_rgb332 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x936c9ef7 __drm_atomic_helper_bridge_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9434fc59 drm_atomic_helper_update_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x974a325a drm_helper_encoder_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x97b6efe9 drm_atomic_helper_commit_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99498876 drm_plane_helper_update_primary +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x99fd20aa drm_rect_clip_scaled +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a5c66fc drm_atomic_helper_calc_timestamping_constants +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9a91b188 drm_panel_bridge_set_orientation +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9c93f8da drm_atomic_helper_prepare_planes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0x9e8c9965 drm_fb_xrgb8888_to_gray8 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa0e2089b drm_connector_helper_get_modes_from_ddc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa31b7802 drm_i2c_encoder_mode_set +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa4cd72d8 drm_fb_helper_output_poll_changed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa675b952 drm_fb_helper_fill_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa790a89c drm_i2c_encoder_prepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa7b2e084 drm_fb_helper_set_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa813f382 drm_atomic_helper_swap_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa8307d31 drm_fb_helper_blank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xa94d1c9c drm_simple_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaa51e30b drm_crtc_helper_set_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xaacd6dbe __drm_atomic_helper_connector_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xab553155 drm_i2c_encoder_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xabb0cc8c drm_fb_xrgb8888_to_mono +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xac3b0657 drm_fb_xrgb8888_to_argb1555 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xacb481a6 drm_connector_helper_tv_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xace0d962 drm_fb_helper_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xadf18b41 drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb053adda drm_rect_rotate +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb07b43ed drm_atomic_helper_bridge_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb096bfa6 drm_atomic_helper_bridge_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb165c3c5 drm_fb_xrgb8888_to_xrgb1555 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb234c0fc drm_fb_helper_unregister_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb3110c69 drm_fb_helper_pan_display +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb4329d1f drm_atomic_helper_crtc_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb463d6fb __drm_atomic_helper_crtc_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb682f679 drm_fb_helper_unprepare +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb6a6b711 drm_fb_clip_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7d4021b drm_fb_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb7fff362 drm_atomic_helper_fake_vblank +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xb84eed08 drm_atomic_helper_resume +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbb9544eb __drm_gem_reset_shadow_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbc585e7b drm_atomic_helper_connector_destroy_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xbc6ae9c2 drm_fb_xrgb8888_to_rgba5551 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc03a832d drm_fb_helper_ioctl +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc0559d59 drm_atomic_helper_shutdown +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc153e625 drm_fb_helper_restore_fbdev_mode_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc25d5f13 drm_mode_config_helper_suspend +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc2e7ed0c drm_gem_fb_destroy +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc3951903 drm_gem_simple_kms_reset_shadow_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc45fde40 drm_atomic_helper_disable_planes_on_crtc +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc4a67642 drm_kms_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6323239 drm_flip_work_cleanup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc6ba8172 drm_connector_helper_get_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc73335d8 drm_helper_crtc_in_use +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc79cf63c drm_gem_reset_shadow_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc7ac72a5 drmm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xc9793c24 drm_kms_helper_poll_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xca72b830 drm_fb_helper_hotplug_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcafb22cc drm_gem_fb_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcb2340b8 drm_rect_debug_print +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xccb5bb5e drm_crtc_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcdb4773b drm_helper_resume_force_mode +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xce08709c drm_i2c_encoder_save +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf11a549 drm_flip_work_allocate_task +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xcf6b91fd drm_atomic_helper_wait_for_dependencies +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd276feaf drm_gem_fb_begin_cpu_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3556110 drm_atomic_helper_connector_tv_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd387902c drm_helper_disable_unused_functions +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3bb38c3 drm_crtc_helper_mode_valid_fixed +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd3d3da1b drm_gem_fb_create_handle +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd4ee4a57 drm_kms_helper_poll_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xd7830ac7 drm_fb_helper_release_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdbd662c6 drm_fb_xrgb8888_to_rgb565 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdc8e37cf drm_kms_helper_poll_enable +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdce5ed72 drm_atomic_helper_damage_merged +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdda2f5cf drm_fb_xrgb8888_to_rgb888 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xdf719b82 drm_fb_xrgb8888_to_xrgb2101010 +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe0412eb9 drm_fbdev_generic_setup +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe085013b drm_fb_helper_check_var +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe086070b drm_self_refresh_helper_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe19714cb drm_fb_helper_damage_area +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe2527ca3 drm_atomic_helper_connector_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe2f54714 drm_gem_end_shadow_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe3102e3b drm_atomic_helper_commit_duplicated_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe842ccc1 drm_helper_force_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe8cf7ce6 drm_helper_probe_single_connector_modes +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xe9da0591 drm_fb_helper_set_suspend_unlocked +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xec63cc64 __drm_atomic_helper_plane_state_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xecf2ea68 drm_fb_helper_alloc_info +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xed44f03a drm_atomic_helper_update_legacy_modeset_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xef13ceb9 __drm_gem_destroy_shadow_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf2086c53 __drm_atomic_helper_crtc_duplicate_state +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf6752704 drm_connector_helper_hpd_irq_event +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf863eb30 drm_i2c_encoder_init +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf8f32c5b drm_i2c_encoder_dpms +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xf90b6f05 drm_atomic_helper_wait_for_fences +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfa228c36 drm_atomic_helper_disable_all +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfabb1695 devm_drm_panel_bridge_add +EXPORT_SYMBOL drivers/gpu/drm/drm_kms_helper 0xfccd9e51 drm_simple_display_pipe_attach_bridge +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x05378dd6 mipi_dbi_spi_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x06d3fc26 mipi_dbi_spi_transfer +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x0f4e717a mipi_dbi_pipe_update +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x103530dd mipi_dbi_command_buf +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x1b62362e mipi_dbi_hw_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x1cdca2d6 mipi_dbi_pipe_destroy_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x3d41892d mipi_dbi_command_read +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x470ca3d3 mipi_dbi_pipe_disable +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x4bd1f72a mipi_dbi_spi_cmd_max_speed +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x67d1be4a mipi_dbi_pipe_duplicate_plane_state +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x74f4c5a5 mipi_dbi_buf_copy +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x79b695b3 mipi_dbi_poweron_conditional_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x898e70e4 mipi_dbi_poweron_reset +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x9071e55e mipi_dbi_dev_init_with_formats +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x961ad75f mipi_dbi_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x96800ccf mipi_dbi_pipe_reset_plane +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0x99c9321e mipi_dbi_pipe_end_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xb38c8833 mipi_dbi_display_is_on +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xc22c4c76 mipi_dbi_dev_init +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xcc9277dc mipi_dbi_pipe_begin_fb_access +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xd031d809 mipi_dbi_pipe_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xdfc9f827 mipi_dbi_enable_flush +EXPORT_SYMBOL drivers/gpu/drm/drm_mipi_dbi 0xebfed394 mipi_dbi_command_stackbuf +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x2a68e1f2 drm_gem_shmem_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x301d7d8f drm_gem_shmem_madvise +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x377de8ad drm_gem_shmem_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x72ebf942 drm_gem_shmem_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x9696db19 drm_gem_shmem_get_pages +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0x9dcc9e24 drm_gem_shmem_purge_locked +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0xad798317 drm_gem_shmem_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0xbe913019 drm_gem_shmem_purge +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0xcd4365d2 drm_gem_shmem_put_pages +EXPORT_SYMBOL drivers/gpu/drm/drm_shmem_helper 0xf74cf372 drm_gem_shmem_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_suballoc_helper 0x048a510f drm_suballoc_manager_init +EXPORT_SYMBOL drivers/gpu/drm/drm_suballoc_helper 0x0bad1988 drm_suballoc_new +EXPORT_SYMBOL drivers/gpu/drm/drm_suballoc_helper 0x8debd4c9 drm_suballoc_free +EXPORT_SYMBOL drivers/gpu/drm/drm_suballoc_helper 0xcfea1bec drm_suballoc_dump_debug_info +EXPORT_SYMBOL drivers/gpu/drm/drm_suballoc_helper 0xdd9c3522 drm_suballoc_manager_fini +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x088364ed drm_gem_ttm_dumb_map_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x0da1f073 drm_gem_ttm_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x479ec26b drm_gem_ttm_print_info +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x66a96c67 drm_gem_ttm_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_ttm_helper 0x8255875b drm_gem_ttm_mmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x016e3971 drm_gem_vram_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x01d6d425 drm_gem_vram_put +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x1313da9c drm_gem_vram_plane_helper_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x2a26e3b0 drm_gem_vram_fill_create_dumb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x30836cae drm_gem_vram_vunmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x3ee55be4 drm_gem_vram_vmap +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x48c1689e drm_gem_vram_simple_display_pipe_cleanup_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x50b02a8c drm_gem_vram_unpin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0x8a4804da drm_vram_mm_debugfs_init +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa036b1ac drm_gem_vram_driver_dumb_create +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xa0d4dc0c drm_gem_vram_offset +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xb0cf4706 drm_vram_helper_mode_valid +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xcb264652 drm_gem_vram_pin +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xd32c381c drm_gem_vram_plane_helper_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xdd817879 drm_gem_vram_simple_display_pipe_prepare_fb +EXPORT_SYMBOL drivers/gpu/drm/drm_vram_helper 0xf5e6835d drmm_vram_helper_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x02fb1b38 drm_sched_job_add_syncobj_dependency +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x0613dc48 drm_sched_resume_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x082812c8 drm_sched_job_add_resv_dependencies +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x12232f0e drm_sched_job_arm +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x12438190 drm_sched_start +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x139de779 drm_sched_pick_best +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x1a492da1 drm_sched_entity_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x36ea2852 drm_sched_suspend_timeout +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x4faa3b3a drm_sched_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x514a7959 drm_sched_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x52ab11c9 drm_sched_entity_destroy +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x535b5d20 drm_sched_entity_push_job +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x57935905 drm_sched_job_init +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x688a598c drm_sched_entity_set_priority +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x7a131f03 drm_sched_resubmit_jobs +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0x9478fbf3 drm_sched_stop +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa47693d2 drm_sched_job_cleanup +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa8053c74 drm_sched_increase_karma +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xa8c69fd2 drm_sched_entity_flush +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xae405139 drm_sched_entity_error +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xae7bb563 drm_sched_job_add_dependency +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xcf7e74cd drm_sched_entity_fini +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xe7019c02 drm_sched_entity_modify_sched +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xee9bc89a drm_sched_fault +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf5231713 to_drm_sched_fence +EXPORT_SYMBOL drivers/gpu/drm/scheduler/gpu-sched 0xf88b3fc4 drm_sched_job_add_implicit_dependencies +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0741a3c3 ttm_bo_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x0ee63882 ttm_tt_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x152ec019 ttm_bo_vm_dummy_page +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1a71d30c ttm_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x1d479cae ttm_bo_vm_open +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x212e7c96 ttm_bo_kmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x22aa181a ttm_bo_mem_space +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x244cce9f ttm_device_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2a9e5bab ttm_kmap_iter_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2b31a992 ttm_eu_fence_buffer_objects +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2bdeda9b ttm_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2dd55354 ttm_pool_alloc +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x2fac9507 ttm_io_prot +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3014e3e1 ttm_lru_bulk_move_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x31877525 ttm_bo_init_validate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3cd11c0d ttm_tt_populate +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x3ee0f7dd ttm_eu_reserve_buffers +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x40d7e6fd ttm_pool_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x49b5da33 ttm_bo_vm_fault +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x517c5c12 ttm_agp_is_bound +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x51eca6e5 ttm_bo_set_bulk_move +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55e9e0ff ttm_bo_kunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x55faf8a9 ttm_resource_manager_usage +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x59abd608 ttm_bo_move_to_lru_tail +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6284e380 ttm_bo_move_memcpy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x68c165d5 ttm_device_swapout +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x69cc2943 ttm_tt_pages_limit +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x6a847134 ttm_kmap_iter_iomap_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x70815634 ttm_resource_manager_debug +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x742e881c ttm_bo_vmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x75d9e878 ttm_pool_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x821d7e23 ttm_agp_tt_create +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x894dba09 ttm_agp_unbind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x90073952 ttm_range_man_init_nocheck +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x92def799 ttm_device_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x95ae225a ttm_bo_unmap_virtual +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x966fca1f ttm_bo_move_accel_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0x9a1781f3 ttm_pool_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xa7e0a87f ttm_resource_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xad6e1eb5 ttm_bo_vm_reserve +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae162ef4 ttm_resource_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xae29573f ttm_bo_eviction_valuable +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb66e5695 ttm_bo_move_sync_cleanup +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6a6deab ttm_lru_bulk_move_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb6f2f50e ttm_bo_mmap_obj +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xb9c331b2 ttm_bo_put +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xbd517505 ttm_bo_vunmap +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc09597a2 ttm_bo_vm_close +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc1db94bf ttm_device_clear_dma_mappings +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xc4f98546 ttm_resource_manager_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcbd32b5d ttm_range_man_fini_nocheck +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcd938092 ttm_bo_init_reserved +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xcda87a0d ttm_agp_bind +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce43436f ttm_resource_fini +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xce609f4a ttm_eu_backoff_reservation +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd3704f7a ttm_bo_unpin +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xd8ab9b8f ttm_bo_pin +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xdbab1f22 ttm_bo_vm_access +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe084b4b3 ttm_agp_destroy +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xe5ec585e ttm_glob +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf53b90f3 ttm_sg_tt_init +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf6767826 ttm_pool_free +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf8787506 ttm_bo_wait_ctx +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xf99d28d3 ttm_resource_manager_evict_all +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfb1234de ttm_resource_manager_create_debugfs +EXPORT_SYMBOL drivers/gpu/drm/ttm/ttm 0xfe8a3245 ttm_bo_vm_fault_reserved +EXPORT_SYMBOL drivers/hid/hid 0x5c14008d hid_bus_type +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0e1d21ec ishtp_cl_unlink +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x0f970ef5 ishtp_send_resume +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x10270581 ishtp_start +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x125100e3 ishtp_recv +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x15f9d642 ishtp_trace_callback +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x1953844b ishtp_put_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2798ed66 ishtp_cl_free +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x2a2fdad2 ishtp_get_ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x37b524a5 ishtp_set_tx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x3c068dc9 ishtp_cl_connect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4108ce51 ishtp_cl_io_rb_recycle +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x4abd5f6a ishtp_get_pci_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x557eb21d ishtp_device_init +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5c9637f9 ishtp_bus_remove_all_clients +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5d656d97 ishtp_register_event_cb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f240e33 ishtp_cl_tx_empty +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x5f9b0501 ishtp_get_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6207d431 ishtp_cl_driver_register +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x661cf711 ishtp_cl_link +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6b2b5a69 ishtp_dev_to_cl_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6c326b0c ishtp_set_rx_ring_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x6d4626bc ishtp_cl_set_fw_client_id +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x73402c39 ishtp_reset_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x74339d2a ishtp_cl_disconnect +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x74c14970 ishtp_cl_get_tx_free_rings +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x7b0d6edd ishtp_cl_driver_unregister +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x8df2f036 ishtp_cl_send +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x987930cb ishtp_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0x9bc9e1e5 ishtp_get_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa46e9cfe ishtp_get_device +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xa832f260 ishtp_set_connection_state +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb1af3d36 ishtp_reset_compl_handler +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb397879e ishtp_send_suspend +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xb53c44a1 ishtp_get_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xbff55390 ishtp_set_client_data +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xcce1a07e ishtp_set_drvdata +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd673bb93 ishtp_cl_rx_get_rb +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xd7efb6c9 ishtp_fw_cl_by_uuid +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xdcc7319f ishtp_cl_allocate +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe079f8b4 ishtp_cl_get_tx_free_buffer_size +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xe302e562 ishtp_cl_flush_queues +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xf260ddc1 ish_hw_reset +EXPORT_SYMBOL drivers/hid/intel-ish-hid/intel-ishtp 0xfb9c988e ishtp_fw_cl_get_client +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x4d43a83c vmbus_sendpacket_getid +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x7924220d vmbus_recvpacket +EXPORT_SYMBOL drivers/hv/hv_vmbus 0x87a55476 vmbus_sendpacket +EXPORT_SYMBOL drivers/hwmon/adt7x10 0x14fdb974 adt7x10_dev_pm_ops +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x2f9e7f8e vid_which_vrm +EXPORT_SYMBOL drivers/hwmon/hwmon-vid 0x446615bd vid_from_reg +EXPORT_SYMBOL drivers/hwmon/ltc2947-core 0x5aa0ff99 ltc2947_pm_ops +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x01568393 sch56xx_read_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x78dc1bc1 sch56xx_watchdog_register +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0x96ec3b26 sch56xx_read_virtual_reg12 +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xaa17a737 sch56xx_write_virtual_reg +EXPORT_SYMBOL drivers/hwmon/sch56xx-common 0xb37b9b81 sch56xx_read_virtual_reg16 +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x27487f9f i2c_bit_algo +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0x857336bd i2c_bit_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-bit 0xd74c3b74 i2c_bit_add_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x1c6aa4ad i2c_pca_add_numbered_bus +EXPORT_SYMBOL drivers/i2c/algos/i2c-algo-pca 0x83db6558 i2c_pca_add_bus +EXPORT_SYMBOL drivers/i2c/busses/i2c-amd756 0xc20d4ae4 amd756_smbus +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x10a4c688 qcom_adc5_hw_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x1fcd0103 qcom_adc_tm5_gen2_temp_res_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x39885d6b qcom_adc_tm5_temp_volt_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x401dc869 qcom_vadc_scale +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x47f699dd qcom_adc5_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x4e64cdb9 qcom_adc5_hw_settle_time_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x53546ecd qcom_adc5_avg_samples_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0x70e6eca1 qcom_vadc_decimation_from_dt +EXPORT_SYMBOL drivers/iio/adc/qcom-vadc-common 0xc61e7a34 qcom_adc5_prescaling_from_dt +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xcbb399b1 iio_triggered_buffer_cleanup +EXPORT_SYMBOL drivers/iio/buffer/industrialio-triggered-buffer 0xee570370 iio_triggered_buffer_setup_ext +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xd83e06e5 iio_kfifo_allocate +EXPORT_SYMBOL drivers/iio/buffer/kfifo_buf 0xdd78a251 iio_kfifo_free +EXPORT_SYMBOL drivers/iio/imu/fxos8700_core 0xc6424e6b fxos8700_regmap_config +EXPORT_SYMBOL drivers/iio/industrialio 0x0906e8c5 iio_read_const_attr +EXPORT_SYMBOL drivers/iio/industrialio 0x18039ca7 iio_device_free +EXPORT_SYMBOL drivers/iio/industrialio 0x1869041d iio_trigger_set_immutable +EXPORT_SYMBOL drivers/iio/industrialio 0x2d6bcdcb iio_trigger_generic_data_rdy_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x2f4368a5 iio_trigger_free +EXPORT_SYMBOL drivers/iio/industrialio 0x36512927 iio_device_set_clock +EXPORT_SYMBOL drivers/iio/industrialio 0x45d46a1e iio_trigger_register +EXPORT_SYMBOL drivers/iio/industrialio 0x4ba9d04f __iio_trigger_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0x84e2630d iio_trigger_poll +EXPORT_SYMBOL drivers/iio/industrialio 0x8f1e0e99 iio_get_time_ns +EXPORT_SYMBOL drivers/iio/industrialio 0x94cce79f iio_trigger_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0x9b155b0e iio_trigger_notify_done +EXPORT_SYMBOL drivers/iio/industrialio 0x9fbbebef iio_bus_type +EXPORT_SYMBOL drivers/iio/industrialio 0xa42c7cc4 iio_trigger_poll_nested +EXPORT_SYMBOL drivers/iio/industrialio 0xab3e3bba iio_buffer_init +EXPORT_SYMBOL drivers/iio/industrialio 0xb1482876 iio_device_alloc +EXPORT_SYMBOL drivers/iio/industrialio 0xc97ae49c iio_push_event +EXPORT_SYMBOL drivers/iio/industrialio 0xcc6b39f9 iio_trigger_validate_own_device +EXPORT_SYMBOL drivers/iio/industrialio 0xddc33b55 __iio_device_register +EXPORT_SYMBOL drivers/iio/industrialio 0xdf76bbeb iio_pollfunc_store_time +EXPORT_SYMBOL drivers/iio/industrialio 0xeda02b92 iio_device_get_clock +EXPORT_SYMBOL drivers/iio/industrialio 0xf40111dd iio_device_unregister +EXPORT_SYMBOL drivers/iio/industrialio 0xface3d48 iio_trigger_using_own +EXPORT_SYMBOL drivers/iio/industrialio 0xfb695b2c iio_read_mount_matrix +EXPORT_SYMBOL drivers/iio/industrialio-configfs 0xfbab9bde iio_configfs_subsys +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x149e9fb3 iio_sw_device_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x22633709 iio_register_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0x62263bac iio_unregister_sw_device_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-device 0xc9c662d1 iio_sw_device_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x38d2dc16 iio_unregister_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x3d3ef8e9 iio_sw_trigger_destroy +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x3f156a0d iio_sw_trigger_create +EXPORT_SYMBOL drivers/iio/industrialio-sw-trigger 0x6398143d iio_register_sw_trigger_type +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x11afae5b iio_triggered_event_setup +EXPORT_SYMBOL drivers/iio/industrialio-triggered-event 0x7ee60074 iio_triggered_event_cleanup +EXPORT_SYMBOL drivers/iio/pressure/bmp280 0x9b05774c bmp280_dev_pm_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x0f42edbc ib_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x15628923 ib_send_cm_sidr_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x31fb9746 ib_send_cm_dreq +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x53833d39 ib_send_cm_rej +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x5e1b0a63 ib_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x67f09e18 ib_send_cm_sidr_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x67f82b74 ib_send_cm_rep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x69824a14 ibcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0x7fae4ff4 ib_send_cm_drep +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xa1e1e4dc ib_send_cm_req +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xaa14d782 ib_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb3588b0b ib_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xb9e8b039 ib_send_cm_rtu +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xe3749fda ib_cm_insert_listen +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xf051def0 ib_cm_notify +EXPORT_SYMBOL drivers/infiniband/core/ib_cm 0xfd573437 ib_send_cm_mra +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x00cd25ea ib_get_rdma_header_version +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x04e7b3f8 ib_register_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x05a6dd80 ib_get_cached_subnet_prefix +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x063b3070 ibdev_crit +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06808c4c rdma_restrack_set_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x06c249cd ib_attach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0737cac9 ib_get_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0a5411d2 ib_resize_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bf05ae8 ib_device_get_by_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bf0ab31 rdma_get_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0bf961e6 rdma_move_grh_sgid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c86f5cb ib_sa_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0c9926de ib_unregister_device_and_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0d3354a6 rdma_alloc_hw_stats_struct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0dd76341 rdma_create_user_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x0f4774e9 ib_init_ah_from_mcmember +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1138d2c5 ib_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x114be375 ibnl_put_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x123c0927 ib_rdmacg_uncharge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x12ee3b7a rdma_nl_put_driver_u64_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x13b87352 ib_sa_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x162800cd roce_gid_type_mask_support +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x176e2b60 ib_get_device_fw_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x19e7490f __rdma_block_iter_next +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b735814 ib_find_exact_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1b7834f0 ib_port_register_client_groups +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1bfc4b47 ib_create_qp_kernel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1c87713e rdma_restrack_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1d47af79 ib_set_vf_guid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x1e0e0dae rdma_rw_ctx_post +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x217d0b58 rdma_nl_unicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x21e2bd1a ib_set_vf_link_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22bc18f9 ib_dereg_mr_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x22f3cf93 ib_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x29e24679 rdma_find_gid_by_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a29cd40 ib_get_vf_stats +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2a71cd51 rdma_nl_stat_hwcounter_entry +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2d9b11b4 ibnl_put_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x2f05ae44 ib_create_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x305e5701 rdma_addr_size_kss +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30bb455e rdma_rw_ctx_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x30d1db55 ib_get_net_dev_by_params +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3206ddc1 rdma_rw_mr_factor +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x328a2e51 rdma_nl_put_driver_u64 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x33094ffd rdma_restrack_parent_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x336e2021 ib_free_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x34e32a6f ibdev_alert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x35df1661 ib_reg_user_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x387869bb ib_check_mr_status +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3927cd2e ib_advise_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x39d67248 ib_cq_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3ade4aa8 ibdev_printk +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b2990ee rdma_nl_unicast_wait +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3b46a2a6 ib_get_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bae4ec0 rdma_resolve_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3bc2aef6 rdma_restrack_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3c933bbe rdma_nl_put_driver_u32 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3d980c5a ib_query_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3e03d795 ibdev_emerg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x3fc2387c ib_ud_header_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42bef7ae ib_query_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x42dc23e4 rdma_hold_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x434c5d10 zgid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x439ce33c ib_sa_unregister_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x44da8b1b rdma_user_mmap_entry_get_pgoff +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x45fb8985 rdma_nl_chk_listeners +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x465bf9cc ib_destroy_qp_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x471fe6eb rdma_restrack_del +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x49c8ce48 ib_query_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ac682c3 ib_destroy_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4af1aa16 ib_register_client +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4c808183 __ib_alloc_pd +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4d55eb4a rdma_addr_cancel +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4de4c2f2 rdma_set_cq_moderation +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e155af0 ib_response_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4e90435c ib_sa_free_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x4ecd59a9 rdma_query_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x508f1980 ib_process_cq_direct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50d62167 ib_unregister_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x50e38c0f ibdev_err +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x55bb02f3 ib_cache_gid_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x56316480 ib_dispatch_event +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x571470da __rdma_block_iter_start +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x58df5b94 ib_get_gids_from_rdma_hdr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5cb99d13 ib_create_qp_security +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5d154e63 ib_alloc_mr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5f3a2c89 rdma_init_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x5fb423a1 ib_get_cached_port_state +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x613b1e2e ib_is_mad_class_rmpp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61976aba ib_drain_sq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x61d24c52 ib_rate_to_mbps +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x62ee131e ib_free_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x643f74c5 ib_set_client_data +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x69a9cfd1 rdma_modify_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6b958320 ib_ud_ip4_csum +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d4d15d4 rdma_restrack_count +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6d8cb05d ibdev_warn +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f2ceefb ib_create_srq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x6f3614b6 rdma_is_zero_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x70807834 rdma_addr_size +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71257b91 ib_unregister_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x71392e7b rdma_put_gid_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7233b7a2 rdma_translate_ip +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x73baf9a2 ib_modify_qp_is_ok +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x740d5aca rdma_replace_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x74a71543 rdma_roce_rescan_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x74c0c666 rdma_nl_put_driver_string +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75a729a0 rdma_nl_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75b6d8fe ib_register_event_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x75fa79cd rdma_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x76438a7d ib_port_unregister_client_groups +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7655ae36 ibdev_info +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x779aa297 rdma_user_mmap_io +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x77b2f3f6 ib_device_set_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x787ccc4c ib_get_mad_data_offset +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79882cab rdma_restrack_get_byid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x79e633fa rdma_read_gid_l2_fields +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7ccdda53 ib_mad_kernel_rmpp_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x7fb4481e ib_mr_pool_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x80857221 rdma_dev_access_netns +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x819f157f ib_destroy_cq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x82350d23 rdma_query_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x836ab67b rdma_rw_ctx_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8433b7ae ib_dealloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x84618b2d ib_port_sysfs_get_ibdev_kobj +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x84de6c2c rdma_nl_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x86f4f4b8 ib_modify_qp_with_udata +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x893a2300 ib_modify_srq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8961bb51 ib_find_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8a4c7b51 ib_sg_to_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8b86e0e1 ib_qp_usecnt_inc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c33e97c ib_mr_pool_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8c764210 rdma_user_mmap_entry_insert +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8ddab0b1 ib_unregister_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e340793 __ib_create_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x8e6c3f63 ib_get_rmpp_segment +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x905a2375 rdma_user_mmap_entry_insert_range +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x90e807c7 ib_cache_gid_parse_type_str +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x94680a43 ibdev_notice +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99cdcc2c ib_create_ah_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x99f77dda rdma_link_unregister +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9a666f6d ib_query_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9bd413f4 rdma_nl_put_driver_u32_hex +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9cd620c1 ib_drain_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9d765813 ib_post_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0x9e73126b rdma_user_mmap_entry_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa34bfa83 rdma_umap_priv_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa432baf6 ib_unpack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xa907ef90 rdma_port_get_link_layer +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xaa31022f ib_unregister_device_queued +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xad800b89 rdma_rw_ctx_destroy_signature +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xae956dce ib_rate_to_mult +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafafb064 ib_init_ah_attr_from_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafcc8c3e rdma_destroy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xafd47bdc ib_set_device_ops +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb0ee0bf9 ib_sa_path_rec_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb1d74806 ib_map_mr_sg_pi +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb4c40040 ib_sa_pack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb729d9aa ib_detach_mcast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb7852a05 ib_ud_header_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb893214c rdma_read_gid_attr_ndev_rcu +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb8d8373a ib_free_recv_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb90d4573 ib_drain_rq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb93e40d0 rdma_restrack_new +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xb9e1cf94 rdma_rw_ctx_signature_init +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbd08bb25 ib_modify_port +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbedfeb9d ib_cq_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xbee6c941 rdma_query_gid_table +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc076ef6e ib_close_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc0fefe1b ib_create_send_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc20e30d6 rdma_user_mmap_entry_get +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc312dec9 ib_register_mad_agent +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc3c22cbc ib_dma_virt_map_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc41577a8 ib_modify_mad +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc469711b _ib_alloc_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc52f1e79 ib_modify_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc5746e4d ib_device_get_by_name +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc60f3cf8 ib_create_wq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc73042dd ib_mr_pool_destroy +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc8d38664 rdma_free_hw_stats_struct +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xc9030d52 rdma_move_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcb8beaa3 rdma_restrack_add +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcbbef4bc __ib_alloc_cq +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xcfb3fea6 ib_rdmacg_try_charge +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0478dc4 ib_unregister_driver +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd0fd7777 ib_find_cached_pkey +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd1ad92eb rdma_link_register +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd21bb37a ib_sa_unpack_path +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd31ade6c ib_alloc_xrcd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd6636ca6 rdma_addr_size_in6 +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd73b14d0 ib_get_cached_lmc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd792f772 ib_dealloc_pd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xd814f77f ib_modify_device +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0001ee rdma_create_ah +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xda0d50ec ib_sa_cancel_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc7ad8d7 rdma_rw_ctx_wrs +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc7cc33d ib_mr_pool_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdc7f5228 ib_map_mr_sg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xdfac0326 rdma_read_gid_hw_context +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3399429 ib_destroy_wq_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe3a1f29e ib_alloc_mr_integrity +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe5840ec6 ib_wc_status_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe603db02 __ib_alloc_cq_any +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe61fa074 rdma_copy_src_l2_addr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe6fe9e57 ib_find_gid +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe7b52e5f mult_to_ib_rate +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe8ff837f ib_qp_usecnt_dec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe957cd70 ib_port_immutable_read +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe96d57c6 ib_get_vf_config +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xe9e799fc ib_ud_header_pack +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeb5647b8 rdma_alloc_netdev +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xeb5d3d5d ib_sa_guid_info_rec_query +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee202aab ib_open_qp +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xee417f5b ib_init_ah_attr_from_wc +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0213f7b ib_get_eth_speed +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf0496d60 rdma_copy_ah_attr +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf09d1ce8 rdma_nl_multicast +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf46d0ee0 rdma_destroy_ah_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf5dedb30 rdma_node_get_transport +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf6ed3334 ib_event_msg +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf78db201 ib_sa_get_mcmember_rec +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf7c86c14 ib_device_put +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xf9911c77 ib_dealloc_xrcd_user +EXPORT_SYMBOL drivers/infiniband/core/ib_core 0xfe1c65c6 rdma_user_mmap_entry_remove +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x04189875 ib_umem_odp_alloc_child +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x0b474a41 ib_umem_copy_from +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x144f1e03 ib_umem_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1a7d1892 uverbs_fd_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1ac54153 _uverbs_get_const_signed +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x1e41b997 ib_uverbs_flow_resources_free +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x22f0f9c2 ib_umem_odp_alloc_implicit +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x25fa8569 ib_umem_odp_unmap_dma_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x2ffd26e1 flow_resources_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x30f20e84 uverbs_get_flags32 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x36c34dc6 ib_copy_path_rec_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x37dfd3a3 ib_copy_ah_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x39fb4b05 uverbs_get_flags64 +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x3ba5ea97 ib_copy_qp_attr_to_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x68e10a42 _uverbs_get_const_unsigned +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x698c44fe uverbs_idr_class +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x6a770e58 _uverbs_alloc +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x754b0000 ib_copy_path_rec_from_user +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7b68dfc7 ib_umem_dmabuf_get_pinned +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x7bb27252 ib_umem_dmabuf_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x837852df ib_umem_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x842213cd uverbs_copy_to +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x8a226496 uverbs_destroy_def_handler +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x96c8e6a9 uverbs_copy_to_struct_or_zero +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0x9b73bec0 ib_umem_dmabuf_unmap_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa7157275 ib_umem_odp_map_dma_and_lock +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xa88fd148 ib_umem_odp_get +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xacf940b8 uverbs_uobject_fd_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xbf10ab2c flow_resources_add +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xc83062e3 ib_uverbs_get_ucontext_file +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xeb88e63c ib_umem_find_best_pgsz +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xef3d6cac ib_umem_dmabuf_map_pages +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf1509229 uverbs_finalize_uobj_create +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xf91028e8 ib_umem_odp_release +EXPORT_SYMBOL drivers/infiniband/core/ib_uverbs 0xfc8276f9 uverbs_uobject_put +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x0f7b2484 iw_cm_disconnect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x461daecc iw_cm_accept +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x5182186c iw_cm_connect +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x668b1d01 iw_destroy_cm_id +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x77c5c884 iw_cm_listen +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0x8dc6adb6 iw_cm_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xd591d7af iw_cm_reject +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xf3df871f iwcm_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/iw_cm 0xff74243c iw_create_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x03284b10 rdma_lock_handler +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x05fb5220 rdma_listen +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x1075d398 rdma_resolve_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x12d680c5 rdma_bind_addr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x16baf8e7 rdma_accept +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x304072df rdma_iw_cm_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x42f3d4e3 rdma_reject_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x48495ec8 rdma_set_afonly +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x4d1c7895 rdma_connect_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x63d9de7c rdma_init_qp_attr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x64f42d81 rdma_destroy_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x69b0ac3e rdma_notify +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x755f7e3f rdma_disconnect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x76fd2654 rdma_connect_locked +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x85820c8d rdma_accept_ece +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x87aa954f rdma_destroy_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x88eb4b63 rdma_set_reuseaddr +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x8e3b0e49 rdma_set_ib_path +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x907df803 rdma_event_msg +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x942cbb4e rdma_set_service_type +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0x9691c801 rdma_get_service_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa1a40f5e __rdma_create_kernel_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa3d989fa rdma_create_qp +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xa68e2c07 rdma_connect +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xaaef94bd rdma_read_gids +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xc695a2e1 rdma_unlock_handler +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xca67681e rdma_leave_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xd3630709 rdma_consumer_reject_data +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xda8f9ae1 rdma_res_to_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe342ae92 rdma_reject +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe5a324fa rdma_create_user_id +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xe715fe13 rdma_resolve_route +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xed8b8e9c rdma_join_multicast +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xee98f74b rdma_set_ack_timeout +EXPORT_SYMBOL drivers/infiniband/core/rdma_cm 0xfce5e02c rdma_set_min_rnr_timer +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x06b6c050 rvt_fast_reg_mr +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x085171ec rvt_lkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x0e385842 ib_rvt_state_ops +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x0fe53442 rvt_register_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x191e32f8 rvt_alloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x272a6e44 rvt_send_complete +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x374fdc85 rvt_qp_iter_init +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x4110548f rvt_init_port +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x48defe02 rvt_add_retry_timer_ext +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x528a22d2 rvt_ruc_loopback +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x58d26fc3 rvt_comm_est +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x5ca9151d rvt_dealloc_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x5e9b3127 rvt_cq_enter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x675473d1 rvt_del_timers_sync +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x6849863a rvt_copy_sge +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x73b3f3d6 rvt_qp_iter +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x7a8eef5a rvt_restart_sge +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0x9ff43d6a rvt_qp_iter_next +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xab89c79b rvt_rc_error +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xb1d6aab1 rvt_invalidate_rkey +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xb7de45c6 rvt_add_rnr_timer +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xb7ee98b2 rvt_rc_rnr_retry +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc3f33293 rvt_check_ah +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc4824adf rvt_unregister_device +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xc52a8453 rvt_compute_aeth +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xd233543e rvt_rkey_ok +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xde7ab982 rvt_mcast_find +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe1722940 rvt_error_qp +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe9b38113 rvt_stop_rc_timers +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xe9cf3e43 rvt_rnr_tbl_to_usec +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xee12baab rvt_get_credit +EXPORT_SYMBOL drivers/infiniband/sw/rdmavt/rdmavt 0xf487278a rvt_get_rwqe +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x14848f52 rtrs_clt_rdma_cq_direct +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x1d681872 rtrs_clt_get_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x2a1d3a81 rtrs_clt_request +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x2bba3105 rtrs_clt_query +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6bfbcf8e rtrs_clt_put_permit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6cc144bf rtrs_clt_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-client 0x6e4ca8a5 rtrs_clt_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x14a8d3c0 rtrs_ib_dev_find_or_add +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x2279ba8b rtrs_rdma_dev_pd_init +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x242a8646 rtrs_addr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x7dedbefb rtrs_ib_dev_put +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x887302f3 rtrs_addr_to_sockaddr +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0x9c1eef74 rtrs_rdma_dev_pd_deinit +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-core 0xe15357ef sockaddr_to_str +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x25dab2d6 rtrs_srv_resp_rdma +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x375e6949 rtrs_srv_open +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0x55d06273 rtrs_srv_get_path_name +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xb2af101e rtrs_srv_get_queue_depth +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xe48aac52 rtrs_srv_close +EXPORT_SYMBOL drivers/infiniband/ulp/rtrs/rtrs-server 0xfd13b536 rtrs_srv_set_sess_priv +EXPORT_SYMBOL drivers/input/gameport/gameport 0x1d33662c __gameport_register_driver +EXPORT_SYMBOL drivers/input/gameport/gameport 0x343d501b gameport_stop_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x847e1119 gameport_unregister_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0x8e18b062 gameport_start_polling +EXPORT_SYMBOL drivers/input/gameport/gameport 0x920c2b00 gameport_open +EXPORT_SYMBOL drivers/input/gameport/gameport 0xad2e454c gameport_set_phys +EXPORT_SYMBOL drivers/input/gameport/gameport 0xb166029a __gameport_register_port +EXPORT_SYMBOL drivers/input/gameport/gameport 0xd9a4a5e4 gameport_close +EXPORT_SYMBOL drivers/input/gameport/gameport 0xf3c1b488 gameport_unregister_driver +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x5b4053b7 iforce_process_packet +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0x874bf9d8 iforce_init_device +EXPORT_SYMBOL drivers/input/joystick/iforce/iforce 0xaba4664e iforce_send_packet +EXPORT_SYMBOL drivers/input/matrix-keymap 0x493bb73b matrix_keypad_build_keymap +EXPORT_SYMBOL drivers/input/misc/ad714x 0x6237ae8e ad714x_pm +EXPORT_SYMBOL drivers/input/misc/ad714x 0xf8183d62 ad714x_probe +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x16b9b710 cma3000_init +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x892d76b2 cma3000_resume +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0x89d9444e cma3000_exit +EXPORT_SYMBOL drivers/input/misc/cma3000_d0x 0xca3f100a cma3000_suspend +EXPORT_SYMBOL drivers/input/rmi4/rmi_core 0xa3f30556 rmi_unregister_transport_device +EXPORT_SYMBOL drivers/input/sparse-keymap 0x17417ca6 sparse_keymap_entry_from_scancode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x56c475a2 sparse_keymap_setup +EXPORT_SYMBOL drivers/input/sparse-keymap 0x769c7a70 sparse_keymap_entry_from_keycode +EXPORT_SYMBOL drivers/input/sparse-keymap 0x80750a28 sparse_keymap_report_event +EXPORT_SYMBOL drivers/input/sparse-keymap 0x929c2d5f sparse_keymap_report_entry +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0x21a36d9c ad7879_probe +EXPORT_SYMBOL drivers/input/touchscreen/ad7879 0xfdffc8af ad7879_pm_ops +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x252e73aa amd_iommu_bind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x7e3151b3 amd_iommu_init_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0x87e4557c amd_iommu_unbind_pasid +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xa58e336b amd_iommu_free_device +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xe28e8e23 amd_iommu_set_invalidate_ctx_cb +EXPORT_SYMBOL drivers/iommu/amd/iommu_v2 0xfc1e9279 amd_iommu_set_invalid_ppr_cb +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/isdnhdlc 0x27c58fd5 isdnhdlc_decode +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/isdnhdlc 0x4644eea5 isdnhdlc_out_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/isdnhdlc 0x5b835a58 isdnhdlc_rcv_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/isdnhdlc 0xef4ee223 isdnhdlc_encode +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x1dc3be69 mISDNisac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x4394bf46 mISDNisac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0x5096c4fd mISDNipac_irq +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNipac 0xcfabc952 mISDNipac_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0x061a3849 mISDNisar_init +EXPORT_SYMBOL drivers/isdn/hardware/mISDN/mISDNisar 0xb786b9b7 mISDNisar_irq +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x0251bd70 recv_Echannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03638423 mISDN_unregister_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x03a68066 mISDN_FsmRestartTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1b69cec3 mISDN_clear_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x1be79d79 recv_Dchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2348cc3c mISDN_FsmFree +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x26236de8 mISDN_clock_update +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x2ec07d8b dchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x30d25b0d mISDN_FsmDelTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x313b1fde mISDN_FsmAddTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x50c2230c mISDN_FsmChangeState +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x588886a6 l1_event +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x59bef916 mISDN_unregister_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x6047df40 mISDN_FsmInitTimer +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x670acf1c mISDNDevName4ch +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7bd0283a get_next_dframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x7eea60b5 recv_Bchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8aff509e mISDN_register_device +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x8dba974b mISDN_ctrl_bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x91e98ad1 create_l1 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9885f1d8 mISDN_register_Bprotocol +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0x9c928457 mISDN_FsmNew +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xa1fd8715 mISDN_freedchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xac2f19a9 recv_Bchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xbf010ca4 bchannel_get_rxbuf +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc3401729 mISDN_register_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xc40f5273 bchannel_senddata +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xccabec71 mISDN_initbchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd285995f mISDN_clock_get +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xd5145151 mISDN_FsmEvent +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xdad3bdc5 recv_Dchannel_skb +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xe8f617eb mISDN_unregister_clock +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xee219dec mISDN_initdchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xeeae677d mISDN_freebchannel +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xfa99e351 get_next_bframe +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_core 0xff6c2771 queue_ch_frame +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x01087af0 mISDN_dsp_element_unregister +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0x93df9e4b dsp_audio_law_to_s32 +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb07a21b8 dsp_audio_s16_to_law +EXPORT_SYMBOL drivers/isdn/mISDN/mISDN_dsp 0xb98308d8 mISDN_dsp_element_register +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x020c884b ti_lmu_common_get_brt_res +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x1f8e1e7d ti_lmu_common_get_ramp_params +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0x54a12ec4 ti_lmu_common_set_ramp +EXPORT_SYMBOL drivers/leds/leds-ti-lmu-common 0xced72aae ti_lmu_common_set_brightness +EXPORT_SYMBOL drivers/md/dm-bio-prison 0x476d2454 dm_cell_key_has_valid_range +EXPORT_SYMBOL drivers/md/dm-log 0x032c114a dm_dirty_log_create +EXPORT_SYMBOL drivers/md/dm-log 0x53ff8f23 dm_dirty_log_destroy +EXPORT_SYMBOL drivers/md/dm-log 0x78968e92 dm_dirty_log_type_unregister +EXPORT_SYMBOL drivers/md/dm-log 0x7acf0dc2 dm_dirty_log_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x0e0b819b dm_snap_cow +EXPORT_SYMBOL drivers/md/dm-snapshot 0x0f8e1992 dm_exception_store_type_register +EXPORT_SYMBOL drivers/md/dm-snapshot 0x450ded93 dm_snap_origin +EXPORT_SYMBOL drivers/md/dm-snapshot 0xb700976f dm_exception_store_create +EXPORT_SYMBOL drivers/md/dm-snapshot 0xbb3d276f dm_exception_store_destroy +EXPORT_SYMBOL drivers/md/dm-snapshot 0xf125305b dm_exception_store_type_unregister +EXPORT_SYMBOL drivers/md/raid456 0x153ba2b8 r5c_journal_mode_set +EXPORT_SYMBOL drivers/md/raid456 0x1b1a7d0e raid5_set_cache_size +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x172c4bd1 flexcop_device_kfree +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x42c4d8a2 flexcop_pass_dmx_data +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x5264353b flexcop_device_exit +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x8d0889d3 flexcop_device_kmalloc +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0x93c2e964 flexcop_wan_set_speed +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xaf5fb1f2 flexcop_sram_set_dest +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xbc1d144b flexcop_eeprom_check_mac_addr +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xc2d14e93 flexcop_device_initialize +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xcc0cfed9 flexcop_pass_dmx_packets +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xccd686fd flexcop_i2c_request +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xd527ec29 flexcop_sram_ctrl +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xdb20c0a1 flexcop_dump_reg +EXPORT_SYMBOL drivers/media/common/b2c2/b2c2-flexcop 0xe4e09bfe flexcop_pid_feed_control +EXPORT_SYMBOL drivers/media/common/cx2341x 0x041d0473 cx2341x_handler_set_50hz +EXPORT_SYMBOL drivers/media/common/cx2341x 0x15ac1bd0 cx2341x_ctrl_query +EXPORT_SYMBOL drivers/media/common/cx2341x 0x28240e61 cx2341x_ctrl_get_menu +EXPORT_SYMBOL drivers/media/common/cx2341x 0x3bde08f6 cx2341x_handler_init +EXPORT_SYMBOL drivers/media/common/cx2341x 0x55aa7c5f cx2341x_mpeg_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x5b5cc43e cx2341x_ext_ctrls +EXPORT_SYMBOL drivers/media/common/cx2341x 0x7b4dd2cb cx2341x_fill_defaults +EXPORT_SYMBOL drivers/media/common/cx2341x 0xaa1b07f8 cx2341x_handler_setup +EXPORT_SYMBOL drivers/media/common/cx2341x 0xb2e2788e cx2341x_handler_set_busy +EXPORT_SYMBOL drivers/media/common/cx2341x 0xdbc5583a cx2341x_update +EXPORT_SYMBOL drivers/media/common/cx2341x 0xe1fe1432 cx2341x_log_status +EXPORT_SYMBOL drivers/media/common/cypress_firmware 0x14654acd cypress_load_firmware +EXPORT_SYMBOL drivers/media/common/ttpci-eeprom 0x693e74ba ttpci_eeprom_decode_mac +EXPORT_SYMBOL drivers/media/common/ttpci-eeprom 0x7a14aa3d ttpci_eeprom_parse_mac +EXPORT_SYMBOL drivers/media/common/tveeprom 0x0dbf0296 tveeprom_hauppauge_analog +EXPORT_SYMBOL drivers/media/common/tveeprom 0xdba9f8b0 tveeprom_read +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x065246b8 frame_vector_create +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x1b700d37 put_vaddr_frames +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x1d32a359 vb2_verify_memory_type +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x1d5f9555 frame_vector_destroy +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0x9af6f6f7 vb2_buffer_in_use +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xc5e5573a frame_vector_to_pages +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xdffb744b frame_vector_to_pfns +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-common 0xe20dfe0f get_vaddr_frames +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x4aadaebc vb2_dvb_find_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x6a3dde75 vb2_dvb_unregister_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x8d6ee8a9 vb2_dvb_get_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x8ddbe623 vb2_dvb_alloc_frontend +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0x924983ad vb2_dvb_register_bus +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-dvb 0xef491c4f vb2_dvb_dealloc_frontends +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xc7c2b85f vb2_create_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-memops 0xccd197c7 vb2_destroy_framevec +EXPORT_SYMBOL drivers/media/common/videobuf2/videobuf2-v4l2 0xab1066d7 vb2_querybuf +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x08733236 intlog10 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x0d32ed7c dvb_register_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x18acd31f dvb_dmx_swfilter_packets +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x1fd2a5f9 dvb_frontend_detach +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x2f5cdf80 dvb_ringbuffer_write +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x31f1071d dvb_ca_en50221_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3b93d71a dvb_frontend_sleep_until +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x3cd6f1a1 dvb_register_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x54abe4ff dvb_dmx_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f0f360e dvb_ca_en50221_camready_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x5f2b1d95 intlog2 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6181aec0 dvb_ringbuffer_flush_spinlock_wakeup +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6a9f708a dvb_dmx_swfilter_204 +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6c714f34 dvb_unregister_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x6dea956f dvb_net_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x71719e8d dvb_unregister_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x72482df4 dvb_generic_open +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x75116f1b dvb_frontend_resume +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x7d6dc6f5 dvb_frontend_reinitialise +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x83489e03 dvb_dmxdev_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x84bee46d dvb_net_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x89fbdf43 dvb_device_get +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x8c54b0f8 dvb_dmx_swfilter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x91a6794b dvb_ringbuffer_read_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x9263a063 dvb_dmx_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0x99c5f6c3 dvb_generic_ioctl +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa3ccd8d7 dvb_unregister_adapter +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa4235824 dvb_dmx_swfilter_raw +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xa981ae50 dvb_register_frontend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb3352dd2 dvb_ringbuffer_empty +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb342afeb dvb_dmxdev_release +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xb78b70e5 dvb_ca_en50221_camchange_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xbae90fdb dvb_ca_en50221_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3a16252 dvb_remove_device +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xc3f679f9 dvb_ringbuffer_write_user +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xcc01903d dvb_frontend_suspend +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xe138ce6b dvb_ringbuffer_avail +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xebbc2d9b dvb_ringbuffer_init +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xf1440a28 dvb_ca_en50221_frda_irq +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfb09f39a dvb_ringbuffer_read +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfb9a826f dvb_ringbuffer_flush +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfc6380e5 dvb_ringbuffer_free +EXPORT_SYMBOL drivers/media/dvb-core/dvb-core 0xfdbaa50b dvb_generic_release +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x35272bc7 au8522_analog_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x4d7f1c33 au8522_led_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x6e1d817a au8522_release_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x7b45d02a au8522_init +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x80956e84 au8522_writereg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0x93834794 au8522_get_state +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xb74c6713 au8522_i2c_gate_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xce2a8ef3 au8522_readreg +EXPORT_SYMBOL drivers/media/dvb-frontends/au8522_common 0xff2eac36 au8522_sleep +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24113 0xb4fa9fee cx24113_agc_callback +EXPORT_SYMBOL drivers/media/dvb-frontends/cx24123 0x9c16c6fc cx24123_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x4ffc8556 dib0070_get_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0x99fdf468 dib0070_set_rf_output +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xc4d31fe2 dib0070_ctrl_agc_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0070 0xcd29374a dib0070_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x04045ed1 dib0090_gain_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2e0818be dib0090_get_wbd_target +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x2f9d962c dib0090_update_rframp_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x37f268c4 dib0090_set_vga +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x39f57654 dib0090_pwm_gain_reset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x3dfcb54d dib0090_set_switch +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x43bb8bfe dib0090_get_current_gain +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x477a9672 dib0090_get_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x4961027a dib0090_set_dc_servo +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x7ee48adb dib0090_set_tune_state +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0x94072b0d dib0090_get_wbd_offset +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xb951aaed dib0090_update_tuning_table_7090 +EXPORT_SYMBOL drivers/media/dvb-frontends/dib0090 0xea46dd8b dib0090_dcc_freq +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x4b64f244 dib3000mc_pid_parse +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x55083246 dib3000mc_get_tuner_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x67392e38 dib3000mc_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0x741408d4 dib3000mc_pid_control +EXPORT_SYMBOL drivers/media/dvb-frontends/dib3000mc 0xc630b077 dib3000mc_set_config +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x5b9f94e9 dib7000m_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0x99693895 dib7000m_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib7000m 0xba039f38 dib7000m_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x0a74c42e dib9000_get_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x1054e95c dib9000_get_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x406aced8 dib9000_set_gpio +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x856bfbc5 dib9000_firmware_post_pll_init +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0x8fcefdb4 dib9000_fw_set_component_bus_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xac8cf2f9 dib9000_i2c_enumeration +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xaf363fa1 dib9000_fw_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xcc3ed908 dib9000_set_slave_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xd279d897 dib9000_get_component_bus_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xdc51343d dib9000_fw_pid_filter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xe507af7a dib9000_set_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dib9000 0xe7b0374c dib9000_get_tuner_interface +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x04d604fe dibx000_exit_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x1f45b26b dibx000_get_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x702a1438 dibx000_i2c_set_speed +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0x9e827e60 dibx000_reset_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dibx000_common 0xa2743958 dibx000_init_i2c_master +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x4daa7909 dvb_dummy_fe_ofdm_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0x52d98df7 dvb_dummy_fe_qam_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/dvb_dummy_fe 0xe6645d61 dvb_dummy_fe_qpsk_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lgs8gl5 0x0815129c lgs8gl5_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/lnbh29 0x1358d66f lnbh29_attach +EXPORT_SYMBOL drivers/media/dvb-frontends/m88ds3103 0x906c87a3 m88ds3103_get_agc_pwm +EXPORT_SYMBOL drivers/media/dvb-frontends/s5h1420 0x8bf92b67 s5h1420_get_tuner_i2c_adapter +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x15a10847 zd1301_demod_get_dvb_frontend +EXPORT_SYMBOL drivers/media/dvb-frontends/zd1301_demod 0x68608178 zd1301_demod_get_i2c_adapter +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x06704aa4 flexcop_dma_control_size_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x1b2ccfcb flexcop_dma_allocate +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x343e6581 flexcop_dma_control_timer_irq +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x88fc3936 flexcop_dma_xfer_control +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0x9472b99b flexcop_dma_free +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb6e55a85 flexcop_dma_config_timer +EXPORT_SYMBOL drivers/media/pci/b2c2/b2c2-flexcop-pci 0xb75883d0 flexcop_dma_config +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x162e76b9 bt878_stop +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x63755807 bt878_start +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x6fa93c49 bt878_device_control +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0x74febe56 bt878 +EXPORT_SYMBOL drivers/media/pci/bt8xx/bt878 0xd5d0bdef bt878_num +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x11dc4b6d bttv_gpio_enable +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x158b570d bttv_sub_register +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x1f63ea03 bttv_sub_unregister +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x459bd6e7 bttv_get_pcidev +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0x8ecf4acc bttv_write_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/bttv 0xbcf2d2fb bttv_read_gpio +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x13c03cbc write_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x38b9787a read_dst +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x43a983fd dst_check_sum +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x4884fb4e dst_comm_init +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x5a6a1794 dst_error_recovery +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0x855b9b34 dst_pio_disable +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xa4a2637b dst_wait_dst_ready +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xbb67d6c8 rdc_reset_state +EXPORT_SYMBOL drivers/media/pci/bt8xx/dst 0xbdb7d56b dst_error_bailout +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x2cdea06d cx18_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x419db2ee cx18_claim_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x4dfdb2b3 cx18_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0x99fb3fff cx18_ext_init +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xed245a77 cx18_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/cx18/cx18 0xf97fef04 cx18_release_stream +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0d76b29f cx25821_sram_channel_dump_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x0db9f46f cx25821_sram_channel_setup_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x3a5d5356 cx25821_set_gpiopin_direction +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x44b517f5 cx25821_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x5b5c6e88 cx25821_risc_databuffer_audio +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x7605d9a3 cx25821_dev_unregister +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x8493eb47 cx25821_riscmem_alloc +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0x8f634226 cx25821_dev_get +EXPORT_SYMBOL drivers/media/pci/cx25821/cx25821 0xe9050411 cx25821_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x1582337a vp3054_i2c_remove +EXPORT_SYMBOL drivers/media/pci/cx88/cx88-vp3054-i2c 0x6128372a vp3054_i2c_probe +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x3c4727e5 cx88_querycap +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0x4d83201f cx88_set_freq +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xbb0df154 cx88_enum_input +EXPORT_SYMBOL drivers/media/pci/cx88/cx8800 0xc083ca24 cx88_video_mux +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x128f59b5 cx8802_buf_prepare +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x2e04fc29 cx8802_unregister_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x522a5728 cx8802_buf_queue +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0x649bc7bd cx8802_get_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xa9ebebfe cx8802_cancel_buffers +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb4d8c5bd cx8802_register_driver +EXPORT_SYMBOL drivers/media/pci/cx88/cx8802 0xb90a61e3 cx8802_start_dma +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x0cf13a69 cx88_ir_stop +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x105f30ce cx88_set_scale +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x1b2d70fc cx88_sram_channel_setup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x23fc9c42 cx88_set_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x2517ba21 cx88_risc_buffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x307ae89e cx88_risc_databuffer +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x36c4b519 cx88_dsp_detect_stereo_sap +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x3cff4bae cx88_set_tvaudio +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5363f030 cx88_core_put +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x58fee1e3 cx88_newstation +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5ade379e cx88_reset +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x5edb7ae5 cx88_print_irqbits +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x6141c8c5 cx88_tuner_callback +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7090169f cx88_sram_channel_dump +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x7accd1eb cx88_get_stereo +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8804a724 cx88_ir_start +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x8d88137a cx88_sram_channels +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x904b8696 cx88_audio_thread +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0x9d9a3768 cx88_set_tvnorm +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaadbfba0 cx88_core_irq +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xaf848a77 cx88_wakeup +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xd94352af cx88_shutdown +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xdef806ae cx88_vdev_init +EXPORT_SYMBOL drivers/media/pci/cx88/cx88xx 0xf9b70171 cx88_core_get +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0441f671 ivtv_udma_alloc +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x0971ff0e ivtv_reset_ir_gpio +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1320b38b ivtv_vapi +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1420fdea ivtv_ext_init +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x14f67530 ivtv_debug +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x1c93366b ivtv_claim_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x2c5f1e32 ivtv_set_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x318adfe4 ivtv_init_on_first_open +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x6bf3f206 ivtv_udma_prepare +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x7feab094 ivtv_udma_unmap +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x8e36385e ivtv_udma_setup +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x95d3c993 ivtv_stop_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0x9c754e19 ivtv_clear_irq_mask +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xa4d71fad ivtv_api +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xabcdd164 ivtv_release_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xaf2712a2 ivtv_start_v4l2_encode_stream +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf59eac3e ivtv_firmware_check +EXPORT_SYMBOL drivers/media/pci/ivtv/ivtv 0xf9461c63 ivtv_vapi_result +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x04e83446 saa7134_tuner_callback +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1211df5d saa7134_devlist +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x1f30cbc1 saa7134_dmasound_init +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x3d8ccec1 saa7134_pgtable_alloc +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x43848e99 saa7134_pgtable_free +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x4840f66b saa7134_ts_unregister +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x55b40643 saa7134_tvaudio_setmute +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x6a144ace saa7134_set_gpio +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x730c4be3 saa7134_boards +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x8f1ad46b saa7134_devlist_lock +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0x9fae1864 saa7134_dmasound_exit +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xa5e1fcbf saa7134_pgtable_build +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xad06276b saa7134_ts_register +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xbb9731fd saa_dsp_writel +EXPORT_SYMBOL drivers/media/pci/saa7134/saa7134 0xf02b3dfb saa7134_set_dmabits +EXPORT_SYMBOL drivers/media/radio/tea575x 0x274738fc snd_tea575x_exit +EXPORT_SYMBOL drivers/media/radio/tea575x 0xd1f4f3f9 snd_tea575x_s_hw_freq_seek +EXPORT_SYMBOL drivers/media/radio/tea575x 0xea8641c4 snd_tea575x_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xefb174f3 snd_tea575x_hw_init +EXPORT_SYMBOL drivers/media/radio/tea575x 0xfaf96a64 snd_tea575x_set_freq +EXPORT_SYMBOL drivers/media/radio/tea575x 0xfdd9f4e1 snd_tea575x_enum_freq_bands +EXPORT_SYMBOL drivers/media/radio/tea575x 0xfef0d425 snd_tea575x_g_tuner +EXPORT_SYMBOL drivers/media/rc/rc-core 0x01098f88 ir_raw_encode_scancode +EXPORT_SYMBOL drivers/media/rc/rc-core 0x2fe55cf5 ir_raw_gen_pd +EXPORT_SYMBOL drivers/media/rc/rc-core 0x5ee61dee ir_raw_handler_register +EXPORT_SYMBOL drivers/media/rc/rc-core 0x7a02ee87 ir_raw_gen_pl +EXPORT_SYMBOL drivers/media/rc/rc-core 0x977df5fd ir_raw_handler_unregister +EXPORT_SYMBOL drivers/media/rc/rc-core 0xb5516017 ir_raw_encode_carrier +EXPORT_SYMBOL drivers/media/rc/rc-core 0xce3696f3 ir_raw_gen_manchester +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x47657c56 fc0013_rc_cal_add +EXPORT_SYMBOL drivers/media/tuners/fc0013 0x7781acbd fc0013_rc_cal_reset +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0x4c48939e tuners +EXPORT_SYMBOL drivers/media/tuners/tuner-types 0xc2821775 tuner_count +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0x44d53bc7 cx231xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/cx231xx/cx231xx 0xed2c615f cx231xx_register_extension +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x16259ffc dvb_usbv2_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x486f7a6c dvb_usbv2_disconnect +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x62e0ae5c dvb_usbv2_suspend +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x6acaa275 dvb_usbv2_generic_write_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x813980cb dvb_usbv2_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0x9a826b19 dvb_usbv2_probe +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xaa9a651c dvb_usbv2_reset_resume +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xc565e8f9 dvb_usbv2_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb-v2/dvb_usb_v2 0xf7322717 dvb_usbv2_generic_rw_locked +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x2f059186 dvb_usb_device_exit +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x32b30bf0 dvb_usb_generic_write +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x496ecc1e dvb_usb_device_init +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x5eaaf170 dvb_usb_nec_rc_key_to_event +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x7a788b03 usb_cypress_load_firmware +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0x8b6f5395 dvb_usb_get_hexline +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb 0xd5f60ea6 dvb_usb_generic_rw +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0x341530cb rc_map_af9005_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xbd18a012 af9005_rc_decode +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-af9005-remote 0xd4e288db rc_map_af9005_table_size +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x02d26501 dibusb_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x18e2a064 dibusb_rc_query +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x1c266fc6 dibusb2_0_power_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x4026c50c dibusb_pid_filter_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x70dc8755 dibusb_i2c_algo +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x86ed41e1 dibusb_pid_filter +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0x93822ecb rc_map_dibusb_table +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xa9866174 dibusb2_0_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xdc45c0d9 dibusb_read_eeprom_byte +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-common 0xfb825108 dibusb_streaming_ctrl +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0x9b75fe06 dibusb_dib3000mc_tuner_attach +EXPORT_SYMBOL drivers/media/usb/dvb-usb/dvb-usb-dibusb-mc-common 0xb31664a0 dibusb_dib3000mc_frontend_attach +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x301c1fda em28xx_unregister_extension +EXPORT_SYMBOL drivers/media/usb/em28xx/em28xx 0x6012d0c8 em28xx_register_extension +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x0985b3fe gspca_disconnect +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x32431da2 gspca_dev_probe +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x56644146 gspca_frame_add +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x8b276ca8 gspca_resume +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0x9670af2c gspca_debug +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xac53845f gspca_suspend +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf386220a gspca_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xf7e55f3d gspca_coarse_grained_expo_autogain +EXPORT_SYMBOL drivers/media/usb/gspca/gspca_main 0xfea074aa gspca_dev_probe2 +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0x8c0a4f86 ttusbdecfe_dvbs_attach +EXPORT_SYMBOL drivers/media/usb/ttusb-dec/ttusbdecfe 0xa7cd4e4c ttusbdecfe_dvbt_attach +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0x1c19a75e v4l2_async_nf_register +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0x48e5634e v4l2_async_nf_init +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0x80a30cd7 v4l2_async_nf_unregister +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0xb973c84b v4l2_async_register_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0xeab7b6ea v4l2_async_unregister_subdev +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-async 0xec835572 v4l2_async_subdev_nf_register +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x0040c7b8 v4l2_m2m_buf_done_and_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x459e133f v4l2_m2m_get_curr_priv +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x5352d022 v4l2_m2m_resume +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x7a881118 v4l2_m2m_get_vq +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0x7aaca614 v4l2_m2m_mmap +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf626dd03 v4l2_m2m_suspend +EXPORT_SYMBOL drivers/media/v4l2-core/v4l2-mem2mem 0xf78683fe v4l2_m2m_job_finish +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0153ec4f v4l2_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0614dd5a v4l2_video_std_frame_period +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x082737e8 v4l2_ctrl_merge +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x086a640b v4l2_ctrl_type_op_equal +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x0dde8612 v4l2_ctrl_activate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x123959a1 v4l2_type_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x16244fe5 v4l2_prio_check +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1c6c6126 video_device_alloc +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1e2ebee1 v4l2_ctrl_sub_ev_ops +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x1ece5480 video_device_release_empty +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2342f1ae v4l2_prio_open +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2710fccc v4l2_query_ext_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x2ed133ea v4l2_ctrl_new_std +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x315de2cf v4l2_ctrl_get_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x32d43420 v4l2_ctrl_get_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x34eb9ae2 v4l2_ctrl_new_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x35ff98bf v4l2_format_info +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x36be54ea __v4l2_ctrl_modify_range +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3adbd595 v4l2_field_names +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b0129b3 v4l2_subdev_call_wrappers +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3b86cd9a v4l2_ctrl_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3bdd0f94 v4l2_prio_change +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x3efd253e v4l2_ctrl_notify +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43a5d6b7 v4l2_s_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x43d5bc36 v4l2_ctrl_auto_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x4ab6f9f2 v4l2_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x5d4717c5 video_device_release +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x6a1ea059 __video_register_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x73cf7269 v4l2_ctrl_subdev_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x78bf4b8a __v4l2_ctrl_s_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x79b7c2db v4l2_ctrl_g_ctrl_int64 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8106095a v4l2_prio_max +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x8577a8cf __v4l2_ctrl_modify_dimensions +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x878203ff v4l2_ctrl_handler_init_class +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x89e3897d v4l2_ctrl_query_fill +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x94d0ea80 v4l2_ctrl_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x94f1244e v4l2_ctrl_request_complete +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9a43f83f v4l2_ctrl_poll +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9d232e02 v4l2_ctrl_handler_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0x9df63811 __v4l2_ctrl_grab +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa20e701c v4l2_ctrl_new_std_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa34f8c6f v4l2_ctrl_handler_free +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa4b4d58a v4l2_ctrl_subscribe_event +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xa981d839 __v4l2_ctrl_s_ctrl_compound +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xaac7be9d v4l2_ctrl_type_op_validate +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb46055dc v4l2_ctrl_type_op_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb77b0159 v4l2_prio_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb8a583ca video_unregister_device +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xb92d521b video_devdata +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xba6ffa01 v4l2_ctrl_radio_filter +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbc5671dc v4l_printk_ioctl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xbe7adacd v4l2_try_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xc383b66b v4l2_ctrl_handler_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcc31d88a v4l2_ctrl_find +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xccbc54f6 v4l2_ctrl_new_fwnode_properties +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xcda04a5b v4l2_prio_close +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd16d9c01 v4l2_ctrl_get_int_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd23fa281 v4l2_ctrl_request_setup +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xd6806995 v4l2_g_ext_ctrls +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xda47d4bc v4l2_ctrl_g_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdaa24b7e v4l2_ctrl_new_std_menu_items +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdb3f2074 v4l2_ctrl_new_custom +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xdb5cbf25 __v4l2_ctrl_s_ctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe285de51 video_ioctl2 +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2ab3a7c v4l2_queryctrl +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe2b92059 v4l2_video_std_construct +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe3a6ac64 v4l2_ctrl_cluster +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xe4727571 v4l2_ctrl_new_std_menu +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xeb78c550 v4l2_ctrl_add_handler +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xef23d222 v4l2_ctrl_subdev_log_status +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf11976ec v4l2_ctrl_type_op_log +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf3251e7b v4l2_norm_to_name +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf50fecbc v4l2_ctrl_replace +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xf9dfd884 v4l2_subdev_init +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfa6812bc __v4l2_ctrl_s_ctrl_string +EXPORT_SYMBOL drivers/media/v4l2-core/videodev 0xfe1e8300 v4l2_querymenu +EXPORT_SYMBOL drivers/memstick/core/memstick 0x002802b4 memstick_detect_change +EXPORT_SYMBOL drivers/memstick/core/memstick 0x08bfed9e memstick_remove_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x199305e6 memstick_init_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x287277cb memstick_init_req_sg +EXPORT_SYMBOL drivers/memstick/core/memstick 0x43fb9e30 memstick_resume_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0x4cddacd5 memstick_new_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0x71997386 memstick_free_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa2670801 memstick_add_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xa2d53257 memstick_suspend_host +EXPORT_SYMBOL drivers/memstick/core/memstick 0xaa2fd098 memstick_next_req +EXPORT_SYMBOL drivers/memstick/core/memstick 0xc8d96777 memstick_register_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xe28820c3 memstick_unregister_driver +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf6a47f13 memstick_set_rw_addr +EXPORT_SYMBOL drivers/memstick/core/memstick 0xf8a71118 memstick_alloc_host +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x004d97c0 mpt_print_ioc_summary +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0a3aac30 mpt_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x0f0ca275 mpt_config +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1748ab1b mpt_reset_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x1f3049fa mpt_device_driver_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x2e99418d mpt_get_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x354ca495 mpt_alloc_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x4fd2b29c mpt_findImVolumes +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x502108d0 mpt_fwfault_debug +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x572b4423 mpt_Soft_Hard_ResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5f433b1c mpt_event_register +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x5fde4e85 mpt_free_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x610b257e mpt_reset_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x72bdd0bc mptbase_sas_persist_operation +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x74a0134a mpt_device_driver_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7779fad8 mpt_put_msg_frame_hi_pri +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x77f0d7f6 mpt_detach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x7cca884b mpt_raid_phys_disk_pg0 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x8290bc9f mpt_resume +EXPORT_SYMBOL drivers/message/fusion/mptbase 0x981efe92 mpt_deregister +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa5cde631 mpt_GetIocState +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xa836e7f6 mpt_send_handshake_request +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xab0e58fd mpt_HardResetHandler +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb12dd7f8 mpt_suspend +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xb4a33001 mpt_verify_adapter +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xbf44d836 mpt_raid_phys_disk_get_num_paths +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xccf3be74 mpt_halt_firmware +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcd32608a mpt_attach +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xcdabe781 mpt_set_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd5e2e9f4 mpt_free_fw_memory +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd6834873 mpt_clear_taskmgmt_in_progress_flag +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xd889163a mpt_put_msg_frame +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xdd805159 ioc_list +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe41693de mpt_raid_phys_disk_pg1 +EXPORT_SYMBOL drivers/message/fusion/mptbase 0xe6c1e126 mpt_event_deregister +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x06de2559 mptscsih_remove +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x07a1aba8 mptscsih_dev_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x1537fc87 mptscsih_bios_param +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x22b36629 mptscsih_flush_running_cmds +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3019c2df mptscsih_suspend +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3e01dc9b mptscsih_qcmd +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x3fa34739 mptscsih_taskmgmt_response_code +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x467f316e mptscsih_is_phys_disk +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x54cf3c3b mptscsih_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x68dee12c mptscsih_change_queue_depth +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7270a09d mptscsih_event_process +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x77be9f90 mptscsih_taskmgmt_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7860c6d7 mptscsih_io_done +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x7f01afea mptscsih_show_info +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x88ce809c mptscsih_host_attr_groups +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x91438fca mptscsih_get_scsi_lookup +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0x9fd5b669 mptscsih_resume +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xa7457eb8 mptscsih_IssueTaskMgmt +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xb3746d6a mptscsih_raid_id_to_num +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xbe3a2bb9 mptscsih_ioc_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xcab54991 mptscsih_shutdown +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xda08a494 mptscsih_abort +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xde54aa16 mptscsih_slave_destroy +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xe95accca mptscsih_slave_configure +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf42a5e7a mptscsih_scandv_complete +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xf9e52808 mptscsih_bus_reset +EXPORT_SYMBOL drivers/message/fusion/mptscsih 0xffc60ed2 mptscsih_host_reset +EXPORT_SYMBOL drivers/mfd/axp20x 0x0ed5ec17 axp20x_device_remove +EXPORT_SYMBOL drivers/mfd/axp20x 0x9293ac32 axp20x_device_probe +EXPORT_SYMBOL drivers/mfd/axp20x 0xd1202223 axp20x_match_device +EXPORT_SYMBOL drivers/mfd/dln2 0x154b2dcb dln2_register_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0x4ff57457 dln2_unregister_event_cb +EXPORT_SYMBOL drivers/mfd/dln2 0xf5c9b8df dln2_transfer +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0a92d31c mc13xxx_reg_write +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x0c74e521 mc13xxx_irq_free +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x158fa27b mc13xxx_irq_status +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x56b8bc2e mc13xxx_reg_read +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x5b1507a5 mc13xxx_irq_unmask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x651aa79c mc13xxx_irq_mask +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x707ac389 mc13xxx_unlock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x8a87da2a mc13xxx_get_flags +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x99f61c44 mc13xxx_reg_rmw +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0x9ad103ab mc13xxx_lock +EXPORT_SYMBOL drivers/mfd/mc13xxx-core 0xaf86797a mc13xxx_irq_request +EXPORT_SYMBOL drivers/mfd/tps65010 0x02d4ad0f tps65013_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0x0c6ad2cf tps65010_config_vdcdc2 +EXPORT_SYMBOL drivers/mfd/tps65010 0x28485130 tps65010_config_vregs1 +EXPORT_SYMBOL drivers/mfd/tps65010 0x33739de7 tps65010_set_vib +EXPORT_SYMBOL drivers/mfd/tps65010 0x9fd44c69 tps65010_set_led +EXPORT_SYMBOL drivers/mfd/tps65010 0xb14080cc tps65010_set_low_pwr +EXPORT_SYMBOL drivers/mfd/tps65010 0xd5bb106d tps65010_set_vbus_draw +EXPORT_SYMBOL drivers/mfd/tps65010 0xe99b3f36 tps65010_set_gpio_out_value +EXPORT_SYMBOL drivers/mfd/wm8994 0x10835293 wm8994_irq_init +EXPORT_SYMBOL drivers/mfd/wm8994 0x48c1f6c9 wm8958_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x5bf1e6e6 wm8994_base_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0x7afb4d50 wm8994_regmap_config +EXPORT_SYMBOL drivers/mfd/wm8994 0xbee79c88 wm8994_irq_exit +EXPORT_SYMBOL drivers/mfd/wm8994 0xd7a3f4e4 wm1811_regmap_config +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0x446763d6 ad_dpot_remove +EXPORT_SYMBOL drivers/misc/ad525x_dpot 0xf890995e ad_dpot_probe +EXPORT_SYMBOL drivers/misc/altera-stapl/altera-stapl 0x5bafa76e altera_init +EXPORT_SYMBOL drivers/misc/c2port/core 0x8a54252c c2port_device_register +EXPORT_SYMBOL drivers/misc/c2port/core 0xb60d00dd c2port_device_unregister +EXPORT_SYMBOL drivers/misc/mei/mei 0x0bb25295 __SCT__tp_func_mei_reg_write +EXPORT_SYMBOL drivers/misc/mei/mei 0x0c33829a __traceiter_mei_reg_write +EXPORT_SYMBOL drivers/misc/mei/mei 0x14dc7949 __SCT__tp_func_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0x302a1518 __tracepoint_mei_reg_write +EXPORT_SYMBOL drivers/misc/mei/mei 0x3b0a488d __SCT__tp_func_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0x3bec0e83 __SCK__tp_func_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0x4b771b2f __SCK__tp_func_mei_reg_write +EXPORT_SYMBOL drivers/misc/mei/mei 0x4f79a2c9 __SCK__tp_func_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0x767ce46c __traceiter_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xc4f67c73 __traceiter_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xd7c99749 __tracepoint_mei_reg_read +EXPORT_SYMBOL drivers/misc/mei/mei 0xe5045160 __tracepoint_mei_pci_cfg_read +EXPORT_SYMBOL drivers/misc/tifm_core 0x00398f3f tifm_remove_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x05b73071 tifm_add_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x0ffb277f tifm_queue_work +EXPORT_SYMBOL drivers/misc/tifm_core 0x154f916f tifm_has_ms_pif +EXPORT_SYMBOL drivers/misc/tifm_core 0x45d6d2de tifm_free_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0x4bb9be3b tifm_eject +EXPORT_SYMBOL drivers/misc/tifm_core 0x5f43c34e tifm_free_device +EXPORT_SYMBOL drivers/misc/tifm_core 0x66111ba8 tifm_unmap_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x96f2328d tifm_map_sg +EXPORT_SYMBOL drivers/misc/tifm_core 0x9770b00c tifm_alloc_device +EXPORT_SYMBOL drivers/misc/tifm_core 0xdc507e33 tifm_alloc_adapter +EXPORT_SYMBOL drivers/misc/tifm_core 0xe0486cc0 tifm_register_driver +EXPORT_SYMBOL drivers/misc/tifm_core 0xf7ff40f5 tifm_unregister_driver +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x04314082 cqhci_deactivate +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x3ff2c0c0 cqhci_irq +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x4e0600f1 cqhci_resume +EXPORT_SYMBOL drivers/mmc/host/cqhci 0x7db6615f cqhci_pltfm_init +EXPORT_SYMBOL drivers/mmc/host/cqhci 0xe16aeadc cqhci_init +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x6227a2c1 mmc_spi_put_pdata +EXPORT_SYMBOL drivers/mmc/host/of_mmc_spi 0x71840826 mmc_spi_get_pdata +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x1ad21227 cfi_build_cmd_addr +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x35b21d29 cfi_build_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x59540f07 cfi_merge_status +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0x8c32ccc4 cfi_fixup +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xafee9c3b cfi_read_pri +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xb4b1e085 cfi_send_gen_cmd +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xbbe87e22 cfi_varsize_frob +EXPORT_SYMBOL drivers/mtd/chips/cfi_util 0xff9fa623 cfi_udelay +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x230b8a8f unregister_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0x65a3de9c map_destroy +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xb0319ea2 register_mtd_chip_driver +EXPORT_SYMBOL drivers/mtd/chips/chipreg 0xcf03c5a2 do_map_probe +EXPORT_SYMBOL drivers/mtd/chips/gen_probe 0xa90937b6 mtd_do_chip_probe +EXPORT_SYMBOL drivers/mtd/lpddr/lpddr_cmds 0x852bdf52 lpddr_cmdset +EXPORT_SYMBOL drivers/mtd/maps/map_funcs 0x8659b237 simple_map_init +EXPORT_SYMBOL drivers/mtd/mtd 0x41229758 mtd_concat_create +EXPORT_SYMBOL drivers/mtd/mtd 0xf06f60c9 mtd_concat_destroy +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x0126257e nand_ecc_finish_io_req +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x0c5f8873 nand_ecc_get_sw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x342343a1 nand_ecc_register_on_host_hw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x3c238c21 of_get_nand_ecc_user_config +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x4b8fb1d4 nand_ecc_init_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x51006f25 nand_ecc_get_on_die_hw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x611e4288 nand_ecc_sw_bch_init_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x61980fba nand_ecc_sw_hamming_get_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x677b2a9c nand_ecc_is_strong_enough +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x7be7bce9 nand_ecc_prepare_io_req +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x82eafa94 nand_ecc_get_on_host_hw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x869f8b86 nand_ecc_sw_hamming_init_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x86dbdcac nand_ecc_sw_bch_cleanup_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0x9e7abf29 nand_ecc_sw_bch_calculate +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xaea4b25f nand_ecc_put_on_host_hw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xc3e78e47 nand_ecc_sw_bch_correct +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xc806a336 nand_ecc_cleanup_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xcaaac13e nand_ecc_sw_hamming_calculate +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xd0c48fc1 nand_ecc_sw_hamming_cleanup_ctx +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xd3e01e57 nand_ecc_unregister_on_host_hw_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xe6db989b ecc_sw_hamming_correct +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xe83e6541 nand_ecc_sw_bch_get_engine +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xef73b729 nand_ecc_sw_hamming_correct +EXPORT_SYMBOL drivers/mtd/nand/nandcore 0xff4351b0 ecc_sw_hamming_calculate +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xb4a969ea flexonenand_region +EXPORT_SYMBOL drivers/mtd/nand/onenand/onenand 0xc16ed0e5 onenand_addr +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x114f0c01 denali_remove +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0x30db096f denali_calc_ecc_bytes +EXPORT_SYMBOL drivers/mtd/nand/raw/denali 0xbe747207 denali_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x117e57be nand_read_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x3053092a rawnand_sw_hamming_calculate +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x34afd548 nand_scan_with_ids +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x4b20910d rawnand_dt_parse_gpio_cs +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x582c66a6 nand_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x60b2ca2a rawnand_sw_hamming_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x8846b024 nand_monolithic_read_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0x8ecbb3b8 nand_check_erased_ecc_chunk +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xb419103d rawnand_sw_bch_correct +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xb5e58306 nand_write_oob_std +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xb601cbf0 rawnand_sw_hamming_cleanup +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xbc38f43b nand_create_bbt +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xcaba16d2 rawnand_sw_bch_cleanup +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xd5ddd413 rawnand_sw_hamming_correct +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xd9299ab7 nand_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xe975e8b8 rawnand_sw_bch_init +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xf711482b nand_monolithic_write_page_raw +EXPORT_SYMBOL drivers/mtd/nand/raw/nand 0xfea214e2 nand_get_set_features_notsupp +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x09f04699 arc_bcast_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x4ce3af50 arcnet_close +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5015fc44 arcnet_timeout +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x581c5720 arc_proto_map +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x5f755b1f alloc_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6534792a arcnet_debug +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x6c727e2b arc_proto_default +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x79855593 arcnet_unregister_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7b74de8c arcnet_open +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x7f4ff2b0 arc_raw_proto +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0x99ab6026 arcnet_send_packet +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xdfbe1c94 free_arcdev +EXPORT_SYMBOL drivers/net/arcnet/arcnet 0xecb730b0 arcnet_interrupt +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x457365c0 com20020_found +EXPORT_SYMBOL drivers/net/arcnet/com20020 0x6724eb3c com20020_check +EXPORT_SYMBOL drivers/net/arcnet/com20020 0xf2744c94 com20020_netdev_ops +EXPORT_SYMBOL drivers/net/can/ctucanfd/ctucanfd 0x18a91f45 ctucan_resume +EXPORT_SYMBOL drivers/net/can/ctucanfd/ctucanfd 0x47ed557e ctucan_probe_common +EXPORT_SYMBOL drivers/net/can/ctucanfd/ctucanfd 0xbc6fed6e ctucan_suspend +EXPORT_SYMBOL drivers/net/can/dev/can-dev 0x5af2095e can_ethtool_op_get_ts_info_hwts +EXPORT_SYMBOL drivers/net/can/dev/can-dev 0xd765bcc2 can_eth_ioctl_hwts +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0236e5c0 b53_imp_vlan_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0715201b b53_get_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x0bfdab1b b53_get_ethtool_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x121f0b25 b53_br_flags +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x127061af b53_switch_detect +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x28acc6be b53_br_flags_pre +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2d134260 b53_fdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x2da4d502 b53_phylink_mac_config +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x37ea1481 b53_get_ethtool_phy_stats +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x3e27e0f1 b53_vlan_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x4078a2ad b53_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x40e954ec b53_eee_enable_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x47a457bf b53_br_leave +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x47e665ec b53_mdb_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x52be9272 b53_mirror_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x5cac39a8 b53_get_sset_count +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x6f545e86 b53_fdb_dump +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x70dce2c2 b53_port_event +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7cbaa221 b53_get_tag_protocol +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7d0f8bbb b53_phylink_mac_link_down +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x7de35a53 b53_setup_devlink_resources +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x80938a8c b53_brcm_hdr_setup +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x8726a286 b53_br_fast_age +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9756dc69 b53_phylink_mac_link_up +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9a084595 b53_vlan_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0x9e8aa8d1 b53_set_mac_eee +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa0a97d6a b53_vlan_filtering +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa163612c b53_br_join +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xa9e0a4be b53_br_set_stp_state +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xadf27142 b53_eee_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb05d7f35 b53_disable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xb9ab8ab3 b53_get_strings +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xbc61c832 b53_switch_register +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xc1449d21 b53_enable_port +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd283e9a2 b53_configure_vlan +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xd74febb2 b53_mirror_del +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xe7ea4efe b53_fdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_common 0xf6f9e106 b53_mdb_add +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x6b870f04 b53_serdes_link_set +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0x9631a7cf b53_serdes_init +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xa61b6866 b53_serdes_phylink_get_caps +EXPORT_SYMBOL drivers/net/dsa/b53/b53_serdes 0xc813986a b53_serdes_phylink_mac_select_pcs +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0x86ac764b lan9303_remove +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xa933d21c lan9303_probe +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xada83f40 lan9303_register_set +EXPORT_SYMBOL drivers/net/dsa/lan9303-core 0xd7f2b9aa lan9303_shutdown +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_switch 0x95caacb9 ksz_switch_register +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_switch 0x96911756 ksz_switch_remove +EXPORT_SYMBOL drivers/net/dsa/microchip/ksz_switch 0xb59569a7 ksz_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x8a0b7e11 vsc73xx_probe +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x99d242fe vsc73xx_is_addr_valid +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0x9d2895d4 vsc73xx_shutdown +EXPORT_SYMBOL drivers/net/dsa/vitesse-vsc73xx-core 0xd9aa8ba8 vsc73xx_remove +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0x615fba53 xrs700x_switch_alloc +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0x83b7b667 xrs7003f_info +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0x8972bf7e xrs7004f_info +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0xa8fef5cf xrs700x_switch_shutdown +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0xaba9814b xrs700x_switch_remove +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0xb25facfa xrs7003e_info +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0xb89aa5e3 xrs7004e_info +EXPORT_SYMBOL drivers/net/dsa/xrs700x/xrs700x 0xc2c2814b xrs700x_switch_register +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x119721ac ei_interrupt +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x191be256 __alloc_ei_netdev +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x4104e5a7 ei_close +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x644e7c1e ei_poll +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x8e94a5e5 ei_get_stats +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x912043c7 ei_set_multicast_list +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9561a5ae ei_netdev_ops +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0x9f4ae378 NS8390_init +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb7276d73 ei_tx_timeout +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xb7325b81 ei_open +EXPORT_SYMBOL drivers/net/ethernet/8390/8390 0xd0e108fd ei_start_xmit +EXPORT_SYMBOL drivers/net/ethernet/aquantia/atlantic/atlantic 0x9b089d76 aq_xdp_locking_key +EXPORT_SYMBOL drivers/net/ethernet/broadcom/bnxt/bnxt_en 0x74f8d650 bnxt_unregister_dev +EXPORT_SYMBOL drivers/net/ethernet/broadcom/bnxt/bnxt_en 0x7d7d8713 bnxt_send_msg +EXPORT_SYMBOL drivers/net/ethernet/broadcom/bnxt/bnxt_en 0x946c9088 bnxt_register_dev +EXPORT_SYMBOL drivers/net/ethernet/broadcom/bnxt/bnxt_en 0xed5cd7c0 bnxt_register_async_events +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x4cc1c885 cnic_register_driver +EXPORT_SYMBOL drivers/net/ethernet/broadcom/cnic 0x636af174 cnic_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0x4ba9ecc6 cavium_ptp_get +EXPORT_SYMBOL drivers/net/ethernet/cavium/common/cavium_ptp 0xa2be3169 cavium_ptp_put +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x0d8be5fd bgx_lmac_rx_tx_enable +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x34eeb48a bgx_set_dmac_cam_filter +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x42264715 bgx_get_lmac_count +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x46cdf933 bgx_config_timestamping +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x539ca253 bgx_get_lmac_mac +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x60cd1f2f bgx_lmac_get_pfc +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x6ca2152d bgx_lmac_set_pfc +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x716fd7f0 bgx_reset_xcast_mode +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0x72b238e4 bgx_get_rx_stats +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xbe654297 bgx_get_tx_stats +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xc397f585 bgx_lmac_internal_loopback +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xc82be691 bgx_get_map +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xd8ed0bcc bgx_set_lmac_mac +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xf101d1b2 bgx_get_lmac_link_state +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_bgx 0xff987a02 bgx_set_xcast_mode +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_xcv 0x13912e4b xcv_init_hw +EXPORT_SYMBOL drivers/net/ethernet/cavium/thunder/thunder_xcv 0x4f739dc0 xcv_setup_link +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x0f85b2ba cxgb3_register_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x105b3a8a cxgb3_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x125ab318 dev2t3cdev +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x214a9ae6 t3_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x265ca874 cxgb3_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x299fda9c cxgb3_queue_tid_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4837b87c cxgb3_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x4df014da cxgb3_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x5ab460ca cxgb3_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0x6cadbf8e t3_l2e_free +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xa85f4b6a cxgb3_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xb1926ac9 t3_l2t_send_event +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xbfac63cd t3_l2t_send_slow +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xc8e200f7 t3_register_cpl_handler +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xdf26d404 cxgb3_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb3/cxgb3 0xeb38aab1 cxgb3_insert_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x085bfdea cxgb4_smt_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0e0c53f3 cxgb4_alloc_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x0f1a5528 cxgb4_unregister_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x11d3762b cxgb4_remove_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2438caf4 cxgb4_free_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x29a10e51 cxgb4_remove_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2fa67a19 cxgb4_dbfifo_count +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x2fe6e219 cxgb4_create_server6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x33fb1711 cxgb4_flush_eq_cache +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x348bad97 cxgb4_alloc_stid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x4ef7e506 cxgb4_port_viid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50191db4 cxgb4_port_chan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x50ee5c07 cxgb4_best_aligned_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x56b1bcef cxgb4_write_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5d17d803 cxgb4_port_idx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x5f2f68cb cxgb4_get_tcp_stats +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x64618e0a cxgb4_port_e2cchan +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x657431cf cxgb4_clip_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x680fa616 cxgb4_inline_tx_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6a2235d7 cxgb4_l2t_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x6adbd6f6 cxgb4_alloc_sftid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x71e7189f cxgb4_select_ntuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x77b85c0c cxgb4_l2t_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x78bca28a cxgb4_clip_get +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x802be00f cxgb4_read_sge_timestamp +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x814c0b49 cxgb4_create_server +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x876e9be1 cxgb4_ofld_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x89c9470e cxgb4_get_srq_entry +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x90578636 cxgb4_l2t_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x91b3e7c1 cxgb4_write_partial_sgl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x987e6c56 cxgb4_sync_txq_pidx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0x995b8a2e cxgb4_remove_tid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa47e4b3d cxgb4_iscsi_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa52f22e5 cxgb4_l2t_alloc_switching +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xa8db193f cxgb4_smt_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xaff38884 t4_cleanup_clip_tbl +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc39a9011 cxgb4_map_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc5c73ae9 cxgb4_ring_tx_db +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xc98cf8f3 cxgb4_check_l2t_valid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd5b42746 cxgb4_pktgl_to_skb +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd5d2d386 cxgb4_update_root_dev_clip +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xd69a0294 cxgb4_best_mtu +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xdfe64e06 cxgb4_create_server_filter +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe21cbc37 cxgb4_crypto_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe53802a7 cxgb4_register_uld +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe7a0e745 cxgb4_read_tpte +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xe7dff6f1 cxgb4_free_atid +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf0f553e2 cxgb4_bar2_sge_qregs +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf2c8f849 cxgb4_immdata_send +EXPORT_SYMBOL drivers/net/ethernet/chelsio/cxgb4/cxgb4 0xf618889c cxgb4_reclaim_completed_tx +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x1bdaafe1 cxgbi_tagmask_set +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x255ab30f cxgb_get_4tuple +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x3b028438 cxgbi_ppm_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x6c911a15 cxgb_find_route6 +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x9019bce6 cxgb_find_route +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x90fbef21 cxgbi_ppm_init +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0x9acd7339 cxgbi_ppm_ppods_reserve +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xb155a71e cxgbi_ppm_ppod_release +EXPORT_SYMBOL drivers/net/ethernet/chelsio/libcxgb/libcxgb 0xc9118396 cxgbi_ppm_make_ppod_hdr +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x515ff154 vnic_dev_get_pdev +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x52d22679 vnic_dev_get_res_count +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x60634849 vnic_dev_get_res +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0x92b344d6 vnic_dev_register +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xb7b88ec7 vnic_dev_unregister +EXPORT_SYMBOL drivers/net/ethernet/cisco/enic/enic 0xc7f1b10f enic_api_devcmd_proxy_by_index +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x4e2e10d2 be_roce_mcc_cmd +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x65a7baf2 be_roce_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/emulex/benet/be2net 0x915377a1 be_roce_register_driver +EXPORT_SYMBOL drivers/net/ethernet/fungible/funcore/funcore 0x2b5f2494 fun_dev_disable +EXPORT_SYMBOL drivers/net/ethernet/fungible/funcore/funcore 0x4bdf0221 fun_dev_enable +EXPORT_SYMBOL drivers/net/ethernet/fungible/funcore/funcore 0xa5de6180 fun_release_irqs +EXPORT_SYMBOL drivers/net/ethernet/fungible/funcore/funcore 0xd1f99996 fun_reserve_irqs +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x16c71ac3 iavf_register_client +EXPORT_SYMBOL drivers/net/ethernet/intel/iavf/iavf 0x709fd272 iavf_unregister_client +EXPORT_SYMBOL drivers/net/ethernet/intel/ice/ice 0x965ff908 ice_xdp_locking_key +EXPORT_SYMBOL drivers/net/ethernet/intel/ixgbe/ixgbe 0xbaa35511 ixgbe_xdp_locking_key +EXPORT_SYMBOL drivers/net/ethernet/marvell/prestera/prestera 0x5835b921 prestera_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/marvell/prestera/prestera 0xcf396f34 prestera_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0244abef mlx4_SET_PORT_user_mtu +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x03e82c66 mlx4_gen_slaves_port_mgt_ev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x09c4e180 mlx4_query_diag_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0dd76fa6 set_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x14308102 mlx4_SET_PORT_fcs_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x156629e0 mlx4_is_slave_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1d43b299 mlx4_assign_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1e61c156 mlx4_SET_VPORT_QOS_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x20c02bfc mlx4_SET_PORT_user_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x22b70138 mlx4_gen_guid_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ab993f0 mlx4_tunnel_steer_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ddaedb1 get_phv_bit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2ffaaa70 mlx4_gen_pkey_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x39450294 mlx4_SET_PORT_qpn_calc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3ca02be2 mlx4_SET_PORT_SCHEDULER +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x423bd6fb mlx4_ALLOCATE_VPP_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x469a1503 mlx4_gen_port_state_change_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x49995f1f mlx4_release_eq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ad4d6f3 mlx4_is_eq_shared +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4f2a35b4 mlx4_get_cpu_rmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x54f939d4 mlx4_SET_PORT_BEACON +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6811ad47 mlx4_max_tc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7e32aeaf mlx4_test_interrupt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7fdde0b4 mlx4_handle_eth_header_mcast_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x82737c02 mlx4_get_slave_pkey_gid_tbl_len +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x87cf5f03 mlx4_SET_PORT_VXLAN +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x894fc7a1 mlx4_get_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8c13b90c mlx4_ALLOCATE_VPP_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x93aa0189 mlx4_sync_pkey_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9922b17f mlx4_SET_MCAST_FLTR +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9a41d333 mlx4_get_roce_gid_from_slave +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9d9cb552 mlx4_SET_VPORT_QOS_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f2b725b mlx4_test_async +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa1611eba mlx4_get_eqs_per_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf33baf2 mlx4_get_slave_from_roce_gid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf6e0809 mlx4_SET_PORT_PRIO2TC +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb1017f10 mlx4_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd1e9d12a mlx4_get_parav_qkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd20aed0c mlx4_get_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9fe9246 mlx4_SET_PORT_general +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdd15656d mlx4_get_is_vlan_offload_disabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdeca6268 mlx4_put_slave_node_guid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf0cb8127 mlx4_is_eq_vector_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2ff4b44 set_and_calc_slave_port_state +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6c96edf mlx4_eq_get_irq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x00c5cbe7 mlx5_eswitch_reg_c1_loopback_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x01dcc7e5 mlx5_rsc_dump_cmd_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x056fdeaf __SCK__tp_func_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x05d49a6a mlx5_get_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x06ca42c9 mlx5_core_query_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07aeff68 mlx5_cmd_create_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07b52ffa mlx5_packet_reformat_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x089f1089 __traceiter_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x09c25c28 __traceiter_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a9b9944 mlx5_core_alloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b5b1819 mlx5_cmd_init_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0d8fc3bd __traceiter_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0dc04cc4 mlx5_get_flow_namespace +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0f5a8a8b mlx5_vector2eqn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x10750e57 mlx5_rdma_rn_get_params +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x107e2e24 mlx5_vf_get_core_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x121fa7ab mlx5_debug_qp_remove +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x12a93b25 mlx5_fpga_sbu_conn_sendmsg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13518c58 mlx5_comp_irq_get_affinity_mask +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x13ac40e1 mlx5_lag_mode_is_hash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x173dc893 mlx5_core_modify_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1a06e5c8 __tracepoint_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1aee9ab1 mlx5_core_roce_gid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1b7c6a34 mlx5_fpga_mem_read +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1c57c524 __traceiter_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1ce1fb0f mlx5_eswitch_unregister_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1d16865c __tracepoint_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x1fc1b6f9 mlx5_rl_add_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x200269a7 __traceiter_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x20ca221f __SCK__tp_func_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x22918e05 mlx5_modify_header_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x23bb3f50 mlx5_create_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x28900af0 mlx5_core_destroy_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x29034d7a mlx5_mpfs_add_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2ae3d43f mlx5_fpga_sbu_conn_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2cc044ea mlx5_cmd_cleanup_async_ctx +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d776ad5 mlx5_vf_put_core_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x32d42b40 mlx5_eswitch_get_vport_metadata_for_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x33530990 mlx5_fpga_mem_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x348f60be mlx5_fs_remove_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x357dfe9d mlx5_rl_is_in_range +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3ac79e5a mlx5_eswitch_vport_match_metadata_enabled +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3b77fea3 mlx5_core_destroy_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c352c73 mlx5_lag_get_num_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c6c9e3d mlx5_eq_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3fca40b1 __tracepoint_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x414292f4 mlx5_core_query_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x416392af mlx5_packet_reformat_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4494085a mlx5_eq_get_eqe +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4bdd620c mlx5_core_modify_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4bf5e48b mlx5_blocking_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x517fe15c mlx5_lag_is_master +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x529e2b52 __SCK__tp_func_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x52db3ee7 mlx5_cmd_destroy_vport_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5305a730 mlx5_eq_create_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5306f247 mlx5_fs_add_rx_underlay_qpn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x549b6cb8 mlx5_qp_debugfs_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x58d3607c mlx5_core_create_rqt +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a8044f4 mlx5_modify_header_dealloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c6e2b0d mlx5_create_flow_group +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5c997643 mlx5_core_destroy_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5d552c89 mlx5_lag_is_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5e9f167f mlx5_eswitch_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5eee65d6 mlx5_blocking_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5ef9d820 mlx5_lag_get_slave_port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f031329 mlx5_lag_is_sriov +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5f84a0e7 mlx5_put_uars_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61492bb7 mlx5_rl_are_equal +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x62dc190a __SCT__tp_func_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x64809f3d __SCK__tp_func_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x656a20de mlx5_core_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66185e7c __tracepoint_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x66ec524c mlx5_cmd_exec_cb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x689de7f3 mlx5_core_query_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6ad29585 mlx5_core_destroy_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b63b480 mlx5_fpga_sbu_conn_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6b691d38 mlx5_cmd_exec_polling +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6cdc357b mlx5_fc_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6fa9a065 mlx5_core_attach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x724b1385 mlx5_query_ib_port_oper +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72a32218 mlx5_core_query_vendor_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x72f455ef mlx5_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7348b873 mlx5_eq_enable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x73652556 mlx5_sriov_blocking_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7836bcb0 mlx5_core_alloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7a4004ba mlx5_debug_qp_add +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7b244138 mlx5_msix_alloc +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7c24ab7b mlx5_core_destroy_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7cf9c7ce __tracepoint_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7dbb0dbe mlx5_eq_disable +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e95d5cc __SCK__tp_func_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7edb4a8e mlx5_cmd_do +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8080ca26 mlx5_core_query_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81d2cfda mlx5_cmd_out_err +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x83fd5d0c __tracepoint_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8462ceb4 mlx5_eq_update_ci +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x86edd56f mlx5_cmd_check +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x87e68171 mlx5_del_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x888a2246 mlx5_create_auto_grouped_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a1f3ade mlx5_core_modify_sq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8a4fa390 mlx5_eq_notifier_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8aef1cd2 mlx5_core_create_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8f66b30b mlx5_lag_is_active +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8faebde7 mlx5_core_dealloc_transport_domain +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x91ce61ac mlx5_core_uplink_netdev_event_replay +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x923331ee mlx5_eswitch_get_encap_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x92a1c607 mlx5_fc_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x93d53775 mlx5_comp_vectors_count +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x944777b3 mlx5_eq_destroy_generic +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x96eb2c99 mlx5_fc_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9b92515e mlx5_rl_add_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9c82e80d mlx5_is_roce_on +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9d36ddd0 __SCT__tp_func_mlx5_fs_add_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x9e9e07d3 mlx5_lag_get_next_peer_mdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa2c21eb2 mlx5_core_get_terminate_scatter_list_mkey +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa35e7147 mlx5_rl_remove_rate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa4cb6303 __traceiter_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa629f55a mlx5_core_create_tis +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa85e04b7 mlx5_flow_table_id +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa88e7aa5 mlx5_eswitch_vport_rep +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa9ccaab6 mlx5_core_destroy_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xab521f6e __traceiter_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xac6d5404 mlx5_rsc_dump_next +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xac7b696c __SCK__tp_func_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xacfe8a18 __SCT__tp_func_mlx5_fs_del_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xad6815cd mlx5_rsc_dump_cmd_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb06c0bfd __SCT__tp_func_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb0e7cd70 mlx5_eswitch_get_core_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb20281d8 mlx5_debugfs_get_dev_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb28dbbe8 mlx5_destroy_flow_group +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb3827973 mlx5_eswitch_get_vport_metadata_for_match +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb402319f __tracepoint_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb4e976bb __SCT__tp_func_mlx5_fs_add_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb56eb691 mlx5_rl_remove_rate_raw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb7aa85e1 mlx5_msix_free +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb9319adb __SCK__tp_func_mlx5_fs_set_fte +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xba5c2f4f __traceiter_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbc24caea mlx5_core_destroy_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc0cbd385 mlx5_add_flow_rules +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc17d62ba mlx5_create_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc86defbe mlx5_core_modify_cq_moderation +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcad019c3 __SCT__tp_func_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb47de7a __SCK__tp_func_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc002b85 mlx5_destroy_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcc4130d0 mlx5_alloc_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcd9428fe __SCK__tp_func_mlx5_fs_del_fg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xce3584fa mlx5_core_create_tir +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd020dd1f __traceiter_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd3ca55ca __tracepoint_mlx5_fs_del_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd4b80780 mlx5_free_bfreg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd4cf0182 mlx5_fc_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd5ed700d __tracepoint_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd7d66129 mlx5_lag_is_shared_fdb +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd834972f mlx5_fpga_get_sbu_caps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xd9c3fae9 mlx5_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdb622108 __SCT__tp_func_mlx5_fs_add_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdf08a20a mlx5_lag_query_cong_counters +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdf47f4bd mlx5_eswitch_register_vport_reps +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdfbc08aa __SCT__tp_func_mlx5_fw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe26ac7e8 mlx5_debugfs_root +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe30fb2a8 __SCT__tp_func_mlx5_fs_del_ft +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe390a237 mlx5_mpfs_del_mac +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe40bfeb2 mlx5_core_modify_cq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe5ad0cad mlx5_create_lag_demux_flow_table +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe908c64d mlx5_lag_is_mpesw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe9c9fb76 mlx5_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xed0d9cc3 mlx5_sriov_blocking_notifier_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xeeca47ad mlx5_core_create_rq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xefb4f684 mlx5_eswitch_uplink_get_proto_dev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf0d675ba mlx5_core_detach_mcg +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf10431d0 mlx5_get_fdb_sub_ns +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf159a0d1 mlx5_lag_get_roce_netdev +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1bdb987 mlx5_qp_debugfs_cleanup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf1ee95b4 mlx5_nic_vport_disable_roce +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf26d2512 mlx5_core_dealloc_pd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf61e5102 mlx5_core_create_psv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfed828fc mlx5_eswitch_add_send_to_vport_rule +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxfw/mlxfw 0xc4d702d9 mlxfw_firmware_flash +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02815b77 mlxsw_env_module_port_up +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x02dfd3d0 mlxsw_afk_key_info_block_encoding_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x065ec851 mlxsw_env_reset_module +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x07abcc0c mlxsw_afa_block_append_trap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0c36d6e4 mlxsw_core_trap_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0ca34ccf mlxsw_core_max_ports +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0d0129fc mlxsw_afa_block_append_qos_ecn +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0e81c09c mlxsw_afk_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x0f4a209d mlxsw_core_read_utc_sec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x14d6ca2e mlxsw_env_set_module_power_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x14e17bb4 mlxsw_linecards_event_ops_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x15801382 mlxsw_afk_key_info_put +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x16673aec mlxsw_afk_values_add_u32 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x16f4221d mlxsw_core_irq_event_handler_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x180356ab mlxsw_env_get_module_eeprom +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x191c2287 mlxsw_core_bus_device_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x19fa5852 mlxsw_core_flush_owq +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1cb8f858 mlxsw_reg_trans_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x1e6dabb6 mlxsw_core_skb_transmit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x202693f0 mlxsw_afa_block_cur_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x23eddc68 mlxsw_core_cpu_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x264e1f54 mlxsw_afa_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x299e2562 mlxsw_afk_values_add_buf +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2c68ced3 mlxsw_core_read_frc_h +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x2f303cd3 mlxsw_afa_block_append_qos_dsfield +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x36132fac mlxsw_core_port_netdev_link +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x383bc49a mlxsw_afa_block_append_qos_dscp +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x392f0e8c mlxsw_core_skb_receive +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4036254f mlxsw_linecards_event_ops_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4229a5de mlxsw_core_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x43a9b87e mlxsw_afa_block_terminate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x47041e4e mlxsw_afk_key_info_blocks_count_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4765b9f0 mlxsw_core_res_valid +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x484489a4 mlxsw_cmd_exec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4866767a mlxsw_env_get_module_eeprom_by_page +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x49ec8a06 mlxsw_afa_block_append_police +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x4a558271 mlxsw_env_get_module_power_mode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x50359cc0 mlxsw_core_kvd_sizes_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x508923e3 mlxsw_core_port_init +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x51b5769d mlxsw_env_module_overheat_counter_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5c73d5a4 mlxsw_core_sdq_supports_cqe_v2 +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5cf3dd79 mlxsw_core_bus_device_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5d55fb68 mlxsw_afk_encode +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5dd4aef4 mlxsw_core_trap_state_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x5ff17b5c mlxsw_afa_block_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x618a30ab mlxsw_afa_block_commit +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x63874d4c mlxsw_core_port_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x65c7e645 mlxsw_afa_block_append_qos_switch_prio +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x6929f2b4 mlxsw_env_module_port_map +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x718d28f4 mlxsw_afa_block_append_vlan_modify +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x75339042 mlxsw_core_lag_mapping_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7711ca1b mlxsw_afa_block_append_mirror +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x77d83398 mlxsw_core_read_frc_l +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x78c47928 mlxsw_core_traps_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x798b3e19 mlxsw_core_rx_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7b0bfeec mlxsw_core_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7de4c903 mlxsw_core_rx_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x7e08c6e0 mlxsw_core_event_listener_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x827a2f1f mlxsw_afa_block_jump +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x829e8851 mlxsw_afa_block_first_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x83fb69af mlxsw_core_lag_mapping_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x858c30d0 mlxsw_afa_block_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x86817014 mlxsw_core_read_utc_nsec +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x869812ce mlxsw_core_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x8854d198 mlxsw_reg_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x886e30e1 mlxsw_core_ptp_transmitted +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x902c3533 mlxsw_core_schedule_dw +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x996c5d6d mlxsw_reg_trans_bulk_wait +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0x9cbf026d mlxsw_afa_destroy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa400a0f2 mlxsw_core_port_devlink_port_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa509fafd mlxsw_afa_block_append_counter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa7765e88 mlxsw_reg_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xa8e2509a mlxsw_afa_block_append_sampler +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xac1074a5 mlxsw_core_skb_transmit_busy +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb6517b2e mlxsw_afa_block_append_trap_and_forward +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xb68e9fa8 mlxsw_env_module_port_unmap +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbc222a8d mlxsw_afk_clear +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbda212df mlxsw_core_irq_event_handlers_call +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbf4cdd18 mlxsw_core_trap_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xbfb7df3c mlxsw_core_driver_priv +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc31fbb6a mlxsw_core_res_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc4559961 mlxsw_core_traps_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xc5eacafe mlxsw_afa_block_append_l4port +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xcbab836f mlxsw_core_fw_rev_minor_subminor_validate +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd111d3e8 mlxsw_core_irq_event_handler_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd1bab622 mlxsw_afk_create +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd21722b4 mlxsw_core_max_lag +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd28256cf mlxsw_afa_block_append_allocated_counter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd71566b9 mlxsw_core_schedule_work +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd7a93413 mlxsw_core_event_listener_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd888ffb3 mlxsw_afa_block_append_ip +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xd9f711ae mlxsw_afa_block_append_mcrouter +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc31781e mlxsw_reg_trans_write +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc415cf1 mlxsw_afa_block_continue +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdc5c95df mlxsw_core_resources_query +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xdeb1dc2e mlxsw_afa_block_first_kvdl_index +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe16986dd mlxsw_afa_block_activity_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe1860dde mlxsw_afa_block_append_fid_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe4d9ac5a mlxsw_afa_block_append_drop +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xe532482a mlxsw_afk_key_info_get +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xecab212a mlxsw_afa_cookie_lookup +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xed2801d4 mlxsw_env_module_port_down +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf0dd953e mlxsw_env_get_module_info +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf446732c mlxsw_afk_key_info_subset +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xf82bdc70 mlxsw_core_lag_mapping_set +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff007c25 mlxsw_core_cpu_port_fini +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_core 0xff0b141d mlxsw_afa_block_append_fwd +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0x481fca80 mlxsw_i2c_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_i2c 0xcaa36ae8 mlxsw_i2c_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x447b9c81 mlxsw_pci_driver_register +EXPORT_SYMBOL drivers/net/ethernet/mellanox/mlxsw/mlxsw_pci 0x67a01aa9 mlxsw_pci_driver_unregister +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x06d50bd9 ocelot_get_ts_info +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x07906ce9 ocelot_pll5_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x08791cd6 ocelot_wm_enc +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x0e9f4d49 ocelot_get_txtstamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x104058a6 ocelot_port_bridge_flags +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x14455bd6 ocelot_init_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x16a3d2bb ocelot_ptp_adjfine +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x1bf87836 ocelot_sb_tc_pool_bind_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x1dc98a8a ocelot_port_vlan_filtering +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x1e6c5921 ocelot_ptp_settime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x20aa39ba ocelot_ptp_gettime64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x20d9c05f ocelot_fdb_dump +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x22a5d031 ocelot_devlink_sb_unregister +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x23af2332 ocelot_port_lag_change +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x28e0d983 ocelot_set_ageing_time +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2c1069bb ocelot_sb_occ_max_clear +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2ee2eeab ocelot_vcap_block_find_filter_by_id +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2fbffa46 ocelot_ptp_rx_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x305af77e ocelot_hwstamp_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x34f31b81 ocelot_mact_lookup +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x3838a6fc ocelot_sb_pool_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x42c5a2fe ocelot_deinit_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x448318de ocelot_get_sset_count +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x4595ed0f ocelot_sb_occ_port_pool_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x45fe507a ocelot_init_port +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x49107d5b ocelot_vcap_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x4d94c8c0 ocelot_vcap_filter_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x4dc052f7 ocelot_port_inject_frame +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x4e75a30d ocelot_port_get_stats64 +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x50d51baa ocelot_vlan_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x55e64e0d ocelot_mrp_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x5d71a0f4 ocelot_mrp_del_ring_role +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x60ea0154 ocelot_mact_learn_streamdata +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x6ce19e2a vsc7514_vcap_props +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x74a20a83 ocelot_vcap_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x75cabddd ocelot_port_txtstamp_request +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x7784479d ocelot_port_policer_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x781342bd ocelot_get_ethtool_stats +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x79b072cf ocelot_sb_port_pool_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x7dbb7758 ocelot_port_lag_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x7e5aec55 vsc7514_regfields +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x7f8cafd7 ocelot_sb_occ_snapshot +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x8192dabb ocelot_hwstamp_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x87541603 ocelot_bridge_stp_state_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x8edbe1e5 ocelot_deinit +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x8f76e7ac ocelot_mact_learn +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x900eee1e ocelot_vlan_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x91c1254b ocelot_port_set_maxlen +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x9e750478 ocelot_fdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xa070dda7 ocelot_sb_occ_tc_port_bind_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xa7d88833 ocelot_sb_port_pool_get +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xa8aa2b8a ocelot_port_pre_bridge_flags +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xaa0e8af3 ocelot_vlan_prepare +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xaba495f7 ocelot_get_max_mtu +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb02ec0b9 ocelot_sb_pool_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb0fdd7fd ocelot_wm_dec +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb265502c ocelot_vcap_filter_replace +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb2f078cb ocelot_port_mdb_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb3a103cb ocelot_ptp_verify +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb66887ae ocelot_port_bridge_leave +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb902229f ocelot_ptp_adjtime +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb90c5a78 ocelot_mrp_add_ring_role +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xbde5ddc9 ocelot_port_policer_add +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xc35b2d11 ocelot_vcap_filter_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xc8a8c557 ocelot_get_strings +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xcc820fc1 ocelot_devlink_sb_register +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd0344032 ocelot_xtr_poll_frame +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd044a08e ocelot_drain_cpu_queue +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd0ebefd9 ocelot_ifh_port_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd43daa5a ocelot_port_mdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd8fb5394 ocelot_port_bridge_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xdc785cfc ocelot_mrp_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xe2a143be ocelot_fdb_del +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xe30fc619 ocelot_wm_stat +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xe5f5983a ocelot_ptp_enable +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xe67c3499 ocelot_policer_validate +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xeb409ec8 ocelot_mact_forget +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xeeac1d63 ocelot_reset +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf216907b ocelot_can_inject +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf2f97208 ocelot_init +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf61f9109 ocelot_deinit_timestamp +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf6b8e79c ocelot_port_lag_join +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf6dc84ea ocelot_sb_tc_pool_bind_set +EXPORT_SYMBOL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf80fc88d vsc7514_regmap +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4a01dee9 qed_get_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x4f264472 qed_put_iscsi_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x69b486fc qed_get_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x7e7426da qed_get_rdma_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x992e03d0 qed_put_fcoe_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0x9eeeef48 qed_put_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qed/qed 0xe105ab22 qed_get_eth_ops +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0x95762554 qede_rdma_register_driver +EXPORT_SYMBOL drivers/net/ethernet/qlogic/qede/qede 0xf1a6ca0d qede_rdma_unregister_driver +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x112a53a3 wx_napi_disable_all +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x14edb46f wx_free_resources +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x152dcee7 wx_stop_adapter +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x16487db1 wx_napi_enable_all +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x208e8c77 wx_disable_rx +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x21fe785c wx_free_isb_resources +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x25d0e852 wx_init_interrupt_scheme +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x2a07cbcb wx_intr_enable +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x34b502b0 wx_reset_hostif +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x38d803dd wx_clean_all_rx_rings +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x40fe2366 wx_disable_rx_queue +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x41bea3b6 wx_mac_set_default_filter +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x4b3398bd wx_msix_clean_rings +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x4b37959e wx_check_flash_load +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x6569c62a wx_read_ee_hostif +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x761a9504 wx_vlan_rx_kill_vid +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x780d1231 wx_setup_resources +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x7ac64fbf wx_start_hw +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x873f47b8 wx_control_hw +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x8c222691 wx_configure +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x8dbb0e51 wx_mng_present +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x8e994365 wx_set_features +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x927e587e wx_read_ee_hostif_buffer +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x931ca63c wx_init_eeprom_params +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x96aad36d wx_get_drvinfo +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x9d1ea253 wx_irq_disable +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0x9e0b21c2 wx_change_mtu +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xa2590ad5 wx_set_mac +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xa6a3d479 wx_xmit_frame +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xb0761b77 wx_reset_misc +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xb30bf1bf wx_get_pcie_msix_counts +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xb760e647 wx_sw_init +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xbb64f354 wx_get_stats64 +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xc6e9a017 wx_reset_interrupt_capability +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xc828f99b wx_init_rx_addrs +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xc845bc9a wx_get_mac_addr +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xcda3ff80 wx_setup_isb_resources +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xd3b8d3dc wx_free_irq +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xd52c99f9 wx_clear_interrupt_scheme +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xd5d1f8d2 wx_set_rx_mode +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xe63f03a3 wx_clean_all_tx_rings +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xe9297484 wx_disable_pcie_master +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xeaa8e273 wx_misc_isb +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xf3768552 wx_host_interface_command +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xf3a1ab81 wx_flush_sw_mac_table +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xf3b76d11 wx_configure_vectors +EXPORT_SYMBOL drivers/net/ethernet/wangxun/libwx/libwx 0xf56ca5a0 wx_vlan_rx_add_vid +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x2b9fb7f5 hdlcdrv_register +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x73e0b1a8 hdlcdrv_unregister +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x7c216794 hdlcdrv_transmitter +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0x91ea5d35 hdlcdrv_receiver +EXPORT_SYMBOL drivers/net/hamradio/hdlcdrv 0xd38d134b hdlcdrv_arbitrate +EXPORT_SYMBOL drivers/net/mdio 0x3e17f466 mdio_set_flag +EXPORT_SYMBOL drivers/net/mdio 0x60443957 mdio45_probe +EXPORT_SYMBOL drivers/net/mdio 0x62eb612a mdio45_ethtool_ksettings_get_npage +EXPORT_SYMBOL drivers/net/mdio 0x63e0fee5 mdio45_links_ok +EXPORT_SYMBOL drivers/net/mdio 0xb79a54ee mdio45_nway_restart +EXPORT_SYMBOL drivers/net/mdio 0xcdbdeca7 mdio45_ethtool_gset_npage +EXPORT_SYMBOL drivers/net/mdio 0xdaceb7a6 mdio_mii_ioctl +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0x0722c23d mdiobb_write_c45 +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0x075ebf82 alloc_mdio_bitbang +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0x1727d3ec mdiobb_read_c45 +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0xad141478 mdiobb_read_c22 +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0xd8a379c1 mdiobb_write_c22 +EXPORT_SYMBOL drivers/net/mdio/mdio-bitbang 0xdde99a9e free_mdio_bitbang +EXPORT_SYMBOL drivers/net/mdio/mdio-cavium 0x008b3947 cavium_mdiobus_read_c22 +EXPORT_SYMBOL drivers/net/mdio/mdio-cavium 0xb7fca4c2 cavium_mdiobus_write_c45 +EXPORT_SYMBOL drivers/net/mdio/mdio-cavium 0xd1edcb8b cavium_mdiobus_write_c22 +EXPORT_SYMBOL drivers/net/mdio/mdio-cavium 0xefd9b2e0 cavium_mdiobus_read_c45 +EXPORT_SYMBOL drivers/net/mdio/mdio-mscc-miim 0x28d71b7d mscc_miim_setup +EXPORT_SYMBOL drivers/net/mii 0x1400a9ad mii_ethtool_get_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0x394462e5 mii_ethtool_sset +EXPORT_SYMBOL drivers/net/mii 0x904f7f91 mii_nway_restart +EXPORT_SYMBOL drivers/net/mii 0x95900a64 mii_link_ok +EXPORT_SYMBOL drivers/net/mii 0x9e3e9a00 mii_ethtool_set_link_ksettings +EXPORT_SYMBOL drivers/net/mii 0xd7cf0010 mii_check_link +EXPORT_SYMBOL drivers/net/mii 0xd91dc7cc generic_mii_ioctl +EXPORT_SYMBOL drivers/net/mii 0xec2ddbfb mii_check_gmii_support +EXPORT_SYMBOL drivers/net/mii 0xf7da37f4 mii_check_media +EXPORT_SYMBOL drivers/net/mii 0xfde82b9f mii_ethtool_gset +EXPORT_SYMBOL drivers/net/pcs/pcs-lynx 0x4e02aa27 lynx_pcs_create_mdiodev +EXPORT_SYMBOL drivers/net/pcs/pcs-lynx 0x6d933508 lynx_pcs_destroy +EXPORT_SYMBOL drivers/net/pcs/pcs-mtk-lynxi 0x5fd7d19a mtk_pcs_lynxi_create +EXPORT_SYMBOL drivers/net/pcs/pcs-mtk-lynxi 0xe9221a05 mtk_pcs_lynxi_destroy +EXPORT_SYMBOL drivers/net/phy/bcm-phy-lib 0xbd8a7a26 bcm54xx_auxctl_write +EXPORT_SYMBOL drivers/net/ppp/pppox 0x104572df pppox_unbind_sock +EXPORT_SYMBOL drivers/net/ppp/pppox 0x4f0975bd pppox_compat_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0x620c9a40 register_pppox_proto +EXPORT_SYMBOL drivers/net/ppp/pppox 0x6866e2b1 pppox_ioctl +EXPORT_SYMBOL drivers/net/ppp/pppox 0xe0ff7a18 unregister_pppox_proto +EXPORT_SYMBOL drivers/net/sungem_phy 0x590aae34 sungem_phy_probe +EXPORT_SYMBOL drivers/net/team/team 0x2c569d65 team_mode_unregister +EXPORT_SYMBOL drivers/net/team/team 0x3ed756ca team_modeop_port_enter +EXPORT_SYMBOL drivers/net/team/team 0x512f12d0 team_options_register +EXPORT_SYMBOL drivers/net/team/team 0x54d1144f team_options_unregister +EXPORT_SYMBOL drivers/net/team/team 0x589e674d team_options_change_check +EXPORT_SYMBOL drivers/net/team/team 0x6f4dcf10 team_mode_register +EXPORT_SYMBOL drivers/net/team/team 0x795926bd team_option_inst_set_change +EXPORT_SYMBOL drivers/net/team/team 0xfffcf0eb team_modeop_port_change_dev_addr +EXPORT_SYMBOL drivers/net/usb/usbnet 0x3db42a8f usbnet_link_change +EXPORT_SYMBOL drivers/net/usb/usbnet 0x4f866481 usbnet_manage_power +EXPORT_SYMBOL drivers/net/usb/usbnet 0x66f3e337 usbnet_device_suggests_idle +EXPORT_SYMBOL drivers/net/wan/hdlc 0x04359fc8 hdlc_start_xmit +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0941d3e8 detach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0d7cd98a hdlc_close +EXPORT_SYMBOL drivers/net/wan/hdlc 0x0eff71d0 attach_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x24d794ff register_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0x4297fb46 alloc_hdlcdev +EXPORT_SYMBOL drivers/net/wan/hdlc 0x44bb7447 hdlc_open +EXPORT_SYMBOL drivers/net/wan/hdlc 0xa82a80a7 unregister_hdlc_device +EXPORT_SYMBOL drivers/net/wan/hdlc 0xdb7bc805 unregister_hdlc_protocol +EXPORT_SYMBOL drivers/net/wan/hdlc 0xed6b9621 hdlc_ioctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x0b1ab353 ath_regd_get_band_ctl +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x108b188f ath_is_49ghz_allowed +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x11ba45c2 ath_is_mybeacon +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x288a5984 ath_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x2fa8d103 dfs_pattern_detector_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x37c41e29 ath_rxbuf_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x4571aea8 ath_is_world_regd +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x53286a8c ath_reg_notifier_apply +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x57df61e9 ath_hw_cycle_counters_update +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x60d44091 ath_hw_keyreset +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x679cead6 ath_regd_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x77811832 ath_key_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x8138022c ath_hw_keysetmac +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0x858554ec ath_hw_get_listen_time +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xa18f224e ath_regd_find_country_by_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xb6588ba6 ath_bus_type_strings +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xbf046c4d ath_key_delete +EXPORT_SYMBOL drivers/net/wireless/ath/ath 0xe100784c ath_hw_setbssidmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x015e5db2 ath10k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x03463e4e ath10k_htt_hif_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x08820afb ath10k_core_free_board_files +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0ad4f106 ath10k_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0d0df250 ath10k_ce_init_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x0e4874f3 ath10k_ce_dump_registers +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x11574005 ath10k_ce_num_free_src_entries +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x16876901 ath10k_core_fetch_board_file +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x189fbc39 ath10k_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1b2d7cae ath10k_htc_rx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1b91c369 ath10k_core_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1d7fa7a6 ath10k_core_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x1e39031a ath10k_ce_rx_update_write_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x22b82153 ath10k_ce_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x24c507d9 ath10k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2bbbeae5 ath10k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2d1cc7d5 ath10k_coredump_new +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x2f258fed ath10k_core_napi_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x336f0eec ath10k_ce_completed_send_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3747520e ath10k_ce_completed_recv_next_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x3e880a6e ath10k_htt_txrx_compl_task +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x47e31754 ath10k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x486d9291 __ath10k_ce_send_revert +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x4d3387fe ath10k_print_driver_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x51eb9b8c ath10k_ce_per_engine_service_any +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5c5dfab1 ath10k_coredump_get_mem_layout +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x5f0e8d49 ath10k_ce_free_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x646ff45c ath10k_ce_free_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x76a51542 ath10k_core_unregister +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x77734f8b ath10k_htc_tx_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7b21dd10 ath10k_ce_completed_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7ba64808 ath10k_htt_rx_pktlog_completion_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x7deaeddd ath10k_htt_t2h_msg_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x818908a7 ath10k_ce_alloc_rri +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x867f44f4 ath10k_htc_process_trailer +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x8750f515 ath10k_core_napi_sync_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0x941691a3 ath10k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa31ab533 ath10k_htt_rx_hl_indication +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa616167a ath10k_core_start_recovery +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa71c61e4 ath10k_ce_revoke_recv_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xa783772a ath10k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xadb96e25 ath10k_mac_tx_push_pending +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb344f532 ath10k_core_check_dt +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xb7574b7a ath10k_ce_disable_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbadcdeb9 ath10k_ce_enable_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbd82c3fd ath10k_ce_send +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xbe4fc1c6 ath10k_bmi_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc1706c5c ath10k_htc_notify_tx_completion +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xc5436313 ath10k_ce_deinit_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xce6eb5d7 ath10k_ce_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xd6814d4d ath10k_ce_send_nolock +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xda79c52c ath10k_ce_completed_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xe327f21a ath10k_ce_cancel_send_next +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xeaf7ae5a ath10k_core_register +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xeee7e8ab ath10k_bmi_read_memory +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfac8d25d __tracepoint_ath10k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xfc471aac __ath10k_ce_rx_num_free_bufs +EXPORT_SYMBOL drivers/net/wireless/ath/ath10k/ath10k_core 0xff9ee406 ath10k_ce_alloc_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x060382c5 ath11k_hal_srng_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x0c240a84 ath11k_core_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x0e726cc0 ath11k_pcic_read32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x0ee3c35f ath11k_pcic_get_ce_msi_idx +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x1c0d889b ath11k_core_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x225b9f8d ath11k_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x243f56b8 ath11k_ce_free_pipes +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x2458bd98 ath11k_pcic_ext_irq_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x2471e967 ath11k_pci_disable_ce_irqs_except_wake_irq +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x28d06f29 ath11k_ce_get_attr_flags +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x3873358e ath11k_pcic_init_msi_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x412082e3 ath11k_dp_service_srng +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x422d05da ath11k_ce_rx_post_buf +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x42962060 ath11k_ce_get_shadow_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x460b3a26 ath11k_core_pre_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x462855dc ath11k_debugfs_soc_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x523ff1f2 ath11k_pcic_read +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x5b7960d1 ath11k_pci_enable_ce_irqs_except_wake_irq +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x5ca33f80 ath11k_ce_alloc_pipes +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x5d7cce53 ath11k_pcic_config_irq +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x617fd693 ath11k_pcic_ext_irq_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x619dda33 ath11k_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x653a5897 ath11k_pcic_register_pci_ops +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x680dd0be ath11k_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x8a150c17 ath11k_pcic_free_irq +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x95157be1 ath11k_pcic_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x98bfeddd ath11k_qmi_deinit_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x9a179c78 ath11k_ce_per_engine_service +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0x9c51bcc4 ath11k_debug_mask +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xa15307a3 ath11k_pcic_ce_irqs_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xa33e6dd1 ath11k_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xaadf19c4 ath11k_ce_cleanup_pipes +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xb8dfaded ath11k_hal_srng_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xbb407932 ath11k_pcic_get_user_msi_assignment +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xc3f3ec54 ath11k_pcic_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xcc9b1417 ath11k_core_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xe80dde1d ath11k_pcic_write32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xeef3918c ath11k_core_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf0197188 ath11k_cold_boot_cal +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf0839c3e ath11k_pcic_ce_irq_disable_sync +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf1aea08a ath11k_pcic_map_service_to_pipe +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf39106f5 ath11k_pcic_get_msi_address +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf73bd7b8 ath11k_core_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath11k/ath11k 0xf7cf4dc4 __tracepoint_ath11k_log_dbg +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x0ddd0cb7 ath6kl_hif_intr_bh_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x1354043d ath6kl_warn +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3502feef ath6kl_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x3fa0950e ath6kl_read_tgt_stats +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x461b5a53 ath6kl_core_create +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x48249c3e ath6kl_cfg80211_suspend +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x84442904 ath6kl_stop_txrx +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x8c86f01f ath6kl_cfg80211_resume +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0x91cfb84a ath6kl_hif_rw_comp_handler +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb881b1a9 ath6kl_printk +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xb9a689dd ath6kl_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xcdc2b130 ath6kl_core_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xcf474a64 ath6kl_core_destroy +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf09f7217 ath6kl_core_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf4172362 ath6kl_core_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath6kl/ath6kl_core 0xf5ab5898 ath6kl_core_rx_complete +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x01443157 ath9k_cmn_process_rssi +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x023dda3a ath9k_cmn_get_channel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x044e6fcb ath9k_cmn_beacon_config_ap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x05a68476 ath9k_cmn_beacon_config_adhoc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1133d23d ath9k_cmn_process_rate +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1a0aa030 ath9k_cmn_debug_stat_rx +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x1fa308c1 ath9k_cmn_spectral_scan_config +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x30ec7b89 ath9k_cmn_spectral_init_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x344c51c9 ath_cmn_process_fft +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x53e05589 ath9k_cmn_update_txpow +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x556e9d18 ath9k_cmn_init_crypto +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x6be32b26 ath9k_cmn_debug_base_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x71eb745f ath9k_cmn_reload_chainmask +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x7588f279 ath9k_cmn_get_hw_crypto_keytype +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x7a70b78c ath9k_cmn_init_channels_rates +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x87100f2c ath9k_cmn_setup_ht_cap +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x89f93c23 ath9k_cmn_debug_recv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0x910ebcaf ath9k_cmn_debug_phy_err +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa1b3296b ath9k_cmn_rx_skb_postprocess +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xa9a14083 ath9k_cmn_rx_accept +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xab02e86c ath9k_cmn_spectral_deinit_debug +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xd2981357 ath9k_cmn_count_streams +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xf05c8123 ath9k_cmn_spectral_scan_trigger +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfa5dc05f ath9k_cmn_debug_modal_eeprom +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_common 0xfaf25280 ath9k_cmn_beacon_config_sta +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x056bd151 ar9003_mci_cleanup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0595768f ath9k_hw_set_tx_filter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x05e74514 ar9003_paprd_populate_single_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x060c3bf4 ath9k_hw_computetxtime +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x06bbeeb1 ar9003_mci_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x089c5137 ath9k_hw_getnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c5b76ae ath9k_hw_name +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0c636043 ath9k_hw_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0de5a9e8 ath9k_hw_gpio_request_out +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0ed9180a ath9k_hw_setmcastfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x0f77dafc ath9k_hw_get_tsf_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x11469145 ath9k_hw_getchan_noise +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x136dfba6 ath9k_hw_releasetxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x16b3e42f ath9k_hw_setpower +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1a975e0c ath9k_hw_abort_tx_dma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x1b4edbc5 ath9k_hw_gettsf32 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x217f077a ath9k_hw_wow_apply_pattern +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2281d74f ath9k_hw_check_nav +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x22aee2d7 ar9003_is_paprd_enabled +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x27661adc ath9k_hw_phy_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x29ebc754 ath9k_hw_btcoex_init_3wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x2fe53c50 ath9k_hw_intrpend +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3073b85c ath9k_hw_puttxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3141ff79 ath9k_hw_init_global_settings +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x337b50af ath9k_hw_btcoex_bt_stomp +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x33a2a5e5 ar9003_paprd_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x367193ce ath9k_hw_set_rx_bufsize +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x3a0166a9 ath9k_hw_gen_timer_start +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4131dfdf ath9k_hw_stopdmarecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x427adc68 ath9k_hw_reset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x43fd9ff5 ar9003_hw_bb_watchdog_check +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x445ce99c ath9k_hw_btcoex_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x46bfaf80 ath9k_hw_wait +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x46c86939 ar9003_paprd_is_done +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x49cc3418 ath9k_hw_stop_dma_queue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4b76e4eb ath9k_hw_setup_statusring +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4c3c18c9 ar9003_mci_set_bt_version +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4c50cf0e ath9k_hw_putrxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x4e9faec1 ath9k_hw_numtxpending +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x51fa7ac0 ath9k_hw_btcoex_set_concur_txprio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x52ecb221 ath9k_hw_reset_calvalid +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x534e2f3d ar9003_paprd_init_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x538cb8af ath9k_hw_init +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x544d3f5f ath9k_hw_txstart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x583c99e9 ath9k_hw_gpio_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x595030da ath9k_hw_loadnf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x5b3682e0 ath9k_hw_init_btcoex_hw +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61a6f4ba ath9k_hw_abortpcurecv +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61dfc87b ar9003_mci_send_message +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x61fb2aad ath9k_hw_check_alive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x62f6aa19 ath9k_hw_set_gpio +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x69e2d9a8 ath9k_hw_set_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6aa9a475 ath9k_hw_resume_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6e0a7cd8 ath9k_hw_btcoex_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6f0ed622 ath9k_hw_write_associd +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x6f8f3b6c ath9k_hw_addrxbuf_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x73bcb89c ath9k_hw_beaconinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x77ce4b2c ath9k_hw_wow_wakeup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7a443260 ath9k_hw_startpcureceive +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x7f44f24c ath9k_hw_btcoex_init_mci +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x82683bfe ath9k_hw_btcoex_set_weight +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x85d887f7 ath9k_hw_ani_monitor +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x85e4998f ath9k_hw_beaconq_setup +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8d4cccc1 ath9k_hw_set_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x8f80850f ath9k_hw_kill_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x921835a1 ath9k_hw_btcoex_init_2wire +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9b148e2f ath9k_hw_gettxbuf +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9bd7f90c ath9k_hw_gpio_get +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9bf1992f ath9k_hw_process_rxdesc_edma +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0x9ce2c1dd ath9k_hw_gpio_request_in +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa0f0501b ar9003_hw_disable_phy_restart +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa33300f1 ath_gen_timer_alloc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa440c7df ath9k_hw_settsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xa509ffe0 ath9k_hw_set_tsfadjust +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xabc9d2fb ar9003_mci_send_wlan_channels +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb26d5a56 ar9003_mci_get_interrupt +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb282239f ath9k_hw_disable_mib_counters +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb4b5f576 ath9k_hw_deinit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb6e28d9d ath9k_hw_updatetxtriglevel +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xb96552e4 ar9003_paprd_setup_gain_table +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbaca6b39 ath9k_hw_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbb056967 ath9k_hw_setrxabort +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbc55fc3e ath9k_hw_btcoex_init_scheme +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbea03bf9 ath9k_hw_disable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xbfd4b481 ath9k_hw_gen_timer_stop +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc08049fb ath9k_hw_setuptxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc0efb198 ath_gen_timer_free +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc5d684e9 ath_gen_timer_isr +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6589e9d ath9k_hw_gettsf64 +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xc6c0a12b ath9k_hw_getrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xce3f36de ath9k_hw_setantenna +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xce806bf9 ath9k_hw_set_sta_beacon_timers +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xcf8ed408 ath9k_hw_enable_interrupts +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd13cc172 ath9k_hw_setuprxdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd44801de ath9k_hw_get_txq_props +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd4e021e9 ar9003_mci_get_next_gpm_offset +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd6586d3c ath9k_hw_btcoex_disable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xd80a9ac6 ath9k_hw_resettxqueue +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xdcb66d6a ath9k_hw_set_txpowerlimit +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe0651313 ath9k_hw_setrxfilter +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2bd1217 ath9k_hw_wow_enable +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe2dfb334 ath9k_hw_setopmode +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xe5968d61 ath9k_hw_bstuck_nfcal +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xebb5aa83 ar9003_mci_state +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xedf62ecd ath9k_hw_rxprocdesc +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf60cf8ce ar9003_hw_bb_watchdog_dbg_info +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xf9875241 ar9003_paprd_create_curve +EXPORT_SYMBOL drivers/net/wireless/ath/ath9k/ath9k_hw 0xfe8d5b31 ar9003_get_pll_sqsum_dvc +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0x2888b3a0 stop_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xb0deb2e3 init_atmel_card +EXPORT_SYMBOL drivers/net/wireless/atmel/atmel 0xf4431c17 atmel_open +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x02858cb4 brcmu_pktq_pdeq_match +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x05e36839 brcmu_pktq_penq_head +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x0927cc39 brcmu_pkt_buf_get_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x0bfb7d20 brcmu_pktq_init +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1094478a brcmu_pktq_pdeq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1278db8b brcmu_pktq_flush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x1906648e brcmu_boardrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x2c95ddda brcmu_pktq_pflush +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x3eccbd32 brcmu_pktq_mlen +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x4dbe142e brcmu_pktq_peek_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0x52e25007 brcmu_pkt_buf_free_skb +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xa17c0ccf brcmu_dotrev_str +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xad2e2fc0 brcmu_pktq_penq +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xbb923d0c brcmu_pktq_pdeq_tail +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xd6217d91 brcmu_d11_attach +EXPORT_SYMBOL drivers/net/wireless/broadcom/brcm80211/brcmutil/brcmutil 0xf492c599 brcmu_pktq_mdeq +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x09f5abd4 stop_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x0a8e6845 init_airo_card +EXPORT_SYMBOL drivers/net/wireless/cisco/airo 0x5a166b0f reset_airo_card +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x0e46efe9 libipw_wx_get_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x43ac6868 libipw_xmit +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x47ded841 free_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x5617c43e libipw_rx_mgt +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x7a40ce59 libipw_set_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x7db445a6 libipw_rx +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x81f350c2 alloc_libipw +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x8458fbf3 libipw_channel_to_index +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x87a26f5b libipw_wx_set_encode +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x8ceb5598 libipw_get_geo +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x90046814 libipw_networks_age +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0x9991b6e1 libipw_freq_to_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xa00e937e libipw_channel_to_freq +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xacca2900 libipw_wx_get_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xb0ce4be6 libipw_wx_get_scan +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe69c933e libipw_get_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xe8c48bc7 libipw_get_channel_flags +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xecfa3bb5 libipw_is_valid_channel +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf0233c2c libipw_txb_free +EXPORT_SYMBOL drivers/net/wireless/intel/ipw2x00/libipw 0xf6f4bddd libipw_wx_set_encodeext +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x05e8d7ff il_write_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x07e9bef0 il_read_targ_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0b592b09 il_connection_init_rx_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0ba366ff il_init_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0d4a157a il_set_rxon_hwcrypto +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x0e455d72 il_get_lowest_plcp +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x12bc6c32 il_get_channel_info +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x12bf44c5 il_send_cmd_pdu +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x154d311f il_update_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x17c5f179 il_mac_add_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x187eaa14 il_clear_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x195d132a il_add_station_common +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x19b26873 il_eeprom_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1b37ef20 il_mac_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1d13b1fc il_txq_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x1dfff733 il_set_rxon_channel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x206c3b97 il_power_initialize +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x273655b8 il_rx_queue_update_write_ptr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x2bf7eea6 il_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x334d320e il_fill_probe_req +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x34549ca2 il_free_channel_map +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x370cf3c9 il_hdl_csa +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x393c826f il_scan_cancel_timeout +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3a312314 il_set_rxon_ht +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3a86e902 il_set_decrypted_flag +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x3e631a94 il_restore_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x416bd26a il_debug_level +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4540fb8e il_mac_hw_scan +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4a89b508 il_tx_cmd_complete +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4b34aaad il_leds_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x4b9c380b il_get_active_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x513bff0a il_chswitch_done +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x52a4cdbf il_cmd_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x532d85b4 il_hdl_pm_sleep +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x557edc2d il_mac_sta_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x55b7a1d5 il_mac_reset_tsf +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x598400af il_rx_queue_space +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x59b8a368 il_scan_cancel +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x5a141d5a il_eeprom_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69cf0062 il_irq_handle_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x69efcf60 il_full_rxon_required +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6b16d9a4 il_send_stats_request +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x6c799c8a il_leds_exit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7032a320 _il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x74dd04ef il_get_passive_dwell_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x778e65c4 il_mac_bss_info_changed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7a2f6990 il_rx_queue_alloc +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7b65d0e3 il_setup_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x7f204664 il_tx_queue_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8207a2eb il_check_rxon_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8685e5d4 il_cancel_scan_deferred_work +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8721a062 il_clear_ucode_stations +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x877e5a27 il_power_update_mode +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x88d2d1ed il_tx_cmd_protection +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x89dfd82c il_send_bt_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8db15bab il_set_tx_power +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x8f0a8344 il_free_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9ac3bd11 il_send_add_sta +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9c288759 il_init_scan_params +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x9cc714af il_bg_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa299d098 il_mac_conf_tx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa4e7b48b il_tx_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa7cdf904 il_mac_config +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa823dea7 il_send_lq_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xa8b19b22 il_force_reset +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xab103faf il_rd_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xac6b6a5c il_apm_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xae77f509 il_setup_rx_scan_handlers +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xafbae16f il_get_free_ucode_key_idx +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb01a80fb il_hdl_error +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb382eb44 _il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb4900683 il_wr_prph +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb65510a3 il_get_cmd_string +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb68feff4 il_send_cmd_sync +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb7bd33ff il_isr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb8244817 il_alloc_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xb834702b il_hdl_pm_debug_stats +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xbb0a1a09 il_set_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc12878f3 il_usecs_to_beacons +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc4d5ad18 il_free_txq_mem +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc535c5e8 il_eeprom_query_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc9d8f680 il_set_flags_for_band +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xca159985 il_dbgfs_register +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcc16316c il_tx_queue_init +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xcca75617 il_cmd_queue_free +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd41d8c4a il_send_cmd +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd6d4fdd9 il_init_geos +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd6fe544f il_set_rate +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd751b428 il_eeprom_query16 +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd79b3fd1 il_setup_watchdog +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdd7f811b il_send_rxon_timing +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdf32ec8b il_dbgfs_unregister +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdf664be5 il_tx_queue_unmap +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf0029c65 il_apm_stop +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf2d4748a il_poll_bit +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf3f65b39 il_mac_change_interface +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf46103d8 il_mac_flush +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf4c932b1 il_hdl_spectrum_measurement +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf5481e35 il_is_ht40_tx_allowed +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf70a693b il_bcast_addr +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xf7c6f5dc il_pm_ops +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfb190c17 il_send_cmd_pdu_async +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfe598738 il_get_single_channel_number +EXPORT_SYMBOL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xfea826b8 il_add_beacon_time +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x17135df5 __tracepoint_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x260bf27c __SCK__tp_func_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x38688d65 __SCT__tp_func_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x3a2a40a5 __SCT__tp_func_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x57f55d63 __traceiter_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x632ce03c iwl_trans_pcie_remove +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x75ef5762 __tracepoint_iwlwifi_dev_ucode_wrap_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb1878e46 __SCK__tp_func_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xb9e396fb __traceiter_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xd81e2f28 __SCT__tp_func_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe2632b58 __tracepoint_iwlwifi_dev_ucode_cont_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xe5fc3224 __SCK__tp_func_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intel/iwlwifi/iwlwifi 0xfa720f15 __traceiter_iwlwifi_dev_ucode_event +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x03be18bf hostap_set_string +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0b5a7908 hostap_remove_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0c924cd0 hostap_init_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x0d26dc8e hostap_info_process +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x213218cc hostap_get_porttype +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x25709d68 hostap_setup_dev +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x4b243618 hostap_set_antsel +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x5e1e0369 hostap_set_auth_algs +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x6d62a177 hostap_info_init +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x75934c58 hostap_set_multicast_list_queue +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x7fb75891 hostap_dump_rx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8752fc04 hostap_init_ap_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x8953eff3 hostap_set_hostapd_sta +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0x9f286cc0 hostap_set_roaming +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa68e9a65 hostap_handle_sta_tx_exc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xa8145734 hostap_check_sta_fw_version +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xaba45f40 hostap_set_hostapd +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb39f2a8c hostap_set_word +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xb4b77c8b hostap_80211_get_hdrlen +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xbce23840 hostap_remove_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd0fa329f hostap_set_encryption +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd3b64f3a hostap_80211_ops +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xd40a26d6 hostap_free_data +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xde690182 hostap_init_proc +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xed00eae0 hostap_80211_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf16bc7b8 hostap_add_interface +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf174c4f0 hostap_master_start_xmit +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf6e83ed5 prism2_update_comms_qual +EXPORT_SYMBOL drivers/net/wireless/intersil/hostap/hostap 0xf91c03e2 hostap_dump_tx_header +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x07ad9f10 orinoco_open +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x103e2ffb orinoco_process_xmit_skb +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x115c67ee orinoco_if_del +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x409fc5be orinoco_stop +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x42b804d6 orinoco_change_mtu +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x481305ba orinoco_set_multicast_list +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x495900e9 alloc_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x6f80732b free_orinocodev +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x7a971ef6 orinoco_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0x9ccd51a8 orinoco_if_add +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xa74c2dc5 hermes_struct_init +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xc61accc4 orinoco_up +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xcfdaa419 orinoco_tx_timeout +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xdf6cf5a4 orinoco_down +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xf03f2119 __orinoco_ev_rx +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffc0a8e5 __orinoco_ev_info +EXPORT_SYMBOL drivers/net/wireless/intersil/orinoco/orinoco 0xffe27bca orinoco_interrupt +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0x327a9822 mt76_rx_signal +EXPORT_SYMBOL drivers/net/wireless/mediatek/mt76/mt76 0xd58b0dd4 mt76_wcid_key_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/btcoexist/btcoexist 0xc66111aa rtl_btc_get_ops_pointer +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x01f10cd7 rtl92c_fill_h2c_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x137d9571 rtl92c_download_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x17a063fc rtl92c_dm_rf_saving +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x1e1089d6 _rtl92c_phy_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x2327d91c _rtl92c_phy_calculate_bit_shift +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x250afb4d rtl92c_dm_init_edca_turbo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x29d2734c rtl92c_set_fw_joinbss_report_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x310d2026 rtl92c_phy_set_bw_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x32221c8b rtl92c_phy_rf_config +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x368a596a rtl92c_phy_query_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x448bdb64 _rtl92c_store_pwrindex_diffrate_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x47156489 rtl92c_phy_iq_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4904ae35 rtl8192_phy_check_is_legal_rfpath +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x4c3d3ee0 _rtl92c_phy_init_bb_rf_register_definition +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x58b3dbff rtl92c_bt_rssi_state_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x5ae9a945 rtl92ce_phy_set_rf_on +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x6054906f rtl92c_phy_set_rfpath_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x71619fe8 _rtl92c_phy_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x72015f0f _rtl92c_phy_set_rf_sleep +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x72ea0c47 _rtl92c_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x78c5e03a rtl92c_dm_init_rate_adaptive_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x8269c14c rtl92c_phy_update_txpower_dbm +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x91541c96 rtl92c_dm_write_dig +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x991e9146 rtl92c_phy_sw_chnl_callback +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9986cf6f rtl92c_phy_set_bb_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x9e2827e3 rtl92c_set_fw_rsvdpagepkt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xa034228e rtl92c_dm_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xae36c322 rtl92c_dm_check_txpower_tracking +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb47fa3d8 rtl92c_phy_set_txpower_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb7cc94a0 rtl92c_dm_watchdog +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xb81c3bbf rtl92c_dm_bt_coexist +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbb844759 rtl92c_phy_set_io +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbc96fbbb _rtl92c_phy_bb8192c_config_parafile +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc4623559 rtl92c_phy_lc_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xc808e776 rtl92c_set_fw_pwrmode_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcb19dbad rtl92c_firmware_selfreset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xcf2404bb _rtl92c_phy_fw_rf_serial_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xdb2e7aaa rtl92c_phy_set_io_cmd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xddc9a7a7 _rtl92c_phy_dbm_to_txpwr_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xe160d384 _rtl92c_phy_fw_rf_serial_write +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xefec10f9 rtl92c_phy_ap_calibrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf7da1023 rtl92c_phy_sw_chnl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x5ed4189a rtl_pci_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x7647e675 rtl_pci_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0x9f35a5a2 rtl_pci_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_pci 0xbf3113f9 rtl_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x4692732a rtl_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0x89afa0d9 rtl_usb_suspend +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xdda298d6 rtl_usb_resume +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtl_usb 0xe7728ad1 rtl_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x09951a8a rtl_send_smps_action +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x0b038e24 channel5g_80m +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1178c77c rtl_bb_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b945315 rtl_addr_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x30a956d7 rtl_query_rxpwrpercentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3207c3c4 rtl_cam_delete_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3a3cee2c rtl_hal_pwrseqcmdparsing +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3b11a295 rtl_rfreg_delay +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3d74ba1d rtl_collect_scan_list +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x3f915cff efuse_one_byte_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4337342c rtl_signal_scale_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x504f9d14 rtl_cmd_send_packet +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5077a58c rtl_get_tcb_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x54824f58 channel5g +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x57164e4b rtl_cam_reset_all_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x64a10945 rtl_phy_scan_operation_backup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6854d9e6 rtl_cam_get_free_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7469c5e6 rtl_efuse_shadow_map_update +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x77269081 rtl_init_rfkill +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8ea60059 rtl_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x925c3d5b rtl_mrate_idx_to_arfr_id +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x95a2f4f5 rtl_dm_diginit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x985531b9 rtl_cam_add_one_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x996d8979 efuse_read_1byte +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa3e73392 rtl_process_phyinfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa49da5de rtl_init_sw_leds +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa8aa7dd3 rtl_cam_del_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc1d5f153 efuse_shadow_read +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcbe3fe3b rtl_cam_mark_invalid +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcd069135 rtl_rx_ampdu_apply +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xd048efe9 efuse_power_switch +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdfd25270 rtlwifi_rate_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xebd109f9 rtl_ps_disable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xebedfe5f rtl_wowlan_fw_cb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xed7c8cf2 rtl_evm_db_to_percentage +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xef135dde rtl_cam_empty_entry +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfb208751 rtl_ps_enable_nic +EXPORT_SYMBOL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfe14fa46 rtl_c2hcmd_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8723d 0x7f3e6cb4 rtw8723d_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8821c 0xe2fe1b39 rtw8821c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822b 0x94de1606 rtw8822b_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_8822c 0x7b1c7d38 rtw8822c_hw_spec +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x03f1502e rtw_tx_fill_tx_desc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x06719c5b rtw_coex_write_scbd +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1433c562 rtw_unregister_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1ce80fbc rtw_parse_tbl_bb_pg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x1dc2d072 rtw_tx_ac_to_hwq +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x213c0150 rtw_dump_fw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2163015f rtw_phy_config_swing_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x227d4420 rtw_fw_do_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x24711c38 rtw_bf_cfg_csi_rate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x2c78a774 rtw_coex_write_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x33b3f3c0 rtw_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3576bb0b rtw_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x36c5bfca rtw_disable_lps_deep_mode +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x3900826e check_hw_ready +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x399e6bba rtw_restore_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x440b7589 rtw_phy_rf_power_2_rssi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x45f7399b rtw_coex_read_indirect_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4b05c58d rtw_phy_write_rf_reg_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4bfd17bb rtw_phy_pwrtrack_need_lck +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4c403412 rtw_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x4dba00cb rtw_bf_remove_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x509d6ccc rtw_phy_pwrtrack_get_delta +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x51519f0a rtw_phy_cfg_bb +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x51994910 rtw_phy_get_tx_power_index +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x519c8ba9 rtw_rate_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x574b655f rtw_phy_cfg_agc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x58210e60 rtw_rate_section +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5a4221db rtw_bf_phy_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5ad72d0e rtw_phy_parsing_cfo +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5bd9d604 rtw_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x5df76ce0 rtw_register_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6185f68b __rtw_dbg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x682e984b rtw_phy_cfg_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6b8539cb rtw_fw_c2h_cmd_rx_irqsafe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x6e1abb38 rtw_fw_inform_rfk_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x74163cc1 rtw_tx_write_data_h2c_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x7ea0dd70 rtw_set_channel_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8273105f rtw_dump_reg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x8bff6390 rtw_parse_tbl_phy_cond +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0x9ce74c1b rtw_regd_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa0efe79e rtw_phy_pwrtrack_avg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa13a5d45 rtw_phy_pwrtrack_get_pwridx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa65617cd rtw_rx_fill_rx_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa7d4d2e0 rtw_parse_tbl_txpwr_lmt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xa8cb2912 rtw_bf_enable_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xab358fbb rtw_phy_pwrtrack_thermal_changed +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xb4cab41d rtw_bf_set_gid_table +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbb13a7f5 rtw_tx_write_data_rsvd_page_get +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xbb90a6e2 rtw_phy_write_rf_reg_mix +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc05589d9 rtw_tx_queue_mapping +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc2d022bf rtw_bf_remove_bfee_su +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xc31abc0c rtw_phy_set_edcca_th +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcb161811 rtw_phy_read_rf_sipi +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcebca8fa rtw_phy_set_tx_power_level +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xcf6e7e14 rtw_phy_pwrtrack_need_iqk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd07c5dfe rtw_read8_physical_efuse +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xd78ac93a rtw_phy_cfg_mac +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xdd507fea rtw_tx_report_enqueue +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe16fa3a4 rtw_power_mode_change +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe33705d2 rtw_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe4d48e2d rtw_rx_stats +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xe84009e7 rtw_phy_load_tables +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xef2fc12d rtw_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf22154ec rtw_bf_enable_bfee_mu +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xf4d09291 rtw_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfa6056f4 rtw_set_rx_freq_band +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_core 0xfcf1a868 rtw_fw_c2h_cmd_isr +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x50a94d77 rtw_pci_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x60312e91 rtw_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0x7c765a83 rtw_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_pci 0xb31f51b4 rtw_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_sdio 0x0cec8397 rtw_sdio_shutdown +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_sdio 0x77892f76 rtw_sdio_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_sdio 0x8b43c5c3 rtw_sdio_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_sdio 0xa06d105a rtw_sdio_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_usb 0x156ade3c rtw_usb_disconnect +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw88/rtw88_usb 0x3504e3e7 rtw_usb_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_8851b 0x1d499420 rtw8851b_chip_info +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_8852a 0xd71d2a1e rtw8852a_chip_info +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_8852b 0xa083f8ee rtw8852b_chip_info +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_8852c 0x3b26b481 rtw8852c_chip_info +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x04adef83 __rtw89_debug +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x06e77eda rtw89_fw_h2c_dctl_sec_cam_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x0b8b63f6 rtw89_phy_read_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x0b98f01c rtw89_core_fill_txdesc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x0e2cce86 rtw89_core_fill_txdesc_fwcmd_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x0e73b077 rtw89_mac_get_txpwr_cr +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x1554c71c rtw89_mac_resume_sch_tx_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x1af62e4d rtw89_mac_get_err_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x1b650fad rtw89_mac_read_xtal_si +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x1bd63efe rtw89_core_register +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x1e6a8a0a rtw89_core_napi_stop +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x22dccdf5 rtw89_btc_ntfy_wl_rfk +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x26def549 rtw89_ser_notify +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x2caa3e53 rtw89_phy_set_txpwr_byrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x315a774f rtw89_phy_set_txpwr_limit_ru +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x34b74412 rtw89_mac_enable_bb_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x358c69b2 rtw89_mac_write_xtal_si +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x39557f92 rtw89_phy_load_txpwr_byrate +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x3ea1ddd3 rtw89_phy_write_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x3fda6eaf rtw89_encode_chan_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x607d44fd rtw89_btc_set_policy_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x6e4b1f34 rtw89_core_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x6e827f98 rtw89_phy_set_txpwr_offset +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x6f84dc44 rtw89_core_rx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x7ecf9f3c rtw89_core_napi_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x80daa758 rtw89_phy_set_txpwr_limit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x87a2ed65 rtw89_mac_resume_sch_tx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x8d47a6d3 rtw89_mac_coex_init +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x914d9d72 rtw89_phy_write_reg3_tbl +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x932fece2 rtw89_mac_disable_bb_rf +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x93a3194f rtw89_phy_read_rf_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x9ac85705 rtw89_mac_size +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x9b526320 rtw89_read_efuse_ver +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0x9f171c2c rtw89_phy_write32_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xab26cc20 rtw89_core_query_rxdesc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xb0220d53 rtw89_core_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xb780d8d8 rtw89_core_napi_start +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xb8c41606 rtw89_decode_chan_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xbb8589b1 rtw89_mac_cfg_gnt_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xbd13a3de rtw89_mac_cfg_gnt +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xbd357342 rtw89_mac_coex_init_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xbe33ac4a rtw89_mac_set_err_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xc0d5b653 rtw89_fw_h2c_rf_ntfy_mcc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xc4a2b6ce rtw89_mac_cfg_ctrl_path +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xc5ec3d2a rtw89_phy_read32_idx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xc8799e0d rtw89_core_fill_txdesc_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xc95c3c8f rtw89_core_napi_deinit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xcdd474b9 rtw89_free_ieee80211_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xd45d16fd rtw89_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xd66b68f6 rtw89_mac_cfg_ctrl_path_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xd6884121 rtw89_phy_tssi_ctrl_set_bandedge_cfg +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xd8dc2f7e rtw89_chip_info_setup +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xd9d910b6 rtw89_phy_write_rf_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xdc9c3052 rtw89_btc_set_policy +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xe35dbcd6 rtw89_mac_cfg_ppdu_status +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xe3f57b04 rtw89_debug_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xe48b663d rtw89_phy_get_txsc +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xe4bca010 rtw89_rfk_parser +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xeadbe9cc rtw89_mac_stop_sch_tx +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xf4dfb8b2 rtw89_alloc_ieee80211_hw +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xf9684e6e rtw89_phy_config_rf_reg_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xf98c0b29 rtw89_mac_stop_sch_tx_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xfb6eb1ac rtw89_core_unregister +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_core 0xffeff883 rtw89_phy_read_txpwr_limit +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x02cd97c4 rtw89_pci_probe +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x0b7e63b2 rtw89_pci_recognize_intrs_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x0f2ed401 rtw89_pci_fill_txaddr_info_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x12c82b5c rtw89_pci_fill_txaddr_info +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x255dc9aa rtw89_pm_ops +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x310363b3 rtw89_pci_enable_intr +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x315018c6 rtw89_pci_ltr_set +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x65c134ed rtw89_pci_config_intr_mask +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x6614872a rtw89_pci_enable_intr_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x6efd9f2c rtw89_bd_ram_table_dual +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x71162055 rtw89_bd_ram_table_single +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x91cf562e rtw89_pci_recognize_intrs +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x91ec77c0 rtw89_pci_ltr_set_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0x9ce0961b rtw89_pci_ch_dma_addr_set +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0xad336aea rtw89_pci_disable_intr +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0xc2622fb9 rtw89_pci_remove +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0xe1ed6a0c rtw89_pci_config_intr_mask_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0xf262196c rtw89_pci_disable_intr_v1 +EXPORT_SYMBOL drivers/net/wireless/realtek/rtw89/rtw89_pci 0xf630d9a9 rtw89_pci_ch_dma_addr_set_v1 +EXPORT_SYMBOL drivers/net/wireless/rsi/rsi_91x 0xde2cc468 rsi_config_wowlan +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0x5f9f67c7 wl1271_free_tx_id +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xa1c9ee42 wlcore_calc_packet_alignment +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xb2ccf86a wlcore_tx_complete +EXPORT_SYMBOL drivers/net/wireless/ti/wlcore/wlcore 0xed47854e wl12xx_is_dummy_packet +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0x74476317 fdp_nci_probe +EXPORT_SYMBOL drivers/nfc/fdp/fdp 0xcee8aef8 fdp_nci_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0x20d60eda microread_remove +EXPORT_SYMBOL drivers/nfc/microread/microread 0xb1cba884 microread_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0x7c12a0fe nxp_nci_fw_recv_frame +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xc3186981 nxp_nci_probe +EXPORT_SYMBOL drivers/nfc/nxp-nci/nxp-nci 0xe8519a48 nxp_nci_remove +EXPORT_SYMBOL drivers/nfc/pn533/pn533 0x18981992 pn533_recv_frame +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xaacbdb48 pn544_hci_remove +EXPORT_SYMBOL drivers/nfc/pn544/pn544 0xc77cf99e pn544_hci_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x16735e6a s3fwrn5_probe +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x5137dc7f s3fwrn5_recv_frame +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x774203fc s3fwrn5_phy_set_wake +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0x94501d3c s3fwrn5_remove +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xd4c72de1 s3fwrn5_phy_power_ctrl +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xedb12f10 s3fwrn5_phy_set_mode +EXPORT_SYMBOL drivers/nfc/s3fwrn5/s3fwrn5 0xf2ab60da s3fwrn5_phy_get_mode +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x04c0456c ndlc_recv +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x05f078ce ndlc_open +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x363a3e46 st_nci_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x5fdfc571 st_nci_se_io +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0x7255e982 ndlc_probe +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xac95bfa7 st_nci_se_init +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xb3ab3e5d ndlc_remove +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xb98d16d4 ndlc_send +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xceae765b st_nci_se_deinit +EXPORT_SYMBOL drivers/nfc/st-nci/st-nci 0xfdac1f5e ndlc_close +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x024a9506 st21nfca_hci_remove +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x0b8705af st21nfca_hci_enable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x20f756a0 st21nfca_hci_probe +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x229e528f st21nfca_im_send_atr_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x366453b3 st21nfca_hci_loopback_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x36a42dfe st21nfca_vendor_cmds_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x3ce2241c st21nfca_hci_disable_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x427f68cc st21nfca_se_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x5a26f3e2 st21nfca_im_send_dep_req +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x7a99a116 st21nfca_apdu_reader_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x832e33fe st21nfca_hci_se_io +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0x8e8f80cc st21nfca_hci_discover_se +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xc20cfb61 st21nfca_dep_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd5cbadd7 st21nfca_dep_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xd890f23e st21nfca_dep_init +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xe39bce5d st21nfca_se_deinit +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xeea85e5c st21nfca_connectivity_event_received +EXPORT_SYMBOL drivers/nfc/st21nfca/st21nfca_hci 0xf1442fb0 st21nfca_tm_send_dep_res +EXPORT_SYMBOL drivers/ntb/ntb 0x0b9ef696 ntb_set_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x0c4e3652 ntb_clear_ctx +EXPORT_SYMBOL drivers/ntb/ntb 0x0cded0f0 ntb_msg_event +EXPORT_SYMBOL drivers/ntb/ntb 0x20e07826 __ntb_register_client +EXPORT_SYMBOL drivers/ntb/ntb 0x2ae68a06 ntb_msi_init +EXPORT_SYMBOL drivers/ntb/ntb 0x34c4a2c7 ntb_link_event +EXPORT_SYMBOL drivers/ntb/ntb 0x34e465d2 ntb_register_device +EXPORT_SYMBOL drivers/ntb/ntb 0x373fcba2 ntb_default_peer_port_idx +EXPORT_SYMBOL drivers/ntb/ntb 0x3a32c6c8 ntb_msi_peer_trigger +EXPORT_SYMBOL drivers/ntb/ntb 0x48d8c059 ntb_default_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x595dcb88 ntb_default_peer_port_number +EXPORT_SYMBOL drivers/ntb/ntb 0x599c76ef ntb_msi_peer_addr +EXPORT_SYMBOL drivers/ntb/ntb 0x6dfed4f1 ntb_default_peer_port_count +EXPORT_SYMBOL drivers/ntb/ntb 0x8fb25c90 ntb_unregister_device +EXPORT_SYMBOL drivers/ntb/ntb 0x97670ad6 ntbm_msi_request_threaded_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xb741f9a8 ntb_msi_clear_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xb9c09327 ntbm_msi_free_irq +EXPORT_SYMBOL drivers/ntb/ntb 0xbd88e1b9 ntb_db_event +EXPORT_SYMBOL drivers/ntb/ntb 0xec62ab09 ntb_msi_setup_mws +EXPORT_SYMBOL drivers/ntb/ntb 0xf476011a ntb_unregister_client +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0x68eb49a2 nvdimm_namespace_detach_btt +EXPORT_SYMBOL drivers/nvdimm/nd_btt 0xf10f73de nvdimm_namespace_attach_btt +EXPORT_SYMBOL drivers/parport/parport 0x0af52c12 parport_claim +EXPORT_SYMBOL drivers/parport/parport 0x0c0765aa parport_set_timeout +EXPORT_SYMBOL drivers/parport/parport 0x1290e1c1 parport_register_dev_model +EXPORT_SYMBOL drivers/parport/parport 0x12d8d185 parport_ieee1284_ecp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0x2509fc36 parport_ieee1284_ecp_write_data +EXPORT_SYMBOL drivers/parport/parport 0x2aa79234 parport_put_port +EXPORT_SYMBOL drivers/parport/parport 0x30512777 parport_write +EXPORT_SYMBOL drivers/parport/parport 0x3194b81e parport_ieee1284_epp_read_addr +EXPORT_SYMBOL drivers/parport/parport 0x352b74ff parport_ieee1284_write_compat +EXPORT_SYMBOL drivers/parport/parport 0x4c3feff4 parport_get_port +EXPORT_SYMBOL drivers/parport/parport 0x4d2a941b parport_ieee1284_interrupt +EXPORT_SYMBOL drivers/parport/parport 0x4f573df0 parport_remove_port +EXPORT_SYMBOL drivers/parport/parport 0x5e3a3912 parport_irq_handler +EXPORT_SYMBOL drivers/parport/parport 0x601ebb2a parport_ieee1284_epp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x69426dc2 parport_unregister_driver +EXPORT_SYMBOL drivers/parport/parport 0x6f01edd2 parport_wait_event +EXPORT_SYMBOL drivers/parport/parport 0x70fe661e parport_release +EXPORT_SYMBOL drivers/parport/parport 0x74ac6319 parport_ieee1284_ecp_read_data +EXPORT_SYMBOL drivers/parport/parport 0x8b11dfca parport_negotiate +EXPORT_SYMBOL drivers/parport/parport 0x9401d2c6 parport_find_base +EXPORT_SYMBOL drivers/parport/parport 0x956903ba parport_ieee1284_read_nibble +EXPORT_SYMBOL drivers/parport/parport 0x9c3290e4 parport_announce_port +EXPORT_SYMBOL drivers/parport/parport 0x9f32df74 parport_claim_or_block +EXPORT_SYMBOL drivers/parport/parport 0xa4bd7afe __parport_register_driver +EXPORT_SYMBOL drivers/parport/parport 0xa7e1eecd parport_register_port +EXPORT_SYMBOL drivers/parport/parport 0xbe6c5703 parport_ieee1284_read_byte +EXPORT_SYMBOL drivers/parport/parport 0xc0426bb4 parport_ieee1284_epp_write_addr +EXPORT_SYMBOL drivers/parport/parport 0xc4687e55 parport_read +EXPORT_SYMBOL drivers/parport/parport 0xd1827652 parport_wait_peripheral +EXPORT_SYMBOL drivers/parport/parport 0xe4cf88b4 parport_find_number +EXPORT_SYMBOL drivers/parport/parport 0xe77229ca parport_del_port +EXPORT_SYMBOL drivers/parport/parport 0xe9ae462f parport_unregister_device +EXPORT_SYMBOL drivers/parport/parport 0xf7934607 parport_ieee1284_epp_write_data +EXPORT_SYMBOL drivers/parport/parport_pc 0xb818ac07 parport_pc_probe_port +EXPORT_SYMBOL drivers/parport/parport_pc 0xc0f350bb parport_pc_unregister_port +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0a608a02 pcmcia_register_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x0ee8ef3d pcmcia_dev_present +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x197bced5 pcmcia_unregister_driver +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x23c9bee8 pcmcia_loop_config +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x3fe54314 pcmcia_request_io +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x4305388e pcmcia_get_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x45dea291 pcmcia_fixup_vpp +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x572223a0 pcmcia_disable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x6e4f9142 pcmcia_get_mac_from_cis +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0x9b6d7a64 pcmcia_fixup_iowidth +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xb67da27e pcmcia_request_irq +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xbb312663 pcmcia_parse_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xc049d4b7 pcmcia_enable_device +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xce9aa053 pcmcia_loop_tuple +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xeb68cc88 pcmcia_map_mem_page +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xef2541e1 pcmcia_write_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfc4cff77 pcmcia_release_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xfd5ab79c pcmcia_request_window +EXPORT_SYMBOL drivers/pcmcia/pcmcia 0xff026ccc pcmcia_read_config_byte +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x212db8d2 pcmcia_socket_list +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3be77bd1 pcmcia_reset_card +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x3fab7c89 pcmcia_put_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x7a8a75bf pcmcia_register_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x83c7fa05 pcmcia_parse_events +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8ab12dc8 pcmcia_get_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0x8ce5c845 pccard_register_pcmcia +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xb450f10f pcmcia_socket_class +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xc03ea82c pcmcia_parse_uevents +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xcf97f3bd dead_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xd8149b28 pcmcia_unregister_socket +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf2012123 pcmcia_get_socket_by_nr +EXPORT_SYMBOL drivers/pcmcia/pcmcia_core 0xf942709b pcmcia_socket_list_rwsem +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xd7d5b80f pccard_static_ops +EXPORT_SYMBOL drivers/pcmcia/pcmcia_rsrc 0xe572b2bd pccard_nonstatic_ops +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x4a03021a cros_ec_suspend +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x50833210 cros_ec_unregister +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x6ed1d6c0 cros_ec_register +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0x7ebc71cd cros_ec_resume +EXPORT_SYMBOL drivers/platform/chrome/cros_ec 0xf25aacf5 cros_ec_irq_thread +EXPORT_SYMBOL drivers/platform/chrome/cros_ec_lpcs 0xaa1c36de cros_ec_lpc_io_bytes_mec +EXPORT_SYMBOL drivers/platform/chrome/cros_ec_lpcs 0xc4ebc6b3 cros_ec_lpc_mec_init +EXPORT_SYMBOL drivers/platform/x86/dell/dcdbas 0xa75079d6 dcdbas_smi_request +EXPORT_SYMBOL drivers/platform/x86/intel/intel_punit_ipc 0x3a0b563a intel_punit_ipc_simple_command +EXPORT_SYMBOL drivers/platform/x86/sony-laptop 0xd857cac7 sony_pic_camera_command +EXPORT_SYMBOL drivers/platform/x86/wmi 0xc607cc55 wmi_driver_unregister +EXPORT_SYMBOL drivers/platform/x86/wmi 0xd27b4a54 __wmi_driver_register +EXPORT_SYMBOL drivers/rpmsg/qcom_glink 0xd7119b40 qcom_glink_native_rx +EXPORT_SYMBOL drivers/rpmsg/rpmsg_char 0x19446f6d rpmsg_chrdev_eptdev_destroy +EXPORT_SYMBOL drivers/rpmsg/rpmsg_char 0xb5567475 rpmsg_chrdev_eptdev_create +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x07ba8774 rpmsg_sendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x0a6347b4 unregister_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x0f83bdb1 rpmsg_release_channel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x19c5915b rpmsg_unregister_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x387e9aad rpmsg_register_device_override +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x4146ddf0 rpmsg_trysendto +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x4527daf1 rpmsg_send +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x63b6a41c rpmsg_get_mtu +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x80aa5352 rpmsg_find_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x80c5e0ef rpmsg_destroy_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x87dc98fe rpmsg_trysend_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x8e3687ae rpmsg_poll +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0x9e908c37 rpmsg_class +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xa03de2cd rpmsg_register_device +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xdce2de61 rpmsg_trysend +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe38fb6e9 rpmsg_create_channel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xe961ee58 rpmsg_send_offchannel +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xf580746c rpmsg_create_ept +EXPORT_SYMBOL drivers/rpmsg/rpmsg_core 0xfaf0511a __register_rpmsg_driver +EXPORT_SYMBOL drivers/rpmsg/rpmsg_ns 0x7ce1d282 rpmsg_ns_register_device +EXPORT_SYMBOL drivers/scsi/53c700 0x3d9cece0 NCR_700_intr +EXPORT_SYMBOL drivers/scsi/53c700 0x3ebe761a NCR_700_detect +EXPORT_SYMBOL drivers/scsi/53c700 0xb09aeef4 NCR_700_release +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x3150c1c0 scsi_esp_register +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x499f47cd scsi_esp_unregister +EXPORT_SYMBOL drivers/scsi/esp_scsi 0x4a29ab38 scsi_esp_intr +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xbc939990 scsi_esp_cmd +EXPORT_SYMBOL drivers/scsi/esp_scsi 0xd8b4f961 scsi_esp_template +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x05dfb7a8 fcoe_ctlr_link_down +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x23337d79 fcoe_ctlr_els_send +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x2a2f877b fcoe_ctlr_link_up +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x63ff8f10 fcoe_ctlr_destroy +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x66cc4c35 fcoe_transport_detach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x7fd7c6d2 fcoe_ctlr_set_fip_mode +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x82a617b9 fcoe_fcf_get_selected +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x884f5f68 fcoe_transport_attach +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x92bea4bd fcoe_ctlr_recv_flogi +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0x96a7420e fcoe_ctlr_init +EXPORT_SYMBOL drivers/scsi/fcoe/libfcoe 0xbdc7ecb8 fcoe_ctlr_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x01ae157d fc_lport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0478035d fc_seq_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x094fcb46 fc_lport_bsg_request +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0c588c9b fc_lport_flogi_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x0f66fdd7 fc_lport_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x17a873a2 fc_fcp_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x22b90986 fc_exch_mgr_del +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x279d7b0f fc_lport_logo_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x28db5cba fc_queuecommand +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x2a876eb1 fc_fill_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x33a26622 fc_seq_assign +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3896249b fc_exch_mgr_add +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x3b4e1949 _fc_frame_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x400eaea0 fc_fc4_register_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x42449e71 fc_exch_update_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x441dca87 fc_fc4_deregister_provider +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x4f71b001 fc_linkdown +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x513fe4a2 fc_vport_setlink +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x544e5a30 fc_exch_mgr_free +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x57c2ef49 fc_lport_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x5b6836dd fc_exch_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x63db3653 fc_disc_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x65c86f06 fc_exch_mgr_list_clone +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x68141178 fc_set_rport_loss_tmo +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x75f02cbc fc_get_host_stats +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x79fb9b65 fc_fill_reply_hdr +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7cf1bf5a fc_frame_crc_check +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x7f3407a7 fc_seq_start_next +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x802c97a5 fc_get_host_speed +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8063427c fc_seq_set_resp +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x811811e0 fc_exch_done +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8465b45a fc_slave_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x87262813 fc_fabric_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8d025566 fc_disc_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x8dbd98c8 fc_exch_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9767d563 fc_lport_config +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0x9d50ed7e fc_rport_destroy +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xa1bcd198 fc_cpu_mask +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xae127531 fc_lport_iterate +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb098c1fc fc_exch_mgr_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb0ddd5a1 fc_rport_flush_queue +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb60fab44 fc_linkup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xb8af5aae fc_vport_id_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbc2809ff fc_exch_mgr_alloc +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xbe4f1777 fc_rport_login +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc1e80ad9 fc_frame_alloc_fill +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xc43513de libfc_vport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcbebac02 fc_rport_terminate_io +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xcd496764 fc_rport_create +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd243d074 fc_get_host_port_state +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd5253356 fc_lport_recv +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xd8de89c5 fc_lport_set_local_id +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdf15ec9d fc_rport_lookup +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xdf733522 fc_fcp_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe372ba78 fc_elsct_init +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe5cf06b5 fc_lport_notifier_head +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xe8886bae fc_elsct_send +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf076c645 fc_set_mfs +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf3d1828d fc_fabric_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf50dee7e fc_eh_device_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf73ef0a1 fc_eh_host_reset +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9813fdd fc_eh_abort +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xf9cbc21e fc_rport_recv_req +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfa4667d1 fc_seq_release +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfb3bedc6 fc_rport_logoff +EXPORT_SYMBOL drivers/scsi/libfc/libfc 0xfd1a3aa0 fc_exch_seq_send +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x4a8e3d34 try_test_sas_gpio_gp_bit +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x6398bd0c sas_prep_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0x7dbbcfba sas_resume_ha +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xafef465f sas_resume_ha_no_sync +EXPORT_SYMBOL drivers/scsi/libsas/libsas 0xcb29855c sas_suspend_ha +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0x1ba171aa mraid_mm_register_adp +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xa21fafb9 mraid_mm_adapter_app_handle +EXPORT_SYMBOL drivers/scsi/megaraid/megaraid_mm 0xb2cf7c01 mraid_mm_unregister_adp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x10f0f598 qlt_free_mcmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x15e3c8f9 qlt_unreg_sess +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x274459bd qlt_enable_vha +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x3f891e4b qlt_rdy_to_xfer +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x481fb58c qlt_stop_phase2 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x53ca6c55 qlt_stop_phase1 +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x5d527aa9 qlt_xmit_response +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x692fedca qlt_xmit_tm_rsp +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0x9f88869c qlt_free_cmd +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xad653c6d qlt_lport_register +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xbb19a7db qlt_lport_deregister +EXPORT_SYMBOL drivers/scsi/qla2xxx/qla2xxx 0xd8c855f7 qlt_abort_cmd +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x05260b1c qlogicfas408_disable_ints +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x1f55cd70 qlogicfas408_ihandl +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x3fd8cd71 qlogicfas408_detect +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0x6358d18b qlogicfas408_info +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xb1989ab0 qlogicfas408_abort +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xb53fed6a qlogicfas408_host_reset +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xdd1a2e07 qlogicfas408_queuecommand +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xe76b3b20 qlogicfas408_get_chip_type +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xf2b95199 qlogicfas408_setup +EXPORT_SYMBOL drivers/scsi/qlogicfas408 0xfa79fe37 qlogicfas408_biosparam +EXPORT_SYMBOL drivers/scsi/raid_class 0x0dd39acd raid_class_attach +EXPORT_SYMBOL drivers/scsi/raid_class 0xa2fbd137 raid_class_release +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x10d2f9f1 fc_block_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x17fc42db fc_vport_terminate +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x1b253a33 fc_host_fpin_rcv +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x375f8bbd fc_get_event_number +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x48aa795d fc_eh_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x61a81db8 fc_block_scsi_eh +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x6402d57c fc_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0x75e3a5a5 fc_host_post_vendor_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa41e5c28 fc_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa66e36f0 fc_find_rport_by_wwpn +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xa6f81e7c fc_host_post_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xb3c50b6b scsi_is_fc_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xc1418da4 fc_remote_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd218e689 fc_host_post_fc_event +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xd893a329 fc_remote_port_rolechg +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xdf714627 fc_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xea028192 fc_remote_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_fc 0xfd3fa855 fc_vport_create +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x045e549b sas_phy_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0ab2b73d sas_read_port_mode_page +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0bf5f1a3 sas_rphy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0dd4dab4 sas_port_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x0ddfc03b sas_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x12630892 sas_port_alloc_num +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x28cba69b sas_phy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2947b0f5 sas_phy_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x2c0094bd scsi_is_sas_rphy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x3223964b sas_expander_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x4f9194de sas_port_free +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x50341f72 sas_end_device_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x516cd828 sas_port_alloc +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x652e483d sas_rphy_delete +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6584f8b7 sas_port_mark_backlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x6926c1da sas_remove_host +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7a57c4b9 sas_rphy_remove +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x7dd55096 sas_phy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x8c9edc85 sas_rphy_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x93de6114 sas_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9ef08ba6 sas_remove_children +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0x9ff2023f sas_rphy_unlink +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xacc82a72 sas_port_delete_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbb597252 sas_port_add +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xbf5dad18 scsi_is_sas_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xcda0336a sas_port_get_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xdd2b8482 sas_get_address +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xe89efc02 scsi_is_sas_port +EXPORT_SYMBOL drivers/scsi/scsi_transport_sas 0xf90bb265 sas_port_add_phy +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x2798ab9b spi_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x3686ea09 spi_print_msg +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0x6f86b3e1 spi_schedule_dv_device +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbc9ccdc2 spi_display_xfer_agreement +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xbda0034b spi_release_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_spi 0xf8e8c57c spi_attach_transport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x24fd0c5e srp_reconnect_rport +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x405b6e05 srp_parse_tmo +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x82245ffa srp_rport_put +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x830cdc93 srp_rport_get +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0x98d561ea srp_timed_out +EXPORT_SYMBOL drivers/scsi/scsi_transport_srp 0xf7b5bdd6 srp_start_tl_fail_timers +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x28ac2fd2 qmi_encode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x2c1e499c qmi_txn_wait +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x4cd2fe40 qmi_response_type_v01_ei +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x51a040be qmi_add_lookup +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x5cab2bc9 qmi_txn_cancel +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x6051451d qmi_decode_message +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x6b858779 qmi_handle_release +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x6e8bba91 qmi_handle_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x86d4e40c qmi_send_indication +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0x87cfb4fc qmi_txn_init +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xa8b473d0 qmi_send_response +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xc769a2d9 qmi_send_request +EXPORT_SYMBOL drivers/soc/qcom/qmi_helpers 0xdd357c57 qmi_add_server +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x102aab39 sdw_bus_master_delete +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x16d1706b sdw_prepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1deee061 sdw_find_row_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x1e4f95fe sdw_write +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x360508d8 sdw_update_no_pm +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x365f33a3 sdw_master_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x3b061ae2 sdw_bus_exit_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x3b0a8582 sdw_startup_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x41d7d662 sdw_bread_no_pm_unlocked +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x48e0e39e sdw_compare_devid +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4c3781b2 sdw_update +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4cde88bf sdw_disable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x4e949cfe sdw_slave_read_prop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x58512ab2 sdw_handle_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x59a49738 sdw_nread +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x60e31fbb sdw_find_col_index +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x6f95b16b sdw_shutdown_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x71891d59 sdw_deprepare_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x7a3a1d51 sdw_nwrite +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x7c721a6c sdw_bwrite_no_pm_unlocked +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x81c33bec sdw_stream_add_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x91dfe674 sdw_read +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x91f306e3 sdw_slave_add +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x93db336f sdw_write_no_pm +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9e122d79 sdw_alloc_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0x9fc80997 sdw_extract_slave_id +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa178f324 sdw_stream_remove_master +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa30827f2 sdw_stream_remove_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa4e44fa7 sdw_clear_slave_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa532ef95 sdw_read_no_pm +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xa8f36416 sdw_show_ping_status +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb2e955fc sdw_bus_prep_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb3e23440 sdw_nwrite_no_pm +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xb8b7b83f sdw_bus_clk_stop +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xba54b904 sdw_cols +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xbbec2c2e sdw_enable_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xc3bc7f8e sdw_nread_no_pm +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xda5bce09 sdw_release_stream +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xdae4f722 sdw_stream_add_slave +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xf53ba0b8 sdw_rows +EXPORT_SYMBOL drivers/soundwire/soundwire-bus 0xfdbbf955 sdw_bus_master_add +EXPORT_SYMBOL drivers/ssb/ssb 0x1242f240 ssb_device_disable +EXPORT_SYMBOL drivers/ssb/ssb 0x1495931d ssb_set_devtypedata +EXPORT_SYMBOL drivers/ssb/ssb 0x24027f17 __ssb_driver_register +EXPORT_SYMBOL drivers/ssb/ssb 0x29f53511 ssb_pmu_set_ldo_voltage +EXPORT_SYMBOL drivers/ssb/ssb 0x38fa7cc5 ssb_driver_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x4877d336 ssb_pcicore_dev_irqvecs_enable +EXPORT_SYMBOL drivers/ssb/ssb 0x4b86623d ssb_bus_suspend +EXPORT_SYMBOL drivers/ssb/ssb 0x72e2353f ssb_pmu_set_ldo_paref +EXPORT_SYMBOL drivers/ssb/ssb 0x79483fd2 ssb_bus_may_powerdown +EXPORT_SYMBOL drivers/ssb/ssb 0x7a528ce3 ssb_bus_powerup +EXPORT_SYMBOL drivers/ssb/ssb 0x836ac218 ssb_bus_unregister +EXPORT_SYMBOL drivers/ssb/ssb 0x915be5ab ssb_clockspeed +EXPORT_SYMBOL drivers/ssb/ssb 0x966d1a3c ssb_dma_translation +EXPORT_SYMBOL drivers/ssb/ssb 0xa73588ef ssb_commit_settings +EXPORT_SYMBOL drivers/ssb/ssb 0xac0ed7d2 ssb_pcihost_register +EXPORT_SYMBOL drivers/ssb/ssb 0xcb17f1cb ssb_admatch_base +EXPORT_SYMBOL drivers/ssb/ssb 0xceb52f2a ssb_device_enable +EXPORT_SYMBOL drivers/ssb/ssb 0xd21844f8 ssb_device_is_enabled +EXPORT_SYMBOL drivers/ssb/ssb 0xdc0b7c96 ssb_bus_resume +EXPORT_SYMBOL drivers/ssb/ssb 0xdfc7c6ef ssb_admatch_size +EXPORT_SYMBOL drivers/ssb/ssb 0xf81dca6b ssb_chipco_gpio_control +EXPORT_SYMBOL drivers/ssb/ssb 0xfe5fce43 ssb_bus_sdiobus_register +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x0eb63b72 fbtft_init_display +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x1d863609 fbtft_register_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x2194e272 fbtft_write_reg8_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x37851b31 fbtft_unregister_backlight +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x3d74aea5 fbtft_write_reg16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x4364a6cb fbtft_write_vmem16_bus9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x44a184dc fbtft_probe_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x62fa304b fbtft_register_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x6d97fd5d fbtft_write_gpio8_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x704ece2b fbtft_framebuffer_release +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x799740d1 fbtft_write_reg8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x7f378691 fbtft_write_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x847dd5ba fbtft_write_buf_dc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9e537dfb fbtft_write_reg16_bus16 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0x9f4cbe6d fbtft_dbg_hex +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa611d99b fbtft_write_vmem16_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xa9167163 fbtft_write_gpio16_wr +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xb02d2858 fbtft_write_vmem8_bus8 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xbad90e71 fbtft_read_spi +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xc945a1d4 fbtft_write_gpio16_wr_latched +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xd29d11a1 fbtft_framebuffer_alloc +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xdaa72dc1 fbtft_write_spi_emulate_9 +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xdc72cd59 fbtft_remove_common +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf3240bc4 fbtft_unregister_framebuffer +EXPORT_SYMBOL drivers/staging/fbtft/fbtft 0xf50b927f fbtft_write_vmem16_bus16 +EXPORT_SYMBOL drivers/staging/iio/addac/adt7316 0x82088292 adt7316_probe +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x01c27aa9 RemovePeerTS +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x04614081 rtllib_xmit +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0adff8d6 rtllib_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x0f21f308 rtllib_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x18e7615b rtllib_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x1ccee437 rtllib_start_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x219759c3 rtllib_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x22166084 rt_global_debug_component +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x251f4ea2 rtllib_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x26d09cc6 rtllib_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x37ba8734 rtllib_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x390955d2 rtllib_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x39ec63d9 rtllib_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3cf68c9d rtllib_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3e39f55a rtllib_sta_ps_send_null_frame +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x3fd30b0c rtllib_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x424fff88 rtllib_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x43ae1182 free_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x45ae2f74 rtllib_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x53f5786e dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5c56e715 rtllib_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5e77299a rtllib_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5ee2f0da notify_wx_assoc_event +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x5fbb695c rtllib_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x74499430 rtllib_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x774a3c1b rtllib_DisableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x79a074e4 rtllib_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x7a65794c rtllib_act_scanning +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x82a83151 rtllib_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x84c21efa rtllib_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8543ecae rtllib_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x89688914 rtllib_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x8b240574 rtllib_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x92424b58 dot11d_channel_map +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0x94b728de rtllib_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xa0506d09 alloc_rtllib +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb2c6040c rtllib_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb2eb6ab1 rtllib_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xb481451a rtllib_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbd0d713f rtllib_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xbf3cf7f8 rtllib_rx +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xc0afe8af rtllib_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcb09322f rtllib_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xcd8d9cd6 rtllib_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd56a19fe HT_update_self_and_peer_setting +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xd6823658 rtllib_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe3f96ccf rtllib_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xe79885b9 rtllib_MgntDisconnect +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf3c675cc rtllib_stop_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192e/rtllib 0xf510fe44 rtllib_EnableIntelPromiscuousMode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1067d1a9 ieee80211_wx_get_essid +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x13ec23f7 ieee80211_start_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x14a7962a ieee80211_rx_mgt +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x1d125205 ieee80211_wx_set_auth +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x232e7944 ieee80211_wlan_frequencies +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x2c0e87a5 ieee80211_wx_get_power +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3a669e8e ieee80211_wx_get_name +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3c71e8d4 ieee80211_wx_get_rts +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3cbeaa71 ieee80211_wx_get_wap +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x3fba0fce dot11d_update_country_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x573a9881 ieee80211_softmac_start_protocol +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x57c9a906 ieee80211_wx_set_essid +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x643f42b4 rtl8192u_dot11d_init +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x650d2d48 ieee80211_get_beacon +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6651f895 ieee80211_is_shortslot +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6ba0ff0a ieee80211_wx_set_power +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x6d1b8f4c is_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x73e71513 HTUpdateSelfAndPeerSetting +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x783d0e57 ieee80211_stop_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x78cc5521 ieee80211_wpa_supplicant_ioctl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x831c8fb1 ieee80211_rx +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8a5f7391 ieee80211_wx_set_mlme +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x8e325b5b ieee80211_wx_set_freq +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x92858bb5 ieee80211_wx_get_freq +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9421ae87 ieee80211_stop_send_beacons +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x97aeac77 notify_wx_assoc_event_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x98b5294d ieee80211_disassociate +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0x9d849579 ieee80211_wx_get_encode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa07a7da7 dot11d_scan_complete +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa644a351 ieee80211_wx_set_mode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa69c5fd1 ieee80211_softmac_stop_protocol +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xa9bb8308 ieee80211_wx_set_gen_ie +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xb7d3001c dot11d_reset +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbacc46f6 dot11d_get_max_tx_pwr_in_dbm +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbaf373bf ieee80211_wx_get_mode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xbb3a89d8 ieee80211_txb_free +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc328f73e ieee80211_wx_get_rate +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc8a8a44d SendDisassociation_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xc932fa96 ieee80211_softmac_scan_syncro +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcd51dbcd ieee80211_wake_queue_rsl +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xcfc1d330 ieee80211_wx_set_scan +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd37603de ieee80211_wx_get_scan +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xd822d212 ieee80211_ps_tx_ack +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xda0d7acc ieee80211_wx_set_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdb67ea42 ieee80211_softmac_xmit +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdbaa8578 ieee80211_wx_set_encode +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xddba4259 ieee80211_stop_scan +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xddf7280a to_legal_channel +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xdf9f27d0 ieee80211_wx_set_rate +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe3372510 ieee80211_is_54g +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe70f2620 ieee80211_wx_set_wap +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xe7c06485 ieee80211_wx_set_rts +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xea2f5350 ieee80211_wx_get_encode_ext +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xf3206c3e ieee80211_wx_set_rawtx +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xfed25833 ieee80211_reset_queue +EXPORT_SYMBOL drivers/staging/rtl8192u/r8192u_usb 0xff15b12e ieee80211_start_scan_syncro +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x04862090 iscsit_build_logout_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0b01bf6d iscsit_find_cmd_from_itt_or_dump +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x0b9219e1 iscsit_thread_check_cpumask +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x1e335605 iscsit_setup_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x27e392e0 iscsit_set_unsolicited_dataout +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x2b589d6f iscsit_build_nopin_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x33c5281b iscsit_build_rsp_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x361afac3 iscsit_release_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x3de6ff93 iscsit_aborted_task +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x47b8e3a7 iscsit_tmr_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4a4527c6 iscsit_allocate_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x4fc7e97b iscsit_unregister_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x541df63f iscsit_reject_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x5573ae49 iscsit_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x6bcf7675 iscsit_setup_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x73cc98ff iscsit_increment_maxcmdsn +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x74543167 iscsit_build_r2ts_for_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x7cf739c7 iscsi_target_check_login_request +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8029eba1 iscsit_logout_post_handler +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8165bcc2 iscsit_handle_logout_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8214fa00 iscsit_find_cmd_from_itt +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x84984c3b iscsit_setup_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x85eda506 iscsit_get_datain_values +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x881a0690 iscsi_change_param_sprintf +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x8cd0e573 iscsit_handle_task_mgt_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9baa64af iscsit_add_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0x9f5f3229 iscsit_response_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xaa4369ce iscsit_cause_connection_reinstatement +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xab8df178 iscsit_queue_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xba3310cc iscsit_handle_snack +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xbb0d949a iscsit_register_transport +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xc836c83b iscsit_build_text_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xcd48f52d iscsit_check_dataout_payload +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd8ffa1e0 iscsit_build_task_mgt_rsp +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xd97125de iscsit_free_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xda9749f4 iscsit_add_cmd_to_immediate_queue +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xde91a124 iscsit_stop_dataout_timer +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xdef70268 iscsit_process_scsi_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xe8bbb5c1 iscsit_build_datain_pdu +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf0eb7845 iscsit_process_text_cmd +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf34332f0 iscsi_find_param_from_key +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xf59f2162 iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfb2a3872 __iscsit_check_dataout_hdr +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xfe02e4a8 iscsit_process_nop_out +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xff5fb1a3 iscsit_build_reject +EXPORT_SYMBOL drivers/target/iscsi/iscsi_target_mod 0xffddf961 iscsit_sequence_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x01b8f0a9 target_to_linux_sector +EXPORT_SYMBOL drivers/target/target_core_mod 0x05ab5e5a core_tpg_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x0871ffd6 transport_set_vpd_ident +EXPORT_SYMBOL drivers/target/target_core_mod 0x0b80a9a4 target_complete_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0e9b51f0 transport_copy_sense_to_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x0eb4f089 target_cmd_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x142072c0 transport_set_vpd_assoc +EXPORT_SYMBOL drivers/target/target_core_mod 0x17d2d584 passthrough_pr_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x18e5ca53 spc_emulate_inquiry_std +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a8c0a36 spc_emulate_report_luns +EXPORT_SYMBOL drivers/target/target_core_mod 0x1a99eb25 core_tpg_set_initiator_node_queue_depth +EXPORT_SYMBOL drivers/target/target_core_mod 0x22467cb4 transport_deregister_session_configfs +EXPORT_SYMBOL drivers/target/target_core_mod 0x22d4a435 target_wait_for_sess_cmds +EXPORT_SYMBOL drivers/target/target_core_mod 0x22f63b57 transport_generic_handle_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0x269c2c30 passthrough_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0x28492a25 target_get_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x2a687040 target_lun_is_rdonly +EXPORT_SYMBOL drivers/target/target_core_mod 0x2bd5f9ac passthrough_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x3350d87b core_tmr_alloc_req +EXPORT_SYMBOL drivers/target/target_core_mod 0x33873bf0 transport_lookup_cmd_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x347d372e target_tpg_has_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x36754a99 core_tpg_check_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x36fe5487 transport_alloc_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x3a20a9d7 transport_set_vpd_ident_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3df38c6e sbc_get_device_type +EXPORT_SYMBOL drivers/target/target_core_mod 0x3e48f36f sbc_attrib_attrs +EXPORT_SYMBOL drivers/target/target_core_mod 0x40a32d32 target_show_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4177373b target_register_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x4620a887 __target_init_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x4a454f31 target_configure_unmap_from_queue +EXPORT_SYMBOL drivers/target/target_core_mod 0x4c555bcd sbc_get_write_same_sectors +EXPORT_SYMBOL drivers/target/target_core_mod 0x4eea70eb core_tpg_deregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x4f744962 sbc_dif_copy_prot +EXPORT_SYMBOL drivers/target/target_core_mod 0x51df0c62 target_undepend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x5920533e target_put_nacl +EXPORT_SYMBOL drivers/target/target_core_mod 0x5987b3a9 sbc_dif_verify +EXPORT_SYMBOL drivers/target/target_core_mod 0x5adc7542 transport_kmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0x5bdb610a target_free_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0x5c34853c target_complete_cmd_with_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x5e9ba9c9 target_backend_unregister +EXPORT_SYMBOL drivers/target/target_core_mod 0x6502aea3 transport_init_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x68063612 transport_backend_register +EXPORT_SYMBOL drivers/target/target_core_mod 0x6ccd68d9 target_depend_item +EXPORT_SYMBOL drivers/target/target_core_mod 0x6dc5b07f core_allocate_nexus_loss_ua +EXPORT_SYMBOL drivers/target/target_core_mod 0x6e86758e transport_generic_request_failure +EXPORT_SYMBOL drivers/target/target_core_mod 0x6f6e201e transport_generic_free_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x728ffef6 transport_generic_new_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x757ce6f5 target_set_cmd_data_length +EXPORT_SYMBOL drivers/target/target_core_mod 0x7610a1e6 core_tpg_get_initiator_node_acl +EXPORT_SYMBOL drivers/target/target_core_mod 0x80c750fd transport_send_check_condition_and_sense +EXPORT_SYMBOL drivers/target/target_core_mod 0x88b0246e transport_free_session +EXPORT_SYMBOL drivers/target/target_core_mod 0x89cba209 target_submit_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0x8e3d9bf1 target_unregister_template +EXPORT_SYMBOL drivers/target/target_core_mod 0x8ef146c8 core_tpg_set_initiator_node_tag +EXPORT_SYMBOL drivers/target/target_core_mod 0x9109e996 transport_handle_cdb_direct +EXPORT_SYMBOL drivers/target/target_core_mod 0x9a930428 spc_emulate_evpd_83 +EXPORT_SYMBOL drivers/target/target_core_mod 0x9bcc4732 transport_lookup_tmr_lun +EXPORT_SYMBOL drivers/target/target_core_mod 0x9bd4a9d7 transport_alloc_session_tags +EXPORT_SYMBOL drivers/target/target_core_mod 0xa10e7d35 target_remove_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa1d07bcb target_stop_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xa3067304 target_complete_cmd_with_length +EXPORT_SYMBOL drivers/target/target_core_mod 0xac0664f9 target_setup_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xae67e8b7 transport_wait_for_tasks +EXPORT_SYMBOL drivers/target/target_core_mod 0xaefbcacd target_alloc_sgl +EXPORT_SYMBOL drivers/target/target_core_mod 0xb3a355a0 spc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xc1c1abf1 target_submit_tmr +EXPORT_SYMBOL drivers/target/target_core_mod 0xc550f986 target_execute_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xc7f3a1cd target_nacl_find_deve +EXPORT_SYMBOL drivers/target/target_core_mod 0xcd508e4f target_put_sess_cmd +EXPORT_SYMBOL drivers/target/target_core_mod 0xd64c96a0 sbc_parse_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xda9f3dce target_send_busy +EXPORT_SYMBOL drivers/target/target_core_mod 0xdf9953dd transport_kunmap_data_sg +EXPORT_SYMBOL drivers/target/target_core_mod 0xe397db36 __transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xe6e782ac target_show_dynamic_sessions +EXPORT_SYMBOL drivers/target/target_core_mod 0xf3c2dfe0 transport_set_vpd_proto_id +EXPORT_SYMBOL drivers/target/target_core_mod 0xf535f683 transport_register_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xfa9f595c target_cmd_init_cdb +EXPORT_SYMBOL drivers/target/target_core_mod 0xfdf3fa2a transport_deregister_session +EXPORT_SYMBOL drivers/target/target_core_mod 0xfea335c6 core_alua_check_nonop_delay +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0x1887763e acpi_thermal_rel_misc_device_add +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0x86c998e6 acpi_thermal_rel_misc_device_remove +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0x9103c585 acpi_parse_art +EXPORT_SYMBOL drivers/thermal/intel/int340x_thermal/acpi_thermal_rel 0xf0f9fe0d acpi_parse_trt +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0x225e6f4d ufshcd_system_resume +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0x3994b2f3 ufshcd_runtime_resume +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0x869b4685 ufshcd_system_suspend +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0xaa5912d3 ufshcd_runtime_suspend +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0xb0b2440d ufshcd_get_local_unipro_ver +EXPORT_SYMBOL drivers/ufs/core/ufshcd-core 0xde162bb9 ufshcd_alloc_host +EXPORT_SYMBOL drivers/ufs/host/tc-dwc-g210 0x567f0ccd tc_dwc_g210_config_20_bit +EXPORT_SYMBOL drivers/ufs/host/tc-dwc-g210 0xbf70b70b tc_dwc_g210_config_40_bit +EXPORT_SYMBOL drivers/ufs/host/ufshcd-dwc 0x09995b21 ufshcd_dwc_link_startup_notify +EXPORT_SYMBOL drivers/ufs/host/ufshcd-dwc 0xcb91e736 ufshcd_dwc_dme_set_attrs +EXPORT_SYMBOL drivers/usb/class/cdc-wdm 0x86d7c209 usb_cdc_wdm_register +EXPORT_SYMBOL drivers/usb/gadget/libcomposite 0xdf81c9d4 usb_os_desc_prepare_interf_dir +EXPORT_SYMBOL drivers/usb/host/sl811-hcd 0x4f73433b sl811h_driver +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x0387cf4c usb_wwan_tiocmget +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x301f13e2 usb_wwan_chars_in_buffer +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x43ab9a79 usb_wwan_resume +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x7e01ec65 usb_wwan_port_remove +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0x8e5736df usb_wwan_open +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xa3ed4e64 usb_wwan_write_room +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xcd270fbc usb_wwan_close +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe6531f69 usb_wwan_dtr_rts +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe6c89967 usb_wwan_write +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xe81da2da usb_wwan_tiocmset +EXPORT_SYMBOL drivers/usb/serial/usb_wwan 0xf4650712 usb_wwan_suspend +EXPORT_SYMBOL drivers/usb/serial/usbserial 0x102a0c03 usb_serial_resume +EXPORT_SYMBOL drivers/usb/serial/usbserial 0xb671bef9 usb_serial_suspend +EXPORT_SYMBOL drivers/vdpa/vdpa 0xe460b49c vdpa_set_status +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x06d07a0c mdev_unregister_parent +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x35dd9146 mdev_unregister_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x5a55c88d mdev_register_driver +EXPORT_SYMBOL drivers/vfio/mdev/mdev 0x7d9e0907 mdev_register_parent +EXPORT_SYMBOL drivers/vfio/vfio 0x19567d06 vfio_info_cap_shift +EXPORT_SYMBOL drivers/vfio/vfio 0x3287bfc1 vfio_unpin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0x6c28be5a vfio_info_add_capability +EXPORT_SYMBOL drivers/vfio/vfio 0xa3c3c5ca vfio_pin_pages +EXPORT_SYMBOL drivers/vfio/vfio 0xadc044b7 vfio_set_irqs_validate_and_prepare +EXPORT_SYMBOL drivers/vfio/vfio 0xc49cb43e vfio_dma_rw +EXPORT_SYMBOL drivers/vhost/vhost 0x0aeb2afe vhost_chr_poll +EXPORT_SYMBOL drivers/vhost/vhost 0x6959469d vhost_chr_write_iter +EXPORT_SYMBOL drivers/vhost/vringh 0x22535a6e vringh_abandon_user +EXPORT_SYMBOL drivers/vhost/vringh 0x22f44e7d vringh_getdesc_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x31848eae vringh_notify_enable_user +EXPORT_SYMBOL drivers/vhost/vringh 0x372fd6c2 vringh_init_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3a5d8ed7 vringh_getdesc_user +EXPORT_SYMBOL drivers/vhost/vringh 0x3b304ebb vringh_iov_push_user +EXPORT_SYMBOL drivers/vhost/vringh 0x4311cd91 vringh_iov_pull_user +EXPORT_SYMBOL drivers/vhost/vringh 0x52bae5f4 vringh_complete_multi_user +EXPORT_SYMBOL drivers/vhost/vringh 0x660779c8 vringh_kiov_advance +EXPORT_SYMBOL drivers/vhost/vringh 0x6bcdc931 vringh_complete_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x6bf1b1c2 vringh_complete_user +EXPORT_SYMBOL drivers/vhost/vringh 0x7eaceeaa vringh_init_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x8f8840e8 vringh_notify_enable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x932af7d7 vringh_notify_disable_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x964ca823 vringh_iov_push_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x97fa07e9 vringh_iov_push_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x9a775e41 vringh_init_iotlb_va +EXPORT_SYMBOL drivers/vhost/vringh 0x9a81a3f6 vringh_need_notify_kern +EXPORT_SYMBOL drivers/vhost/vringh 0x9bdd89ae vringh_abandon_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0x9f597502 vringh_complete_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xacec70e7 vringh_need_notify_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xb98c2548 vringh_getdesc_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xbb2391f3 vringh_notify_enable_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xbdb0df4e vringh_set_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xc33f4090 vringh_iov_pull_iotlb +EXPORT_SYMBOL drivers/vhost/vringh 0xc467f54a vringh_abandon_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xc5a7eb98 vringh_notify_disable_user +EXPORT_SYMBOL drivers/vhost/vringh 0xcc0cbfb9 vringh_need_notify_user +EXPORT_SYMBOL drivers/vhost/vringh 0xd8535ad6 vringh_init_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xde804bb9 vringh_iov_pull_kern +EXPORT_SYMBOL drivers/vhost/vringh 0xe08ccbed vringh_notify_disable_iotlb +EXPORT_SYMBOL drivers/video/backlight/lcd 0x17c3d84e lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x7e680a10 lcd_device_register +EXPORT_SYMBOL drivers/video/backlight/lcd 0x897dd353 devm_lcd_device_unregister +EXPORT_SYMBOL drivers/video/backlight/lcd 0x9d409a79 devm_lcd_device_register +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x17f3f471 svga_set_default_seq_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x1be6dc30 svga_set_textmode_vga_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4ab38ef2 svga_set_default_crt_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x4b00d878 svga_get_caps +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x673f2c57 svga_tilecursor +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x83a41489 svga_set_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x84c337c2 svga_wcrt_multi +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x84c97d2a svga_match_format +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x8512fe03 svga_tilecopy +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0x95fde862 svga_get_tilemax +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xa41a2c25 svga_tileblit +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xa465b4d0 svga_tilefill +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xb0ab2b2e svga_check_timings +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd22ca511 svga_set_default_atc_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xd6ec2c44 svga_compute_pll +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xdcc5a013 svga_wseq_multi +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xe28d2a49 svga_set_default_gfx_regs +EXPORT_SYMBOL drivers/video/fbdev/core/svgalib 0xe697c6c5 svga_settile +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0x0cc3ede5 cyber2000fb_detach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0x534b6f18 cyber2000fb_disable_extregs +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0xaac4f738 cyber2000fb_attach +EXPORT_SYMBOL drivers/video/fbdev/cyber2000fb 0xb39f68d1 cyber2000fb_enable_extregs +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0x233917d1 mac_vmode_to_var +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0xe2304303 mac_map_monitor_sense +EXPORT_SYMBOL drivers/video/fbdev/macmodes 0xef4a1ed3 mac_find_mode +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0x3b9a7b42 g450_mnp2f +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xd68e20ab matroxfb_g450_setpll_cond +EXPORT_SYMBOL drivers/video/fbdev/matrox/g450_pll 0xe8509d8c matroxfb_g450_setclk +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0x52313f3f DAC1064_global_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xc1c9b0b6 matrox_mystique +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xdf4a2b7f matrox_G100 +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_DAC1064 0xf9b10c17 DAC1064_global_restore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_Ti3026 0x2a22553a matrox_millennium +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_accel 0xc0c66234 matrox_cfbX_init +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x18fe5686 matroxfb_unregister_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x1e41d8eb matroxfb_wait_for_sync +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0x7dacc7ae matroxfb_register_driver +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_base 0xbbcefe33 matroxfb_enable_irq +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0x1ae09d8b matroxfb_g450_shutdown +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_g450 0xd6820636 matroxfb_g450_connect +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x11d8530c matroxfb_DAC_out +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x25cf8049 matroxfb_PLL_calcclock +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0x99a0cadc matroxfb_DAC_in +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xa27f0e6d matroxfb_vgaHWrestore +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcd81b5e8 matroxfb_vgaHWinit +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xcdc90c64 matroxfb_var2my +EXPORT_SYMBOL drivers/video/fbdev/matrox/matroxfb_misc 0xdc4f4a0c matroxfb_read_pins +EXPORT_SYMBOL drivers/video/fbdev/sis/sisfb 0x3037658e sis_malloc +EXPORT_SYMBOL drivers/video/fbdev/sis/sisfb 0xfe963115 sis_free +EXPORT_SYMBOL drivers/video/vgastate 0x686de290 restore_vga +EXPORT_SYMBOL drivers/video/vgastate 0xe7a2620e save_vga +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x0092de03 vbg_put_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x21fe4672 vbg_hgcm_disconnect +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x260590c0 vbg_err +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x39a83b27 vbg_hgcm_connect +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x569b312f vbg_info +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x68f1cf1a vbg_err_ratelimited +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x70cdcbfd vbg_warn +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x75af455f vbg_get_gdev +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0x9c072aa8 vbg_status_code_to_errno +EXPORT_SYMBOL drivers/virt/vboxguest/vboxguest 0xae954cc0 vbg_hgcm_call +EXPORT_SYMBOL drivers/virtio/virtio_dma_buf 0x19d0a1be is_virtio_dma_buf +EXPORT_SYMBOL drivers/virtio/virtio_dma_buf 0x7b7c30a8 virtio_dma_buf_get_uuid +EXPORT_SYMBOL drivers/virtio/virtio_dma_buf 0xce3d2ede virtio_dma_buf_attach +EXPORT_SYMBOL drivers/virtio/virtio_dma_buf 0xd0cf29ff virtio_dma_buf_export +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0x74b237a3 w1_ds2780_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2780 0xb8e79779 w1_ds2780_io +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0x54ca3e06 w1_ds2781_eeprom_cmd +EXPORT_SYMBOL drivers/w1/slaves/w1_ds2781 0xeb3d530e w1_ds2781_io +EXPORT_SYMBOL drivers/w1/wire 0x29044888 w1_unregister_family +EXPORT_SYMBOL drivers/w1/wire 0x380f8cee w1_add_master_device +EXPORT_SYMBOL drivers/w1/wire 0x458b120f w1_remove_master_device +EXPORT_SYMBOL drivers/w1/wire 0xc69611d2 w1_register_family +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x04e133fc iTCO_vendor_check_noreboot_on +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0x75bec08d iTCO_vendor_pre_stop +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xc8930f32 iTCO_vendor_pre_start +EXPORT_SYMBOL drivers/watchdog/iTCO_vendor_support 0xed2a3373 iTCO_vendorsupport +EXPORT_SYMBOL fs/fscache/fscache 0x0172017c __SCK__tp_func_fscache_access +EXPORT_SYMBOL fs/fscache/fscache 0x0578793c fscache_withdraw_volume +EXPORT_SYMBOL fs/fscache/fscache 0x058c501d __fscache_begin_read_operation +EXPORT_SYMBOL fs/fscache/fscache 0x073dbcd6 fscache_end_cookie_access +EXPORT_SYMBOL fs/fscache/fscache 0x0770a748 __fscache_unuse_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x088e876d __fscache_relinquish_volume +EXPORT_SYMBOL fs/fscache/fscache 0x09c714f1 fscache_relinquish_cache +EXPORT_SYMBOL fs/fscache/fscache 0x0a5cdbcc __tracepoint_fscache_access_cache +EXPORT_SYMBOL fs/fscache/fscache 0x16afed6f fscache_end_volume_access +EXPORT_SYMBOL fs/fscache/fscache 0x1a0d09e7 fscache_n_write +EXPORT_SYMBOL fs/fscache/fscache 0x1d147d75 fscache_resume_after_invalidation +EXPORT_SYMBOL fs/fscache/fscache 0x2234ca69 __fscache_write_to_cache +EXPORT_SYMBOL fs/fscache/fscache 0x234a140d __traceiter_fscache_access_volume +EXPORT_SYMBOL fs/fscache/fscache 0x26f49457 __SCK__tp_func_fscache_access_volume +EXPORT_SYMBOL fs/fscache/fscache 0x28253b7d fscache_dirty_folio +EXPORT_SYMBOL fs/fscache/fscache 0x4404d2aa fscache_n_no_create_space +EXPORT_SYMBOL fs/fscache/fscache 0x4996bd29 fscache_n_updates +EXPORT_SYMBOL fs/fscache/fscache 0x4c13a960 fscache_withdraw_cache +EXPORT_SYMBOL fs/fscache/fscache 0x4c17b91d __SCK__tp_func_fscache_access_cache +EXPORT_SYMBOL fs/fscache/fscache 0x557a775f fscache_addremove_sem +EXPORT_SYMBOL fs/fscache/fscache 0x5954d7ac __SCT__tp_func_fscache_access +EXPORT_SYMBOL fs/fscache/fscache 0x5b18bdcf __fscache_resize_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x6ac082bf fscache_acquire_cache +EXPORT_SYMBOL fs/fscache/fscache 0x71550373 __fscache_invalidate +EXPORT_SYMBOL fs/fscache/fscache 0x780550eb fscache_get_cookie +EXPORT_SYMBOL fs/fscache/fscache 0x7b1b25da __SCT__tp_func_fscache_access_volume +EXPORT_SYMBOL fs/fscache/fscache 0x7c87e02d __SCT__tp_func_fscache_access_cache +EXPORT_SYMBOL fs/fscache/fscache 0x7ccd52c2 __tracepoint_fscache_access +EXPORT_SYMBOL fs/fscache/fscache 0x8c2d6da7 fscache_clearance_waiters +EXPORT_SYMBOL fs/fscache/fscache 0x90d447f3 fscache_n_culled +EXPORT_SYMBOL fs/fscache/fscache 0x91bd1c35 __fscache_clear_page_bits +EXPORT_SYMBOL fs/fscache/fscache 0x97ca4a08 fscache_caching_failed +EXPORT_SYMBOL fs/fscache/fscache 0x9a44734c fscache_wait_for_operation +EXPORT_SYMBOL fs/fscache/fscache 0x9ffefcb2 fscache_n_read +EXPORT_SYMBOL fs/fscache/fscache 0xae6040a5 __traceiter_fscache_access_cache +EXPORT_SYMBOL fs/fscache/fscache 0xb624237c fscache_add_cache +EXPORT_SYMBOL fs/fscache/fscache 0xbca46908 fscache_wq +EXPORT_SYMBOL fs/fscache/fscache 0xc0e5834c fscache_io_error +EXPORT_SYMBOL fs/fscache/fscache 0xcce11a60 fscache_n_no_write_space +EXPORT_SYMBOL fs/fscache/fscache 0xd080b7c6 fscache_put_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xd7663d77 __tracepoint_fscache_access_volume +EXPORT_SYMBOL fs/fscache/fscache 0xd8eacaa3 __fscache_begin_write_operation +EXPORT_SYMBOL fs/fscache/fscache 0xdc040877 __fscache_relinquish_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xdcb87498 __traceiter_fscache_access +EXPORT_SYMBOL fs/fscache/fscache 0xe5f598d3 fscache_withdraw_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xe93a25d6 fscache_cookie_lookup_negative +EXPORT_SYMBOL fs/fscache/fscache 0xea68a5cc __fscache_acquire_volume +EXPORT_SYMBOL fs/fscache/fscache 0xec64eccd __fscache_acquire_cookie +EXPORT_SYMBOL fs/fscache/fscache 0xf2391552 __fscache_use_cookie +EXPORT_SYMBOL fs/netfs/netfs 0x1db88bac netfs_readahead +EXPORT_SYMBOL fs/netfs/netfs 0xb63ca1e4 netfs_write_begin +EXPORT_SYMBOL fs/netfs/netfs 0xc9b3bb25 netfs_subreq_terminated +EXPORT_SYMBOL fs/netfs/netfs 0xe129933e netfs_stats_show +EXPORT_SYMBOL fs/netfs/netfs 0xf744243b netfs_read_folio +EXPORT_SYMBOL fs/ocfs2/cluster/ocfs2_nodemanager 0xbfd7d7a2 o2hb_global_heartbeat_active +EXPORT_SYMBOL fs/quota/quota_tree 0x1c9db050 qtree_read_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x36b4414a qtree_entry_unused +EXPORT_SYMBOL fs/quota/quota_tree 0x4e7338ba qtree_get_next_id +EXPORT_SYMBOL fs/quota/quota_tree 0x82066d33 qtree_write_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0x8bf01d5a qtree_release_dquot +EXPORT_SYMBOL fs/quota/quota_tree 0xc3d249a8 qtree_delete_dquot +EXPORT_SYMBOL lib/crc-itu-t 0x09a34a2b crc_itu_t +EXPORT_SYMBOL lib/crc-itu-t 0xd819a524 crc_itu_t_table +EXPORT_SYMBOL lib/crc7 0x65aaf037 crc7_be_syndrome_table +EXPORT_SYMBOL lib/crc7 0xba55d23e crc7_be +EXPORT_SYMBOL lib/crc8 0x9c5d5b94 crc8 +EXPORT_SYMBOL lib/crc8 0xaa8106bc crc8_populate_msb +EXPORT_SYMBOL lib/crc8 0xc3cd034d crc8_populate_lsb +EXPORT_SYMBOL lib/crypto/libarc4 0x2bb32ad1 arc4_setkey +EXPORT_SYMBOL lib/crypto/libarc4 0xcd47fcc4 arc4_crypt +EXPORT_SYMBOL lib/crypto/libchacha 0xcec122d7 chacha_crypt_generic +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x147c3f2e chacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x521c7102 xchacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x6c713da5 chacha20poly1305_encrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0x916491ac chacha20poly1305_decrypt_sg_inplace +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xc20134e7 chacha20poly1305_decrypt +EXPORT_SYMBOL lib/crypto/libchacha20poly1305 0xce15a526 xchacha20poly1305_encrypt +EXPORT_SYMBOL lib/crypto/libcurve25519-generic 0x12627f15 curve25519_generic +EXPORT_SYMBOL lib/crypto/libcurve25519-generic 0x4a5a8811 curve25519_null_point +EXPORT_SYMBOL lib/crypto/libcurve25519-generic 0x7e6fdbfc curve25519_base_point +EXPORT_SYMBOL lib/crypto/libpoly1305 0x021f3700 poly1305_core_blocks +EXPORT_SYMBOL lib/crypto/libpoly1305 0xbcb90cb3 poly1305_core_emit +EXPORT_SYMBOL lib/crypto/libpoly1305 0xd45b9cf4 poly1305_core_setkey +EXPORT_SYMBOL lib/libcrc32c 0xb15b4109 crc32c +EXPORT_SYMBOL lib/lru_cache 0x0cb562e6 lc_put +EXPORT_SYMBOL lib/lru_cache 0x12de578e lc_committed +EXPORT_SYMBOL lib/lru_cache 0x1d2ebc6a lc_get +EXPORT_SYMBOL lib/lru_cache 0x2675693b lc_del +EXPORT_SYMBOL lib/lru_cache 0x2a260b1b lc_seq_printf_stats +EXPORT_SYMBOL lib/lru_cache 0x75e88edc lc_destroy +EXPORT_SYMBOL lib/lru_cache 0x83601c8e lc_seq_dump_details +EXPORT_SYMBOL lib/lru_cache 0x96d40a48 lc_try_get +EXPORT_SYMBOL lib/lru_cache 0xa79000a0 lc_is_used +EXPORT_SYMBOL lib/lru_cache 0xaeb959aa lc_create +EXPORT_SYMBOL lib/lru_cache 0xbf18a077 lc_reset +EXPORT_SYMBOL lib/lru_cache 0xc4d8d7a4 lc_find +EXPORT_SYMBOL lib/lru_cache 0xdbdee578 lc_element_by_index +EXPORT_SYMBOL lib/lru_cache 0xf0e20f9b lc_try_lock +EXPORT_SYMBOL lib/lru_cache 0xfba16232 lc_get_cumulative +EXPORT_SYMBOL lib/lz4/lz4_compress 0x4f4d78c5 LZ4_compress_default +EXPORT_SYMBOL lib/lz4/lz4_compress 0x5bc92e85 LZ4_compress_destSize +EXPORT_SYMBOL lib/lz4/lz4_compress 0x6004858d LZ4_compress_fast +EXPORT_SYMBOL lib/lz4/lz4_compress 0x635ff76d LZ4_saveDict +EXPORT_SYMBOL lib/lz4/lz4_compress 0x749849d8 LZ4_loadDict +EXPORT_SYMBOL lib/lz4/lz4_compress 0xf9eced44 LZ4_compress_fast_continue +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x38f7b6e0 LZ4_compress_HC_continue +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x93ff008c LZ4_loadDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0x9cef495b LZ4_saveDictHC +EXPORT_SYMBOL lib/lz4/lz4hc_compress 0xddf86133 LZ4_compress_HC +EXPORT_SYMBOL lib/math/cordic 0x7e431c15 cordic_calc_iq +EXPORT_SYMBOL lib/objagg 0x0363233d objagg_obj_raw +EXPORT_SYMBOL lib/objagg 0x23865923 objagg_destroy +EXPORT_SYMBOL lib/objagg 0x24ca5ca9 objagg_obj_root_priv +EXPORT_SYMBOL lib/objagg 0x342aefe2 objagg_obj_delta_priv +EXPORT_SYMBOL lib/objagg 0x352633f4 objagg_hints_stats_get +EXPORT_SYMBOL lib/objagg 0x3c58e78f objagg_hints_put +EXPORT_SYMBOL lib/objagg 0x6691f29d objagg_obj_put +EXPORT_SYMBOL lib/objagg 0x679e8cc2 objagg_create +EXPORT_SYMBOL lib/objagg 0xb17ab162 objagg_obj_get +EXPORT_SYMBOL lib/objagg 0xdaa3ee68 objagg_stats_get +EXPORT_SYMBOL lib/objagg 0xf5511527 objagg_stats_put +EXPORT_SYMBOL lib/objagg 0xfaa9d1a8 objagg_hints_get +EXPORT_SYMBOL lib/parman 0x0f518717 parman_prio_init +EXPORT_SYMBOL lib/parman 0x7b03d378 parman_item_add +EXPORT_SYMBOL lib/parman 0x8b7e26f5 parman_item_remove +EXPORT_SYMBOL lib/parman 0xc3e2d892 parman_create +EXPORT_SYMBOL lib/parman 0xc6a3d260 parman_prio_fini +EXPORT_SYMBOL lib/parman 0xca39ae6a parman_destroy +EXPORT_SYMBOL lib/raid6/raid6_pq 0x0b2c64a3 raid6_vgfmul +EXPORT_SYMBOL lib/raid6/raid6_pq 0x17f54263 raid6_gfexp +EXPORT_SYMBOL lib/raid6/raid6_pq 0x59a2712d raid6_gfinv +EXPORT_SYMBOL lib/raid6/raid6_pq 0xb0d904b7 raid6_empty_zero_page +EXPORT_SYMBOL lib/raid6/raid6_pq 0xc8e3332b raid6_gflog +EXPORT_SYMBOL lib/raid6/raid6_pq 0xcc4ee841 raid6_gfexi +EXPORT_SYMBOL lib/raid6/raid6_pq 0xd91319d6 raid6_gfmul +EXPORT_SYMBOL net/6lowpan/6lowpan 0x013a4e04 lowpan_register_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0x13d00099 lowpan_nhc_del +EXPORT_SYMBOL net/6lowpan/6lowpan 0x1a4af1ce lowpan_unregister_netdevice +EXPORT_SYMBOL net/6lowpan/6lowpan 0xc747c742 lowpan_nhc_add +EXPORT_SYMBOL net/6lowpan/6lowpan 0xce87dde3 lowpan_register_netdev +EXPORT_SYMBOL net/6lowpan/6lowpan 0xe857b1db lowpan_unregister_netdev +EXPORT_SYMBOL net/802/p8022 0x5f3191ca unregister_8022_client +EXPORT_SYMBOL net/802/p8022 0x8ebde3f4 register_8022_client +EXPORT_SYMBOL net/802/psnap 0x2395f58b register_snap_client +EXPORT_SYMBOL net/802/psnap 0x25418538 unregister_snap_client +EXPORT_SYMBOL net/9p/9pnet 0x0195551d p9_release_pages +EXPORT_SYMBOL net/9p/9pnet 0x01d13003 p9_is_proto_dotu +EXPORT_SYMBOL net/9p/9pnet 0x0c446a70 p9_client_walk +EXPORT_SYMBOL net/9p/9pnet 0x0d4a6104 p9_client_symlink +EXPORT_SYMBOL net/9p/9pnet 0x0eb1175d p9_client_clunk +EXPORT_SYMBOL net/9p/9pnet 0x15efd697 p9_client_readlink +EXPORT_SYMBOL net/9p/9pnet 0x2a6c89f9 p9_client_fcreate +EXPORT_SYMBOL net/9p/9pnet 0x2abd8c83 p9_client_open +EXPORT_SYMBOL net/9p/9pnet 0x2dc94591 do_trace_9p_fid_get +EXPORT_SYMBOL net/9p/9pnet 0x2f5661a6 __tracepoint_9p_fid_ref +EXPORT_SYMBOL net/9p/9pnet 0x38afd358 p9_client_read +EXPORT_SYMBOL net/9p/9pnet 0x3d4fc6a3 p9_show_client_options +EXPORT_SYMBOL net/9p/9pnet 0x3d73a797 p9_errstr2errno +EXPORT_SYMBOL net/9p/9pnet 0x41809cf2 __SCK__tp_func_9p_fid_ref +EXPORT_SYMBOL net/9p/9pnet 0x41ce9823 p9stat_read +EXPORT_SYMBOL net/9p/9pnet 0x45643fbc p9_client_write +EXPORT_SYMBOL net/9p/9pnet 0x4ba99359 p9_fcall_fini +EXPORT_SYMBOL net/9p/9pnet 0x4c72a901 p9_client_remove +EXPORT_SYMBOL net/9p/9pnet 0x54bcbcc4 p9_client_lock_dotl +EXPORT_SYMBOL net/9p/9pnet 0x5d768cb8 p9_client_renameat +EXPORT_SYMBOL net/9p/9pnet 0x6a5d395f p9_client_setattr +EXPORT_SYMBOL net/9p/9pnet 0x6c370008 p9_client_link +EXPORT_SYMBOL net/9p/9pnet 0x734b60bd v9fs_get_trans_by_name +EXPORT_SYMBOL net/9p/9pnet 0x761cad64 p9_parse_header +EXPORT_SYMBOL net/9p/9pnet 0x76db1e76 p9_client_cb +EXPORT_SYMBOL net/9p/9pnet 0x8a7eb801 v9fs_register_trans +EXPORT_SYMBOL net/9p/9pnet 0x8eedfe39 p9_client_readdir +EXPORT_SYMBOL net/9p/9pnet 0x903d262c p9_client_begin_disconnect +EXPORT_SYMBOL net/9p/9pnet 0x95bd8f96 p9dirent_read +EXPORT_SYMBOL net/9p/9pnet 0x9844fe4b p9_client_read_once +EXPORT_SYMBOL net/9p/9pnet 0x9d5ff94b p9_client_create +EXPORT_SYMBOL net/9p/9pnet 0x9eac7be2 p9_client_disconnect +EXPORT_SYMBOL net/9p/9pnet 0xa2bcead7 p9_req_put +EXPORT_SYMBOL net/9p/9pnet 0xad58e50e p9_client_mkdir_dotl +EXPORT_SYMBOL net/9p/9pnet 0xb798a888 __SCT__tp_func_9p_fid_ref +EXPORT_SYMBOL net/9p/9pnet 0xca867bf1 p9_client_statfs +EXPORT_SYMBOL net/9p/9pnet 0xcb94bf64 do_trace_9p_fid_put +EXPORT_SYMBOL net/9p/9pnet 0xcdbbcdcb p9_client_destroy +EXPORT_SYMBOL net/9p/9pnet 0xcf255552 p9_tag_lookup +EXPORT_SYMBOL net/9p/9pnet 0xd384c683 p9stat_free +EXPORT_SYMBOL net/9p/9pnet 0xd39d4eff v9fs_unregister_trans +EXPORT_SYMBOL net/9p/9pnet 0xdc3849c9 p9_is_proto_dotl +EXPORT_SYMBOL net/9p/9pnet 0xdc8165fe p9_client_unlinkat +EXPORT_SYMBOL net/9p/9pnet 0xde62ad6b p9_client_getattr_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe11442b5 p9_client_getlock_dotl +EXPORT_SYMBOL net/9p/9pnet 0xe58a3360 p9_error_init +EXPORT_SYMBOL net/9p/9pnet 0xe78f5e06 p9_client_rename +EXPORT_SYMBOL net/9p/9pnet 0xea3b732d __traceiter_9p_fid_ref +EXPORT_SYMBOL net/9p/9pnet 0xec96300f p9_client_create_dotl +EXPORT_SYMBOL net/9p/9pnet 0xedd3b802 p9_client_attach +EXPORT_SYMBOL net/9p/9pnet 0xf32fa8ff p9_client_stat +EXPORT_SYMBOL net/9p/9pnet 0xfa6d3b4c p9_client_mknod_dotl +EXPORT_SYMBOL net/9p/9pnet 0xfd7f568f p9_client_wstat +EXPORT_SYMBOL net/9p/9pnet 0xfe1df761 p9_client_fsync +EXPORT_SYMBOL net/9p/9pnet 0xffcde1bb v9fs_get_default_trans +EXPORT_SYMBOL net/appletalk/appletalk 0x8b87ea7e aarp_send_ddp +EXPORT_SYMBOL net/appletalk/appletalk 0x96556f90 alloc_ltalkdev +EXPORT_SYMBOL net/appletalk/appletalk 0xcb5fabb9 atalk_find_dev_addr +EXPORT_SYMBOL net/appletalk/appletalk 0xe3deb687 atrtr_get_dev +EXPORT_SYMBOL net/atm/atm 0x0af0c144 atm_init_aal5 +EXPORT_SYMBOL net/atm/atm 0x2cc2d52d vcc_hash +EXPORT_SYMBOL net/atm/atm 0x36be7027 vcc_release_async +EXPORT_SYMBOL net/atm/atm 0x3abf3e7a atm_dev_register +EXPORT_SYMBOL net/atm/atm 0x4443d399 atm_proc_root +EXPORT_SYMBOL net/atm/atm 0x44c6e633 vcc_sklist_lock +EXPORT_SYMBOL net/atm/atm 0x5b8de45b atm_dev_deregister +EXPORT_SYMBOL net/atm/atm 0x5fa9e1a0 atm_charge +EXPORT_SYMBOL net/atm/atm 0x748fbbe0 vcc_insert_socket +EXPORT_SYMBOL net/atm/atm 0x882f179b atm_dev_release_vccs +EXPORT_SYMBOL net/atm/atm 0x9feaf287 sonet_subtract_stats +EXPORT_SYMBOL net/atm/atm 0xaa024146 sonet_copy_stats +EXPORT_SYMBOL net/atm/atm 0xcc739ecc register_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xcdac07d9 vcc_process_recv_queue +EXPORT_SYMBOL net/atm/atm 0xd2a20de9 deregister_atm_ioctl +EXPORT_SYMBOL net/atm/atm 0xddb2a4e5 atm_dev_lookup +EXPORT_SYMBOL net/atm/atm 0xddcb7dec atm_alloc_charge +EXPORT_SYMBOL net/atm/atm 0xe025113a atm_dev_signal_change +EXPORT_SYMBOL net/atm/atm 0xf49bc67a atm_pcr_goal +EXPORT_SYMBOL net/ax25/ax25 0x0ea58eb9 ax25_send_frame +EXPORT_SYMBOL net/ax25/ax25 0x14cecd59 ax25_display_timer +EXPORT_SYMBOL net/ax25/ax25 0x242852b9 ax25_uid_policy +EXPORT_SYMBOL net/ax25/ax25 0x3057f3d8 ax25_header_ops +EXPORT_SYMBOL net/ax25/ax25 0x4502c65a asc2ax +EXPORT_SYMBOL net/ax25/ax25 0x53dea1ff ax2asc +EXPORT_SYMBOL net/ax25/ax25 0x7d7fa5c0 ax25_linkfail_register +EXPORT_SYMBOL net/ax25/ax25 0x812fa87d ax25_ip_xmit +EXPORT_SYMBOL net/ax25/ax25 0x8bb72821 ax25_listen_release +EXPORT_SYMBOL net/ax25/ax25 0x8be9aa1e ax25_linkfail_release +EXPORT_SYMBOL net/ax25/ax25 0x8ede9e26 ax25_protocol_release +EXPORT_SYMBOL net/ax25/ax25 0x9ccb91d4 ax25_listen_register +EXPORT_SYMBOL net/ax25/ax25 0xb6770252 ax25_find_cb +EXPORT_SYMBOL net/ax25/ax25 0xc1444946 ax25cmp +EXPORT_SYMBOL net/ax25/ax25 0xd43ecbf1 null_ax25_address +EXPORT_SYMBOL net/ax25/ax25 0xee02e420 ax25_findbyuid +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x0584278c ebt_do_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x3e92857e ebt_register_template +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x60b5bc40 ebt_unregister_table +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0x9a814eba ebt_unregister_template +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xd1b56a76 ebt_unregister_table_pre_exit +EXPORT_SYMBOL net/bridge/netfilter/ebtables 0xf31c7595 ebt_register_table +EXPORT_SYMBOL net/caif/caif 0x1446b60a caif_client_register_refcnt +EXPORT_SYMBOL net/caif/caif 0x21b78b5a get_cfcnfg +EXPORT_SYMBOL net/caif/caif 0x2a09f713 cfpkt_fromnative +EXPORT_SYMBOL net/caif/caif 0x329dbd06 cfpkt_info +EXPORT_SYMBOL net/caif/caif 0x38701a7c cfcnfg_del_phy_layer +EXPORT_SYMBOL net/caif/caif 0x3fa84493 cfpkt_add_head +EXPORT_SYMBOL net/caif/caif 0x40babbe0 cfpkt_extr_head +EXPORT_SYMBOL net/caif/caif 0x4a237e57 cfpkt_tonative +EXPORT_SYMBOL net/caif/caif 0x6eb49d0d caif_connect_client +EXPORT_SYMBOL net/caif/caif 0x8146893b cfcnfg_add_phy_layer +EXPORT_SYMBOL net/caif/caif 0x839ddb7b cfcnfg_set_phy_state +EXPORT_SYMBOL net/caif/caif 0x94f54023 caif_enroll_dev +EXPORT_SYMBOL net/caif/caif 0x9e3e305d cfpkt_set_prio +EXPORT_SYMBOL net/caif/caif 0xb7b6874e caif_free_client +EXPORT_SYMBOL net/caif/caif 0xca34e133 caif_disconnect_client +EXPORT_SYMBOL net/can/can 0x02710302 can_rx_register +EXPORT_SYMBOL net/can/can 0x56905354 can_proto_register +EXPORT_SYMBOL net/can/can 0x5d17b122 can_proto_unregister +EXPORT_SYMBOL net/can/can 0x65afc690 can_send +EXPORT_SYMBOL net/can/can 0xa2967062 can_sock_destruct +EXPORT_SYMBOL net/can/can 0xab623ff5 can_rx_unregister +EXPORT_SYMBOL net/ceph/libceph 0x00e00484 ceph_osdc_sync +EXPORT_SYMBOL net/ceph/libceph 0x04cad6f0 ceph_pg_poolid_by_name +EXPORT_SYMBOL net/ceph/libceph 0x0c140305 ceph_create_client +EXPORT_SYMBOL net/ceph/libceph 0x0ed658cd osd_req_op_cls_request_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x108bee62 ceph_con_send +EXPORT_SYMBOL net/ceph/libceph 0x1378aba3 ceph_pg_pool_name_by_id +EXPORT_SYMBOL net/ceph/libceph 0x139f27b7 ceph_monc_blocklist_add +EXPORT_SYMBOL net/ceph/libceph 0x165b1948 ceph_pagelist_free_reserve +EXPORT_SYMBOL net/ceph/libceph 0x17c17611 ceph_pg_to_acting_primary +EXPORT_SYMBOL net/ceph/libceph 0x18841bf4 ceph_osdc_new_request +EXPORT_SYMBOL net/ceph/libceph 0x18a1e82c ceph_osdc_alloc_request +EXPORT_SYMBOL net/ceph/libceph 0x19d6fd99 ceph_monc_stop +EXPORT_SYMBOL net/ceph/libceph 0x1a67150b ceph_osdc_maybe_request_map +EXPORT_SYMBOL net/ceph/libceph 0x1bd56a4b ceph_print_client_options +EXPORT_SYMBOL net/ceph/libceph 0x1eef358b ceph_msg_new2 +EXPORT_SYMBOL net/ceph/libceph 0x2087719e ceph_oid_copy +EXPORT_SYMBOL net/ceph/libceph 0x2101cbc9 ceph_oid_destroy +EXPORT_SYMBOL net/ceph/libceph 0x277e480f ceph_osdc_get_request +EXPORT_SYMBOL net/ceph/libceph 0x2878e6d3 osd_req_op_extent_init +EXPORT_SYMBOL net/ceph/libceph 0x2a983d26 ceph_pagelist_release +EXPORT_SYMBOL net/ceph/libceph 0x349adae0 ceph_con_init +EXPORT_SYMBOL net/ceph/libceph 0x3636e02b ceph_msg_data_add_bio +EXPORT_SYMBOL net/ceph/libceph 0x37c43735 osd_req_op_init +EXPORT_SYMBOL net/ceph/libceph 0x38f2d94e ceph_file_to_extents +EXPORT_SYMBOL net/ceph/libceph 0x395a04e3 ceph_osdc_call +EXPORT_SYMBOL net/ceph/libceph 0x3c8d7111 ceph_get_num_objects +EXPORT_SYMBOL net/ceph/libceph 0x3cc706d9 ceph_auth_handle_svc_reply_done +EXPORT_SYMBOL net/ceph/libceph 0x3e30acec ceph_msg_data_add_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x3f88459d ceph_msg_new +EXPORT_SYMBOL net/ceph/libceph 0x40157212 osd_req_op_extent_osd_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x417a9131 ceph_oloc_destroy +EXPORT_SYMBOL net/ceph/libceph 0x42351c48 ceph_msg_dump +EXPORT_SYMBOL net/ceph/libceph 0x466b85b8 libceph_compatible +EXPORT_SYMBOL net/ceph/libceph 0x4affd6c2 ceph_parse_fsid +EXPORT_SYMBOL net/ceph/libceph 0x4de4cf5b ceph_cls_assert_locked +EXPORT_SYMBOL net/ceph/libceph 0x50603ce3 ceph_decode_entity_addrvec +EXPORT_SYMBOL net/ceph/libceph 0x508e012c ceph_osdc_start_request +EXPORT_SYMBOL net/ceph/libceph 0x526eae96 ceph_monc_renew_subs +EXPORT_SYMBOL net/ceph/libceph 0x558204df ceph_cls_unlock +EXPORT_SYMBOL net/ceph/libceph 0x563e1595 osd_req_op_extent_osd_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x56887b46 ceph_compare_options +EXPORT_SYMBOL net/ceph/libceph 0x57baf885 ceph_str_hash +EXPORT_SYMBOL net/ceph/libceph 0x5aeeee62 ceph_oid_aprintf +EXPORT_SYMBOL net/ceph/libceph 0x5d5206a1 osd_req_op_cls_request_data_pagelist +EXPORT_SYMBOL net/ceph/libceph 0x6243ea5e ceph_monc_want_map +EXPORT_SYMBOL net/ceph/libceph 0x62c44097 ceph_con_keepalive +EXPORT_SYMBOL net/ceph/libceph 0x636fd031 ceph_osdc_notify_ack +EXPORT_SYMBOL net/ceph/libceph 0x63758856 ceph_str_hash_name +EXPORT_SYMBOL net/ceph/libceph 0x64c5f525 osd_req_op_extent_osd_iter +EXPORT_SYMBOL net/ceph/libceph 0x694a74d8 ceph_osdc_watch +EXPORT_SYMBOL net/ceph/libceph 0x6a257058 osd_req_op_extent_osd_data_bvecs +EXPORT_SYMBOL net/ceph/libceph 0x6a7a38a0 ceph_pr_addr +EXPORT_SYMBOL net/ceph/libceph 0x6c7a4353 ceph_osdc_update_epoch_barrier +EXPORT_SYMBOL net/ceph/libceph 0x72cdfb57 osd_req_op_alloc_hint_init +EXPORT_SYMBOL net/ceph/libceph 0x77ebf76a ceph_parse_mon_ips +EXPORT_SYMBOL net/ceph/libceph 0x7a2397dc osd_req_op_cls_response_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x7be7b3ba ceph_auth_invalidate_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x7c38768b ceph_auth_add_authorizer_challenge +EXPORT_SYMBOL net/ceph/libceph 0x7d0769cc ceph_client_gid +EXPORT_SYMBOL net/ceph/libceph 0x7f626fe4 osd_req_op_extent_osd_data_bvec_pos +EXPORT_SYMBOL net/ceph/libceph 0x80db70aa osd_req_op_extent_osd_data_bio +EXPORT_SYMBOL net/ceph/libceph 0x83aff95a ceph_osdc_wait_request +EXPORT_SYMBOL net/ceph/libceph 0x86fca7e4 ceph_put_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x88dd3683 osd_req_op_extent_dup_last +EXPORT_SYMBOL net/ceph/libceph 0x896c2d2a osd_req_op_cls_request_data_pages +EXPORT_SYMBOL net/ceph/libceph 0x8c487114 ceph_cls_lock_info +EXPORT_SYMBOL net/ceph/libceph 0x8cc4de18 ceph_monc_got_map +EXPORT_SYMBOL net/ceph/libceph 0x92b7b4ce ceph_pg_pool_flags +EXPORT_SYMBOL net/ceph/libceph 0x93c0b5da ceph_monc_validate_auth +EXPORT_SYMBOL net/ceph/libceph 0x941616a7 ceph_auth_verify_authorizer_reply +EXPORT_SYMBOL net/ceph/libceph 0x95e6d034 ceph_parse_param +EXPORT_SYMBOL net/ceph/libceph 0x985d08f3 osd_req_op_raw_data_in_pages +EXPORT_SYMBOL net/ceph/libceph 0x987d3968 ceph_alloc_options +EXPORT_SYMBOL net/ceph/libceph 0x99977725 ceph_auth_handle_svc_reply_more +EXPORT_SYMBOL net/ceph/libceph 0x9af88f0d ceph_release_page_vector +EXPORT_SYMBOL net/ceph/libceph 0x9bc6b539 ceph_find_or_create_string +EXPORT_SYMBOL net/ceph/libceph 0x9ca95932 ceph_create_snap_context +EXPORT_SYMBOL net/ceph/libceph 0x9d6342c4 __ceph_auth_get_authorizer +EXPORT_SYMBOL net/ceph/libceph 0x9fbba67f ceph_buffer_new +EXPORT_SYMBOL net/ceph/libceph 0x9fefa3cb ceph_calc_file_object_mapping +EXPORT_SYMBOL net/ceph/libceph 0xa04e11dc ceph_monc_init +EXPORT_SYMBOL net/ceph/libceph 0xa12ac1b8 __ceph_open_session +EXPORT_SYMBOL net/ceph/libceph 0xa1e49b3b ceph_auth_get_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xa28229fe ceph_copy_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xa698f998 ceph_free_lockers +EXPORT_SYMBOL net/ceph/libceph 0xa7708c7a ceph_monc_do_statfs +EXPORT_SYMBOL net/ceph/libceph 0xab0ea5e4 ceph_monc_open_session +EXPORT_SYMBOL net/ceph/libceph 0xad703657 ceph_auth_destroy_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xafb8a407 ceph_msgr_flush +EXPORT_SYMBOL net/ceph/libceph 0xb16dde63 ceph_put_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xb54676fa ceph_msg_type_name +EXPORT_SYMBOL net/ceph/libceph 0xb5aaf73e ceph_zero_page_vector_range +EXPORT_SYMBOL net/ceph/libceph 0xb5d6c6ec ceph_monc_get_version_async +EXPORT_SYMBOL net/ceph/libceph 0xb6be38c0 ceph_msg_get +EXPORT_SYMBOL net/ceph/libceph 0xb7142a01 ceph_con_close +EXPORT_SYMBOL net/ceph/libceph 0xb72c162e ceph_buffer_release +EXPORT_SYMBOL net/ceph/libceph 0xba150f38 ceph_osdc_alloc_messages +EXPORT_SYMBOL net/ceph/libceph 0xba6fc345 ceph_msg_data_add_pages +EXPORT_SYMBOL net/ceph/libceph 0xba8c7568 ceph_osdc_unwatch +EXPORT_SYMBOL net/ceph/libceph 0xbc71900a ceph_reset_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xbce3ff6a ceph_copy_from_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xbd2f79ae ceph_oloc_copy +EXPORT_SYMBOL net/ceph/libceph 0xbe3879aa ceph_get_snap_context +EXPORT_SYMBOL net/ceph/libceph 0xbff18c2e ceph_cls_break_lock +EXPORT_SYMBOL net/ceph/libceph 0xc366bfa1 ceph_pagelist_truncate +EXPORT_SYMBOL net/ceph/libceph 0xca80437b ceph_extent_to_file +EXPORT_SYMBOL net/ceph/libceph 0xcabce8f0 ceph_copy_user_to_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xcc09ac2e ceph_alloc_page_vector +EXPORT_SYMBOL net/ceph/libceph 0xcc295bd0 osd_req_op_extent_osd_data +EXPORT_SYMBOL net/ceph/libceph 0xcdd5c926 ceph_msg_data_add_bvecs +EXPORT_SYMBOL net/ceph/libceph 0xce2c0428 osd_req_op_copy_from_init +EXPORT_SYMBOL net/ceph/libceph 0xcf1e5ed0 ceph_client_addr +EXPORT_SYMBOL net/ceph/libceph 0xcfb883a8 ceph_msg_put +EXPORT_SYMBOL net/ceph/libceph 0xcff8b0aa ceph_monc_wait_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xd3a45387 ceph_cls_lock +EXPORT_SYMBOL net/ceph/libceph 0xd4d736db ceph_destroy_options +EXPORT_SYMBOL net/ceph/libceph 0xd4eb7735 ceph_decode_entity_addr +EXPORT_SYMBOL net/ceph/libceph 0xd6792310 ceph_osdc_cancel_request +EXPORT_SYMBOL net/ceph/libceph 0xd9055b4d ceph_wait_for_latest_osdmap +EXPORT_SYMBOL net/ceph/libceph 0xdb311700 ceph_monc_get_version +EXPORT_SYMBOL net/ceph/libceph 0xdba836c6 osd_req_op_xattr_init +EXPORT_SYMBOL net/ceph/libceph 0xdd2f1c3f osd_req_op_cls_init +EXPORT_SYMBOL net/ceph/libceph 0xdf6ef4a1 ceph_oid_printf +EXPORT_SYMBOL net/ceph/libceph 0xdfc091f9 ceph_entity_type_name +EXPORT_SYMBOL net/ceph/libceph 0xe03e337d ceph_osdc_notify +EXPORT_SYMBOL net/ceph/libceph 0xe0588878 ceph_auth_handle_bad_authorizer +EXPORT_SYMBOL net/ceph/libceph 0xe2fe0f01 __ceph_alloc_sparse_ext_map +EXPORT_SYMBOL net/ceph/libceph 0xe34a59f2 ceph_object_locator_to_pg +EXPORT_SYMBOL net/ceph/libceph 0xe3c202f4 ceph_osdc_clear_abort_err +EXPORT_SYMBOL net/ceph/libceph 0xe76e7226 ceph_pagelist_alloc +EXPORT_SYMBOL net/ceph/libceph 0xeba9fc1e ceph_auth_is_authenticated +EXPORT_SYMBOL net/ceph/libceph 0xedf5bf22 ceph_osdc_list_watchers +EXPORT_SYMBOL net/ceph/libceph 0xee120c03 ceph_release_string +EXPORT_SYMBOL net/ceph/libceph 0xee4988fe osd_req_op_extent_update +EXPORT_SYMBOL net/ceph/libceph 0xeef6cfa3 ceph_iterate_extents +EXPORT_SYMBOL net/ceph/libceph 0xefce3c3b ceph_pagelist_reserve +EXPORT_SYMBOL net/ceph/libceph 0xefce991c ceph_pagelist_append +EXPORT_SYMBOL net/ceph/libceph 0xf03fe862 ceph_pagelist_set_cursor +EXPORT_SYMBOL net/ceph/libceph 0xf254297e ceph_addr_is_blank +EXPORT_SYMBOL net/ceph/libceph 0xf3097cdf ceph_osdc_abort_requests +EXPORT_SYMBOL net/ceph/libceph 0xf37748df ceph_destroy_client +EXPORT_SYMBOL net/ceph/libceph 0xf765d872 ceph_osdc_flush_notifies +EXPORT_SYMBOL net/ceph/libceph 0xf810b570 ceph_con_open +EXPORT_SYMBOL net/ceph/libceph 0xf9040fa8 ceph_osdc_put_request +EXPORT_SYMBOL net/ceph/libceph 0xfb7d0d1b ceph_check_fsid +EXPORT_SYMBOL net/ceph/libceph 0xfbda6125 ceph_cls_set_cookie +EXPORT_SYMBOL net/ceph/libceph 0xfe9f3caa ceph_open_session +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x486e8554 dccp_syn_ack_timeout +EXPORT_SYMBOL net/dccp/dccp_ipv4 0x6628194c dccp_req_err +EXPORT_SYMBOL net/hsr/hsr 0x8901a2e1 is_hsr_master +EXPORT_SYMBOL net/hsr/hsr 0x98f5a745 hsr_get_version +EXPORT_SYMBOL net/ieee802154/ieee802154 0x0db8a4a7 wpan_phy_for_each +EXPORT_SYMBOL net/ieee802154/ieee802154 0x1a3356ac wpan_phy_free +EXPORT_SYMBOL net/ieee802154/ieee802154 0x5e1aadfe wpan_phy_register +EXPORT_SYMBOL net/ieee802154/ieee802154 0x88862cce wpan_phy_find +EXPORT_SYMBOL net/ieee802154/ieee802154 0xa7e039d3 wpan_phy_new +EXPORT_SYMBOL net/ieee802154/ieee802154 0xbdbf4c7a wpan_phy_unregister +EXPORT_SYMBOL net/ipv4/fou 0x1757d1a4 fou_encap_hlen +EXPORT_SYMBOL net/ipv4/fou 0x747e7bc5 __fou_build_header +EXPORT_SYMBOL net/ipv4/fou 0xcddb1c7e __gue_build_header +EXPORT_SYMBOL net/ipv4/fou 0xf13914b3 gue_encap_hlen +EXPORT_SYMBOL net/ipv4/gre 0x8c95dac3 gre_parse_header +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x595ce703 ip_tunnel_encap_del_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x5fb0c02a ip_tunnel_get_link_net +EXPORT_SYMBOL net/ipv4/ip_tunnel 0x62d150bd ip_tunnel_md_udp_encap +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xbbb5e8bb ip_tunnel_encap_add_ops +EXPORT_SYMBOL net/ipv4/ip_tunnel 0xf3ff1c5e ip_tunnel_get_iflink +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x226cc9a0 arpt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x50aa6c16 arpt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0x6cc6c554 arpt_register_table +EXPORT_SYMBOL net/ipv4/netfilter/arp_tables 0xa70bf65c arpt_unregister_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x49f1da33 ipt_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0x584c6b7c ipt_unregister_table_exit +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xb35ae956 ipt_do_table +EXPORT_SYMBOL net/ipv4/netfilter/ip_tables 0xe8fc03a3 ipt_register_table +EXPORT_SYMBOL net/ipv4/tunnel4 0x5bb02dc2 xfrm4_tunnel_deregister +EXPORT_SYMBOL net/ipv4/tunnel4 0xb49a3354 xfrm4_tunnel_register +EXPORT_SYMBOL net/ipv4/udp_tunnel 0x01ee8f69 udp_sock_create4 +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x15b420f5 ip6_tnl_change_mtu +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x18192377 ip6_tnl_parse_tlv_enc_lim +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x235b8e2a ip6_tnl_get_link_net +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x42ead60e ip6_tnl_get_cap +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x84633611 ip6_tnl_get_iflink +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0x8879e583 ip6_tnl_rcv +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xa4ed242f ip6_tnl_encap_del_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xcfd08925 ip6_tnl_encap_add_ops +EXPORT_SYMBOL net/ipv6/ip6_tunnel 0xf4ca7339 ip6_tnl_xmit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x3169984f ip6t_unregister_table_pre_exit +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x6e44538d ip6t_register_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0x736a2098 ip6t_do_table +EXPORT_SYMBOL net/ipv6/netfilter/ip6_tables 0xf43a28cc ip6t_unregister_table_exit +EXPORT_SYMBOL net/ipv6/tunnel6 0x3a4008ec xfrm6_tunnel_register +EXPORT_SYMBOL net/ipv6/tunnel6 0x92db42e1 xfrm6_tunnel_deregister +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0x4369bfbb xfrm6_tunnel_alloc_spi +EXPORT_SYMBOL net/ipv6/xfrm6_tunnel 0xf1bb7f72 xfrm6_tunnel_spi_lookup +EXPORT_SYMBOL net/lapb/lapb 0x08efc5ae lapb_data_received +EXPORT_SYMBOL net/lapb/lapb 0x3f62cbea lapb_register +EXPORT_SYMBOL net/lapb/lapb 0x459dbaf4 lapb_getparms +EXPORT_SYMBOL net/lapb/lapb 0x5d6f816d lapb_unregister +EXPORT_SYMBOL net/lapb/lapb 0x75a1abd2 lapb_disconnect_request +EXPORT_SYMBOL net/lapb/lapb 0xbbca27d2 lapb_data_request +EXPORT_SYMBOL net/lapb/lapb 0xd58a416a lapb_connect_request +EXPORT_SYMBOL net/lapb/lapb 0xfa619e70 lapb_setparms +EXPORT_SYMBOL net/llc/llc 0x028ad41f llc_sap_close +EXPORT_SYMBOL net/llc/llc 0x1e0ff1c2 llc_sap_find +EXPORT_SYMBOL net/llc/llc 0x38b92846 llc_remove_pack +EXPORT_SYMBOL net/llc/llc 0x41a9917f llc_add_pack +EXPORT_SYMBOL net/llc/llc 0x52d7b2fd llc_sap_list +EXPORT_SYMBOL net/llc/llc 0x7374319a llc_set_station_handler +EXPORT_SYMBOL net/llc/llc 0xad820c1b llc_sap_open +EXPORT_SYMBOL net/llc/llc 0xc1dc8e0b llc_mac_hdr_init +EXPORT_SYMBOL net/llc/llc 0xe31386ee llc_build_and_send_ui_pkt +EXPORT_SYMBOL net/mac80211/mac80211 0x00da4425 ieee80211_beacon_cntdwn_is_complete +EXPORT_SYMBOL net/mac80211/mac80211 0x00f3c134 ieee80211_report_low_ack +EXPORT_SYMBOL net/mac80211/mac80211 0x06254884 ieee80211_cqm_rssi_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x068c0413 ieee80211_ap_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x06ceaba0 ieee80211_generic_frame_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x0953d360 ieee80211_wake_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x0aa3e52d ieee80211_mark_rx_ba_filtered_frames +EXPORT_SYMBOL net/mac80211/mac80211 0x0acfd931 ieee80211_stop_queue +EXPORT_SYMBOL net/mac80211/mac80211 0x0b6af4e9 ieee80211_rx_napi +EXPORT_SYMBOL net/mac80211/mac80211 0x0ddd2b65 ieee80211_sta_block_awake +EXPORT_SYMBOL net/mac80211/mac80211 0x102d0317 ieee80211_nullfunc_get +EXPORT_SYMBOL net/mac80211/mac80211 0x124a46ba ieee80211_wake_queues +EXPORT_SYMBOL net/mac80211/mac80211 0x14fa96ce ieee80211_txq_may_transmit +EXPORT_SYMBOL net/mac80211/mac80211 0x17c49ed3 ieee80211_queue_delayed_work +EXPORT_SYMBOL net/mac80211/mac80211 0x18835314 __ieee80211_get_tx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x19f37f0d ieee80211_update_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x1bb75017 ieee80211_beacon_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x1cf75d45 ieee80211_get_tkip_p1k_iv +EXPORT_SYMBOL net/mac80211/mac80211 0x1d05177f ieee80211_queue_work +EXPORT_SYMBOL net/mac80211/mac80211 0x1f40d438 ieee80211_nan_func_match +EXPORT_SYMBOL net/mac80211/mac80211 0x24cf0886 ieee80211_get_fils_discovery_tmpl +EXPORT_SYMBOL net/mac80211/mac80211 0x29d1fd3d ieee80211_scan_completed +EXPORT_SYMBOL net/mac80211/mac80211 0x2e845bac ieee80211_sta_pspoll +EXPORT_SYMBOL net/mac80211/mac80211 0x2ea5bae0 __ieee80211_schedule_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x2fb790b1 ieee80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/mac80211/mac80211 0x320553cb ieee80211_proberesp_get +EXPORT_SYMBOL net/mac80211/mac80211 0x35d576af ieee80211_alloc_hw_nm +EXPORT_SYMBOL net/mac80211/mac80211 0x391eda45 ieee80211_get_tkip_rx_p1k +EXPORT_SYMBOL net/mac80211/mac80211 0x391f8ac5 ieee80211_tx_status_ext +EXPORT_SYMBOL net/mac80211/mac80211 0x3c57086f ieee80211_tx_dequeue +EXPORT_SYMBOL net/mac80211/mac80211 0x44377de1 ieee80211_beacon_update_cntdwn +EXPORT_SYMBOL net/mac80211/mac80211 0x46388f15 ieee80211_stop_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x467a087c ieee80211_sta_register_airtime +EXPORT_SYMBOL net/mac80211/mac80211 0x4750cf24 ieee80211_reserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x47de3ed5 ieee80211_rate_control_register +EXPORT_SYMBOL net/mac80211/mac80211 0x4b6a8085 ieee80211_find_sta +EXPORT_SYMBOL net/mac80211/mac80211 0x4e3f81a5 ieee80211_get_unsol_bcast_probe_resp_tmpl +EXPORT_SYMBOL net/mac80211/mac80211 0x5578e63e ieee80211_connection_loss +EXPORT_SYMBOL net/mac80211/mac80211 0x55a8dce1 __ieee80211_create_tpt_led_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x55c7f036 ieee80211_tx_status_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x579d1794 ieee80211_nan_func_terminated +EXPORT_SYMBOL net/mac80211/mac80211 0x582b2177 ieee80211_sta_recalc_aggregates +EXPORT_SYMBOL net/mac80211/mac80211 0x598b4d01 ieee80211_sched_scan_results +EXPORT_SYMBOL net/mac80211/mac80211 0x5c9d4034 ieee80211_beacon_get_template_ema_list +EXPORT_SYMBOL net/mac80211/mac80211 0x5ecb453f ieee80211_beacon_get_tim +EXPORT_SYMBOL net/mac80211/mac80211 0x5efd987d ieee80211_txq_get_depth +EXPORT_SYMBOL net/mac80211/mac80211 0x5fa42069 wiphy_to_ieee80211_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x61b996a0 ieee80211_free_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x61d141dc ieee80211_chswitch_done +EXPORT_SYMBOL net/mac80211/mac80211 0x66220a39 ieee80211_send_eosp_nullfunc +EXPORT_SYMBOL net/mac80211/mac80211 0x6714497d ieee80211_queue_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x6acab0b6 ieee80211_rate_control_unregister +EXPORT_SYMBOL net/mac80211/mac80211 0x6e8f701f ieee80211_disconnect +EXPORT_SYMBOL net/mac80211/mac80211 0x6ea57c4d ieee80211_probereq_get +EXPORT_SYMBOL net/mac80211/mac80211 0x6fe92921 ieee80211_txq_schedule_start +EXPORT_SYMBOL net/mac80211/mac80211 0x704b2546 ieee80211_register_hw +EXPORT_SYMBOL net/mac80211/mac80211 0x7220fb2b ieee80211_sta_uapsd_trigger +EXPORT_SYMBOL net/mac80211/mac80211 0x7401ca0e ieee80211_get_buffered_bc +EXPORT_SYMBOL net/mac80211/mac80211 0x740bdf2f ieee80211_rts_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x75a6f384 ieee80211_tx_prepare_skb +EXPORT_SYMBOL net/mac80211/mac80211 0x77f5a2dd ieee80211_pspoll_get +EXPORT_SYMBOL net/mac80211/mac80211 0x78c39c65 __ieee80211_get_radio_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x79d36853 ieee80211_tx_status +EXPORT_SYMBOL net/mac80211/mac80211 0x7c10506a ieee80211_rx_list +EXPORT_SYMBOL net/mac80211/mac80211 0x81cc3216 ieee80211_beacon_get_template +EXPORT_SYMBOL net/mac80211/mac80211 0x82217d66 ieee80211_sta_eosp +EXPORT_SYMBOL net/mac80211/mac80211 0x8962b027 ieee80211_rx_ba_timer_expired +EXPORT_SYMBOL net/mac80211/mac80211 0x8d2f6d6e ieee80211_sched_scan_stopped +EXPORT_SYMBOL net/mac80211/mac80211 0x8f0deae9 __ieee80211_get_rx_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0x902cd38a ieee80211_start_tx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0x902ce420 ieee80211_next_txq +EXPORT_SYMBOL net/mac80211/mac80211 0x9076900c ieee80211_rx_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x91ebc6e2 ieee80211_start_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x9384d190 ieee80211_disable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0x950b8a17 ieee80211_unreserve_tid +EXPORT_SYMBOL net/mac80211/mac80211 0x95febea6 ieee80211_get_bssid +EXPORT_SYMBOL net/mac80211/mac80211 0x991a0ca0 ieee80211_parse_p2p_noa +EXPORT_SYMBOL net/mac80211/mac80211 0x99fecf5e ieee80211_ctstoself_duration +EXPORT_SYMBOL net/mac80211/mac80211 0x9b4b3f73 ieee80211_stop_tx_ba_cb_irqsafe +EXPORT_SYMBOL net/mac80211/mac80211 0x9c405e3c ieee80211_stop_queues +EXPORT_SYMBOL net/mac80211/mac80211 0xa9d31e95 ieee80211_unregister_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xab09473b ieee80211_radar_detected +EXPORT_SYMBOL net/mac80211/mac80211 0xacb4429c ieee80211_sta_ps_transition +EXPORT_SYMBOL net/mac80211/mac80211 0xaeb9a917 ieee80211_get_key_rx_seq +EXPORT_SYMBOL net/mac80211/mac80211 0xaf625920 __ieee80211_get_assoc_led_name +EXPORT_SYMBOL net/mac80211/mac80211 0xb34de8bd ieee80211_send_bar +EXPORT_SYMBOL net/mac80211/mac80211 0xb574b1fa ieee80211_stop_rx_ba_session +EXPORT_SYMBOL net/mac80211/mac80211 0xb80e67f5 ieee80211_txq_airtime_check +EXPORT_SYMBOL net/mac80211/mac80211 0xbe137119 ieee80211_sta_set_buffered +EXPORT_SYMBOL net/mac80211/mac80211 0xca14880d ieee80211_rts_get +EXPORT_SYMBOL net/mac80211/mac80211 0xcf250b44 ieee80211_beacon_get_template_ema_index +EXPORT_SYMBOL net/mac80211/mac80211 0xd00b1cea ieee80211_iter_keys +EXPORT_SYMBOL net/mac80211/mac80211 0xd3c5fdfd ieee80211_csa_finish +EXPORT_SYMBOL net/mac80211/mac80211 0xd525a02d ieee80211_beacon_free_ema_list +EXPORT_SYMBOL net/mac80211/mac80211 0xd55aa7b9 ieee80211_free_txskb +EXPORT_SYMBOL net/mac80211/mac80211 0xd7b9bddc ieee80211_report_wowlan_wakeup +EXPORT_SYMBOL net/mac80211/mac80211 0xd9249d8e ieee80211_channel_switch_disconnect +EXPORT_SYMBOL net/mac80211/mac80211 0xdf1af256 ieee80211_manage_rx_ba_offl +EXPORT_SYMBOL net/mac80211/mac80211 0xdf987944 ieee80211_tdls_oper_request +EXPORT_SYMBOL net/mac80211/mac80211 0xe0405f8b ieee80211_get_tx_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xe1959855 ieee80211_get_tkip_p2k +EXPORT_SYMBOL net/mac80211/mac80211 0xe2cfe69a ieee80211_tx_rate_update +EXPORT_SYMBOL net/mac80211/mac80211 0xe489c367 ieee80211_refresh_tx_agg_session_timer +EXPORT_SYMBOL net/mac80211/mac80211 0xe549891f ieee80211_iter_keys_rcu +EXPORT_SYMBOL net/mac80211/mac80211 0xe5a61bd9 ieee80211_handle_wake_tx_queue +EXPORT_SYMBOL net/mac80211/mac80211 0xeaeaa326 ieee80211_enable_rssi_reports +EXPORT_SYMBOL net/mac80211/mac80211 0xee448bd0 ieee80211_restart_hw +EXPORT_SYMBOL net/mac80211/mac80211 0xf77d2894 ieee80211_ctstoself_get +EXPORT_SYMBOL net/mac80211/mac80211 0xf96c8825 rate_control_set_rates +EXPORT_SYMBOL net/mac80211/mac80211 0xfcaeb287 ieee80211_beacon_set_cntdwn +EXPORT_SYMBOL net/mac802154/mac802154 0x1847a58c ieee802154_configure_durations +EXPORT_SYMBOL net/mac802154/mac802154 0x3e5c0b13 ieee802154_unregister_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x43c4a4d3 ieee802154_rx_irqsafe +EXPORT_SYMBOL net/mac802154/mac802154 0x4f307e63 ieee802154_xmit_complete +EXPORT_SYMBOL net/mac802154/mac802154 0x4faad301 ieee802154_register_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x73c483a2 ieee802154_free_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x7fd7945c ieee802154_alloc_hw +EXPORT_SYMBOL net/mac802154/mac802154 0x957405eb ieee802154_xmit_hw_error +EXPORT_SYMBOL net/mac802154/mac802154 0xb38c5330 ieee802154_xmit_error +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x01f0bae8 ip_vs_scheduler_err +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x0856b3c3 ip_vs_proto_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x29df870c register_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x325e226b ip_vs_conn_in_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x3a727ed4 ip_vs_conn_new +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4422c1c6 ip_vs_nfct_expect_related +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4969e482 unregister_ip_vs_scheduler +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x4d23eb6b ip_vs_new_conn_out +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0x6321338c register_ip_vs_app_inc +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb55473b6 unregister_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xb73599fa register_ip_vs_app +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xd831a1a2 ip_vs_proto_name +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xde1e0b40 ip_vs_tcp_conn_listen +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xe0ffb10e ip_vs_proto_data_get +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xef279019 ip_vs_conn_put +EXPORT_SYMBOL net/netfilter/ipvs/ip_vs 0xfaf42a38 ip_vs_conn_out_get +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x3b08a8f0 nf_ct_destroy +EXPORT_SYMBOL net/netfilter/nf_conntrack 0x89d99ee1 __nf_ct_ext_find +EXPORT_SYMBOL net/netfilter/nf_conntrack 0xb86c63e3 nf_ct_ext_add +EXPORT_SYMBOL net/netfilter/nf_conntrack_pptp 0xf2a36612 pptp_msg_name +EXPORT_SYMBOL net/netfilter/nf_nat 0x39173c0d __nf_nat_mangle_tcp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0x697e4005 nf_nat_follow_master +EXPORT_SYMBOL net/netfilter/nf_nat 0x9295eebb nf_nat_mangle_udp_packet +EXPORT_SYMBOL net/netfilter/nf_nat 0xdb84c6d5 nf_nat_setup_info +EXPORT_SYMBOL net/netfilter/nft_fib 0x46170f23 nft_fib_policy +EXPORT_SYMBOL net/netfilter/x_tables 0x0d7f5fcd xt_alloc_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x159309a4 xt_unregister_target +EXPORT_SYMBOL net/netfilter/x_tables 0x228dbaea xt_register_target +EXPORT_SYMBOL net/netfilter/x_tables 0x2de8282d xt_unregister_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x3bf9d084 xt_check_table_hooks +EXPORT_SYMBOL net/netfilter/x_tables 0x48012e28 xt_check_proc_name +EXPORT_SYMBOL net/netfilter/x_tables 0x50873741 xt_compat_init_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0x6c3952b4 xt_unregister_match +EXPORT_SYMBOL net/netfilter/x_tables 0x6e99fd4d xt_find_match +EXPORT_SYMBOL net/netfilter/x_tables 0x70f4b049 xt_register_matches +EXPORT_SYMBOL net/netfilter/x_tables 0x977fd4bf xt_alloc_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0x98da66fb xt_unregister_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xa25fc115 xt_compat_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xb07746bb xt_find_table +EXPORT_SYMBOL net/netfilter/x_tables 0xcb3e91cc xt_counters_alloc +EXPORT_SYMBOL net/netfilter/x_tables 0xd258df22 xt_register_targets +EXPORT_SYMBOL net/netfilter/x_tables 0xd87ae60d xt_check_entry_offsets +EXPORT_SYMBOL net/netfilter/x_tables 0xe204e042 xt_free_table_info +EXPORT_SYMBOL net/netfilter/x_tables 0xe85e0b8e xt_register_match +EXPORT_SYMBOL net/netfilter/x_tables 0xfef779fa xt_find_jump_offset +EXPORT_SYMBOL net/nfc/hci/hci 0x0ac34250 nfc_hci_unregister_device +EXPORT_SYMBOL net/nfc/hci/hci 0x14b0af48 nfc_hci_free_device +EXPORT_SYMBOL net/nfc/hci/hci 0x19f7537c nfc_hci_allocate_device +EXPORT_SYMBOL net/nfc/hci/hci 0x1b63ad99 nfc_hci_get_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x26c3ffeb nfc_hci_reset_pipes +EXPORT_SYMBOL net/nfc/hci/hci 0x5da04434 nfc_hci_driver_failure +EXPORT_SYMBOL net/nfc/hci/hci 0x67b0eb52 nfc_hci_target_discovered +EXPORT_SYMBOL net/nfc/hci/hci 0x6a05c55d nfc_hci_disconnect_gate +EXPORT_SYMBOL net/nfc/hci/hci 0x74fe3670 nfc_hci_result_to_errno +EXPORT_SYMBOL net/nfc/hci/hci 0x75025cba nfc_hci_disconnect_all_gates +EXPORT_SYMBOL net/nfc/hci/hci 0x86d39aa6 nfc_hci_set_param +EXPORT_SYMBOL net/nfc/hci/hci 0x9a7f8fda nfc_hci_set_clientdata +EXPORT_SYMBOL net/nfc/hci/hci 0x9b96e375 nfc_hci_send_event +EXPORT_SYMBOL net/nfc/hci/hci 0xabf2a0df nfc_hci_recv_frame +EXPORT_SYMBOL net/nfc/hci/hci 0xc0d3b9c5 nfc_hci_send_cmd +EXPORT_SYMBOL net/nfc/hci/hci 0xcbdc523e nfc_llc_stop +EXPORT_SYMBOL net/nfc/hci/hci 0xd007a50c nfc_hci_get_param +EXPORT_SYMBOL net/nfc/hci/hci 0xdd231c55 nfc_hci_sak_to_protocol +EXPORT_SYMBOL net/nfc/hci/hci 0xde67e045 nfc_llc_start +EXPORT_SYMBOL net/nfc/hci/hci 0xe6ba4a05 nfc_hci_register_device +EXPORT_SYMBOL net/nfc/hci/hci 0xe7022c97 nfc_hci_reset_pipes_per_host +EXPORT_SYMBOL net/nfc/hci/hci 0xf8bf1596 nfc_hci_send_cmd_async +EXPORT_SYMBOL net/nfc/hci/hci 0xfd457d9a nfc_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x0caa1239 nci_register_device +EXPORT_SYMBOL net/nfc/nci/nci 0x100104d2 nci_set_config +EXPORT_SYMBOL net/nfc/nci/nci 0x14c597b1 nci_hci_connect_gate +EXPORT_SYMBOL net/nfc/nci/nci 0x2a0067dc nci_nfcee_mode_set +EXPORT_SYMBOL net/nfc/nci/nci 0x382aaf7d nci_core_conn_close +EXPORT_SYMBOL net/nfc/nci/nci 0x3bbde1e9 nci_core_init +EXPORT_SYMBOL net/nfc/nci/nci 0x3ccd0b99 nci_nfcc_loopback +EXPORT_SYMBOL net/nfc/nci/nci 0x4ba45bcb nci_core_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x56fb8a45 nci_hci_send_event +EXPORT_SYMBOL net/nfc/nci/nci 0x589f3231 nci_send_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x5978c6bc nci_core_conn_create +EXPORT_SYMBOL net/nfc/nci/nci 0x6b3f64d5 nci_hci_get_param +EXPORT_SYMBOL net/nfc/nci/nci 0x7000ecac nci_hci_dev_session_init +EXPORT_SYMBOL net/nfc/nci/nci 0x746cfdc5 nci_unregister_device +EXPORT_SYMBOL net/nfc/nci/nci 0x76c99754 nci_nfcee_discover +EXPORT_SYMBOL net/nfc/nci/nci 0x8539f85a nci_recv_frame +EXPORT_SYMBOL net/nfc/nci/nci 0x87ff8f07 nci_send_data +EXPORT_SYMBOL net/nfc/nci/nci 0x8f0cd918 nci_hci_clear_all_pipes +EXPORT_SYMBOL net/nfc/nci/nci 0x8f1d99f1 nci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0x924b72c2 nci_conn_max_data_pkt_payload_size +EXPORT_SYMBOL net/nfc/nci/nci 0x931abc18 nci_core_reset +EXPORT_SYMBOL net/nfc/nci/nci 0xa19a7459 nci_free_device +EXPORT_SYMBOL net/nfc/nci/nci 0xa75351ba nci_allocate_device +EXPORT_SYMBOL net/nfc/nci/nci 0xb211f977 nci_prop_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xb588b31f nci_req_complete +EXPORT_SYMBOL net/nfc/nci/nci 0xba490602 nci_to_errno +EXPORT_SYMBOL net/nfc/nci/nci 0xc77ce416 nci_hci_set_param +EXPORT_SYMBOL net/nfc/nci/nci 0xd25f6d30 nci_hci_send_cmd +EXPORT_SYMBOL net/nfc/nci/nci 0xdddc3a87 nci_hci_open_pipe +EXPORT_SYMBOL net/nfc/nci/nci 0xdf867c27 nci_get_conn_info_by_dest_type_params +EXPORT_SYMBOL net/nfc/nfc 0x1876f1cd nfc_class +EXPORT_SYMBOL net/nfc/nfc 0x2e5498c0 nfc_tm_deactivated +EXPORT_SYMBOL net/nfc/nfc 0x3cac38cf nfc_remove_se +EXPORT_SYMBOL net/nfc/nfc 0x4112f4ac nfc_targets_found +EXPORT_SYMBOL net/nfc/nfc 0x5f29bcf2 nfc_set_remote_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x6683ae48 nfc_send_to_raw_sock +EXPORT_SYMBOL net/nfc/nfc 0x715d5ff5 nfc_alloc_recv_skb +EXPORT_SYMBOL net/nfc/nfc 0x753c282c nfc_add_se +EXPORT_SYMBOL net/nfc/nfc 0x7542a2a0 nfc_get_local_general_bytes +EXPORT_SYMBOL net/nfc/nfc 0x78790ae2 nfc_proto_register +EXPORT_SYMBOL net/nfc/nfc 0x7a6e8799 nfc_target_lost +EXPORT_SYMBOL net/nfc/nfc 0x7c1892f6 nfc_dep_link_is_up +EXPORT_SYMBOL net/nfc/nfc 0x810d0461 nfc_allocate_device +EXPORT_SYMBOL net/nfc/nfc 0x84efd16f nfc_register_device +EXPORT_SYMBOL net/nfc/nfc 0x8cb38e4a nfc_find_se +EXPORT_SYMBOL net/nfc/nfc 0x8e6de0f1 nfc_unregister_device +EXPORT_SYMBOL net/nfc/nfc 0x97f5f768 nfc_tm_data_received +EXPORT_SYMBOL net/nfc/nfc 0xa1bfc9d5 nfc_se_connectivity +EXPORT_SYMBOL net/nfc/nfc 0xa2ab8821 nfc_vendor_cmd_reply +EXPORT_SYMBOL net/nfc/nfc 0xac1eab4a nfc_tm_activated +EXPORT_SYMBOL net/nfc/nfc 0xb9bfcd3f nfc_driver_failure +EXPORT_SYMBOL net/nfc/nfc 0xce2a3c6a __nfc_alloc_vendor_cmd_reply_skb +EXPORT_SYMBOL net/nfc/nfc 0xd7e7f974 nfc_se_transaction +EXPORT_SYMBOL net/nfc/nfc 0xd80eb9dc nfc_fw_download_done +EXPORT_SYMBOL net/nfc/nfc 0xeb7b64a9 nfc_proto_unregister +EXPORT_SYMBOL net/nfc/nfc_digital 0x0cc38643 nfc_digital_free_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x13ba9514 nfc_digital_register_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x2666ab6b nfc_digital_unregister_device +EXPORT_SYMBOL net/nfc/nfc_digital 0x8e141678 nfc_digital_allocate_device +EXPORT_SYMBOL net/phonet/phonet 0x2168fa5b phonet_proto_register +EXPORT_SYMBOL net/phonet/phonet 0x4f021cac pn_skb_send +EXPORT_SYMBOL net/phonet/phonet 0x5b283a93 phonet_proto_unregister +EXPORT_SYMBOL net/phonet/phonet 0x5e7f1936 phonet_header_ops +EXPORT_SYMBOL net/phonet/phonet 0x63d658d5 pn_sock_get_port +EXPORT_SYMBOL net/phonet/phonet 0x7584716e pn_sock_hash +EXPORT_SYMBOL net/phonet/phonet 0x77e8d266 phonet_stream_ops +EXPORT_SYMBOL net/phonet/phonet 0xee0df86a pn_sock_unhash +EXPORT_SYMBOL net/rxrpc/rxrpc 0x15eb5456 rxrpc_kernel_begin_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x191ecaae rxrpc_kernel_get_srtt +EXPORT_SYMBOL net/rxrpc/rxrpc 0x1ecf558f rxrpc_kernel_recv_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x225d34e2 rxrpc_kernel_send_data +EXPORT_SYMBOL net/rxrpc/rxrpc 0x29f6d3a6 rxrpc_kernel_set_max_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x31bf3ca3 rxrpc_debug_id +EXPORT_SYMBOL net/rxrpc/rxrpc 0x499c85c1 rxrpc_kernel_put_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x567626ed rxrpc_kernel_check_life +EXPORT_SYMBOL net/rxrpc/rxrpc 0x57d0d31a rxrpc_kernel_new_call_notification +EXPORT_SYMBOL net/rxrpc/rxrpc 0x685bcf9b rxrpc_kernel_get_epoch +EXPORT_SYMBOL net/rxrpc/rxrpc 0x796f22bb rxrpc_sock_set_min_security_level +EXPORT_SYMBOL net/rxrpc/rxrpc 0x84308891 rxrpc_kernel_abort_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0x9e738a70 rxrpc_kernel_get_peer +EXPORT_SYMBOL net/rxrpc/rxrpc 0xb5a7ce89 rxrpc_kernel_charge_accept +EXPORT_SYMBOL net/rxrpc/rxrpc 0xbfb30167 rxrpc_sock_set_security_keyring +EXPORT_SYMBOL net/rxrpc/rxrpc 0xc099ffa3 rxrpc_kernel_shutdown_call +EXPORT_SYMBOL net/rxrpc/rxrpc 0xdc53a402 rxrpc_get_server_data_key +EXPORT_SYMBOL net/rxrpc/rxrpc 0xde32501d key_type_rxrpc +EXPORT_SYMBOL net/rxrpc/rxrpc 0xebc6592c rxrpc_kernel_set_tx_length +EXPORT_SYMBOL net/rxrpc/rxrpc 0xf42cc449 rxrpc_get_null_key +EXPORT_SYMBOL net/sctp/sctp 0xab332c75 sctp_do_peeloff +EXPORT_SYMBOL net/smc/smc 0x08abe7fd __traceiter_smc_tx_sendmsg +EXPORT_SYMBOL net/smc/smc 0x1e580f21 __tracepoint_smcr_link_down +EXPORT_SYMBOL net/smc/smc 0x1e612b77 __SCT__tp_func_smc_switch_to_fallback +EXPORT_SYMBOL net/smc/smc 0x286060ab __tracepoint_smc_switch_to_fallback +EXPORT_SYMBOL net/smc/smc 0x29b3c73b __traceiter_smcr_link_down +EXPORT_SYMBOL net/smc/smc 0x3ac4e1c7 __SCT__tp_func_smc_rx_recvmsg +EXPORT_SYMBOL net/smc/smc 0x3bcd3bb9 __SCT__tp_func_smcr_link_down +EXPORT_SYMBOL net/smc/smc 0x3f947f2f __traceiter_smc_rx_recvmsg +EXPORT_SYMBOL net/smc/smc 0x444ad037 __SCK__tp_func_smc_rx_recvmsg +EXPORT_SYMBOL net/smc/smc 0x4a7015df __tracepoint_smc_tx_sendmsg +EXPORT_SYMBOL net/smc/smc 0x87ccd0c7 __SCT__tp_func_smc_tx_sendmsg +EXPORT_SYMBOL net/smc/smc 0x898a18e5 __traceiter_smc_switch_to_fallback +EXPORT_SYMBOL net/smc/smc 0x92c3d728 __SCK__tp_func_smcr_link_down +EXPORT_SYMBOL net/smc/smc 0xacb48db1 __SCK__tp_func_smc_switch_to_fallback +EXPORT_SYMBOL net/smc/smc 0xc6ebcdd6 __SCK__tp_func_smc_tx_sendmsg +EXPORT_SYMBOL net/smc/smc 0xc8d1083e __tracepoint_smc_rx_recvmsg +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0x1624e111 gss_mech_put +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xb65c1fbb gss_pseudoflavor_to_service +EXPORT_SYMBOL net/sunrpc/auth_gss/auth_rpcgss 0xec5125f0 gss_mech_get +EXPORT_SYMBOL net/sunrpc/sunrpc 0x44e924a6 xdr_restrict_buflen +EXPORT_SYMBOL net/sunrpc/sunrpc 0xbea3892f svc_pool_stats_open +EXPORT_SYMBOL net/sunrpc/sunrpc 0xe4acf4d9 xdr_truncate_encode +EXPORT_SYMBOL net/tipc/tipc 0x021b2647 tipc_sk_fill_sock_diag +EXPORT_SYMBOL net/tipc/tipc 0x117b7082 tipc_dump_start +EXPORT_SYMBOL net/tipc/tipc 0x21095e12 tipc_dump_done +EXPORT_SYMBOL net/tipc/tipc 0x94c9fa0e tipc_nl_sk_walk +EXPORT_SYMBOL net/tls/tls 0x1ccdcd2d tls_get_record +EXPORT_SYMBOL net/wireless/cfg80211 0x0632357e cfg80211_del_sta_sinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x06ca71fd cfg80211_chandef_create +EXPORT_SYMBOL net/wireless/cfg80211 0x0788697b cfg80211_chandef_dfs_required +EXPORT_SYMBOL net/wireless/cfg80211 0x0a52a99b cfg80211_cqm_rssi_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x0aeab54e wiphy_new_nm +EXPORT_SYMBOL net/wireless/cfg80211 0x0af3411b cfg80211_get_drvinfo +EXPORT_SYMBOL net/wireless/cfg80211 0x0cc95bc2 ieee80211_s1g_channel_width +EXPORT_SYMBOL net/wireless/cfg80211 0x0d1d6cba regulatory_set_wiphy_regd_sync +EXPORT_SYMBOL net/wireless/cfg80211 0x0efce9c0 cfg80211_get_iftype_ext_capa +EXPORT_SYMBOL net/wireless/cfg80211 0x117aca91 cfg80211_merge_profile +EXPORT_SYMBOL net/wireless/cfg80211 0x1200e216 wiphy_rfkill_set_hw_state_reason +EXPORT_SYMBOL net/wireless/cfg80211 0x13c58e52 ieee80211_get_8023_tunnel_proto +EXPORT_SYMBOL net/wireless/cfg80211 0x1490f0c0 wiphy_unregister +EXPORT_SYMBOL net/wireless/cfg80211 0x17e643d7 nl80211_send_chandef +EXPORT_SYMBOL net/wireless/cfg80211 0x1879fcbd bridge_tunnel_header +EXPORT_SYMBOL net/wireless/cfg80211 0x1b6d62c5 cfg80211_tx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x1b82a85a cfg80211_valid_disable_subchannel_bitmap +EXPORT_SYMBOL net/wireless/cfg80211 0x1c4210eb cfg80211_bss_flush +EXPORT_SYMBOL net/wireless/cfg80211 0x1ce2497f reg_query_regdb_wmm +EXPORT_SYMBOL net/wireless/cfg80211 0x1f4ed120 ieee80211_get_channel_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x205c4809 get_wiphy_regdom +EXPORT_SYMBOL net/wireless/cfg80211 0x248e3211 cfg80211_stop_iface +EXPORT_SYMBOL net/wireless/cfg80211 0x24f5a5ff cfg80211_nan_func_terminated +EXPORT_SYMBOL net/wireless/cfg80211 0x275269b3 ieee80211_ie_split_ric +EXPORT_SYMBOL net/wireless/cfg80211 0x289e3a66 cfg80211_nan_match +EXPORT_SYMBOL net/wireless/cfg80211 0x2914257e cfg80211_links_removed +EXPORT_SYMBOL net/wireless/cfg80211 0x2c2b7a04 cfg80211_background_cac_abort +EXPORT_SYMBOL net/wireless/cfg80211 0x34445e89 cfg80211_sched_scan_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0x3643b80f ieee80211_chandef_to_operating_class +EXPORT_SYMBOL net/wireless/cfg80211 0x3849c5c3 cfg80211_reg_can_beacon +EXPORT_SYMBOL net/wireless/cfg80211 0x3aca71a1 cfg80211_get_ies_channel_number +EXPORT_SYMBOL net/wireless/cfg80211 0x3ae8c017 cfg80211_port_authorized +EXPORT_SYMBOL net/wireless/cfg80211 0x3bb87a59 cfg80211_ref_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3bd1db7b cfg80211_unlink_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x3c083269 regulatory_pre_cac_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0x3c744e95 cfg80211_calculate_bitrate +EXPORT_SYMBOL net/wireless/cfg80211 0x3c86019a cfg80211_sinfo_alloc_tid_stats +EXPORT_SYMBOL net/wireless/cfg80211 0x3de3d471 cfg80211_get_bss +EXPORT_SYMBOL net/wireless/cfg80211 0x41cabfc0 cfg80211_inform_bss_data +EXPORT_SYMBOL net/wireless/cfg80211 0x429c0c31 ieee80211_bss_get_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x43afadee ieee80211_radiotap_iterator_init +EXPORT_SYMBOL net/wireless/cfg80211 0x4abed7d4 ieee80211_mandatory_rates +EXPORT_SYMBOL net/wireless/cfg80211 0x4bf495d2 cfg80211_chandef_usable +EXPORT_SYMBOL net/wireless/cfg80211 0x4f266586 cfg80211_tx_mgmt_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x53321bc7 cfg80211_ibss_joined +EXPORT_SYMBOL net/wireless/cfg80211 0x53b078e0 wiphy_register +EXPORT_SYMBOL net/wireless/cfg80211 0x550862be cfg80211_assoc_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x5584448a ieee80211_channel_to_freq_khz +EXPORT_SYMBOL net/wireless/cfg80211 0x5a980382 cfg80211_control_port_tx_status +EXPORT_SYMBOL net/wireless/cfg80211 0x5c97f1b4 cfg80211_gtk_rekey_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x5cd3a06f cfg80211_roamed +EXPORT_SYMBOL net/wireless/cfg80211 0x5ce7fc9f cfg80211_assoc_comeback +EXPORT_SYMBOL net/wireless/cfg80211 0x5dc4f9c5 cfg80211_new_sta +EXPORT_SYMBOL net/wireless/cfg80211 0x5e6c1f5e cfg80211_rx_unprot_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x63fe9a03 ieee80211_get_hdrlen_from_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x64ef78f1 cfg80211_get_station +EXPORT_SYMBOL net/wireless/cfg80211 0x681083fa __cfg80211_send_event_skb +EXPORT_SYMBOL net/wireless/cfg80211 0x68c358db cfg80211_connect_done +EXPORT_SYMBOL net/wireless/cfg80211 0x69b18f43 rfc1042_header +EXPORT_SYMBOL net/wireless/cfg80211 0x6a410ac8 regulatory_hint +EXPORT_SYMBOL net/wireless/cfg80211 0x6bedf402 ieee80211_freq_khz_to_channel +EXPORT_SYMBOL net/wireless/cfg80211 0x6d28c8a8 cfg80211_unregister_wdev +EXPORT_SYMBOL net/wireless/cfg80211 0x6df3a050 cfg80211_mgmt_tx_status_ext +EXPORT_SYMBOL net/wireless/cfg80211 0x6df522ac cfg80211_ft_event +EXPORT_SYMBOL net/wireless/cfg80211 0x79b82a71 cfg80211_find_vendor_elem +EXPORT_SYMBOL net/wireless/cfg80211 0x7acb86ed ieee80211_radiotap_iterator_next +EXPORT_SYMBOL net/wireless/cfg80211 0x7aef7a78 cfg80211_rx_unexpected_4addr_frame +EXPORT_SYMBOL net/wireless/cfg80211 0x7c3ac925 ieee80211_get_vht_max_nss +EXPORT_SYMBOL net/wireless/cfg80211 0x7dcdf45f wiphy_free +EXPORT_SYMBOL net/wireless/cfg80211 0x7eb55da4 ieee80211_get_num_supported_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x7ef39823 ieee80211_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0x80252fd7 cfg80211_tdls_oper_request +EXPORT_SYMBOL net/wireless/cfg80211 0x8310fea3 cfg80211_any_usable_channels +EXPORT_SYMBOL net/wireless/cfg80211 0x8493449e cfg80211_rx_mgmt_ext +EXPORT_SYMBOL net/wireless/cfg80211 0x85de3f6f wiphy_delayed_work_timer +EXPORT_SYMBOL net/wireless/cfg80211 0x88058a68 cfg80211_disconnected +EXPORT_SYMBOL net/wireless/cfg80211 0x8953ec53 cfg80211_external_auth_request +EXPORT_SYMBOL net/wireless/cfg80211 0x8ca2cbdc cfg80211_scan_done +EXPORT_SYMBOL net/wireless/cfg80211 0x8fa02936 cfg80211_free_nan_func +EXPORT_SYMBOL net/wireless/cfg80211 0x8ff2c4ff cfg80211_check_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0x90ac6c80 cfg80211_cqm_txe_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9246b462 cfg80211_cac_event +EXPORT_SYMBOL net/wireless/cfg80211 0x96e5c600 cfg80211_michael_mic_failure +EXPORT_SYMBOL net/wireless/cfg80211 0x98288252 cfg80211_cqm_pktloss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0x9c3f40e4 cfg80211_rx_mlme_mgmt +EXPORT_SYMBOL net/wireless/cfg80211 0x9d6cba30 cfg80211_find_elem_match +EXPORT_SYMBOL net/wireless/cfg80211 0x9e8dd665 cfg80211_remain_on_channel_expired +EXPORT_SYMBOL net/wireless/cfg80211 0x9ebac27d wiphy_rfkill_start_polling +EXPORT_SYMBOL net/wireless/cfg80211 0x9ff9d528 cfg80211_register_netdevice +EXPORT_SYMBOL net/wireless/cfg80211 0xa2534bd5 cfg80211_cqm_beacon_loss_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xa3708519 cfg80211_conn_failed +EXPORT_SYMBOL net/wireless/cfg80211 0xa9bd46eb cfg80211_ready_on_channel +EXPORT_SYMBOL net/wireless/cfg80211 0xaa94688c cfg80211_ch_switch_started_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xac8f1af3 cfg80211_update_owe_info_event +EXPORT_SYMBOL net/wireless/cfg80211 0xad822e24 cfg80211_sched_scan_results +EXPORT_SYMBOL net/wireless/cfg80211 0xad95d4ab cfg80211_report_obss_beacon_khz +EXPORT_SYMBOL net/wireless/cfg80211 0xaef0a4cc cfg80211_send_layer2_update +EXPORT_SYMBOL net/wireless/cfg80211 0xb0ac4573 ieee80211_data_to_8023_exthdr +EXPORT_SYMBOL net/wireless/cfg80211 0xb0b1a918 cfg80211_rx_assoc_resp +EXPORT_SYMBOL net/wireless/cfg80211 0xb1167d2f cfg80211_sta_opmode_change_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xb2540773 ieee80211_strip_8023_mesh_hdr +EXPORT_SYMBOL net/wireless/cfg80211 0xb4a268eb __cfg80211_alloc_reply_skb +EXPORT_SYMBOL net/wireless/cfg80211 0xb5eb918e cfg80211_check_station_change +EXPORT_SYMBOL net/wireless/cfg80211 0xb8b1926d cfg80211_sched_scan_stopped_locked +EXPORT_SYMBOL net/wireless/cfg80211 0xbabd3032 regulatory_set_wiphy_regd +EXPORT_SYMBOL net/wireless/cfg80211 0xc30b2fba cfg80211_auth_timeout +EXPORT_SYMBOL net/wireless/cfg80211 0xc3fb97ca ieee80211_get_response_rate +EXPORT_SYMBOL net/wireless/cfg80211 0xc4b4fc27 cfg80211_chandef_valid +EXPORT_SYMBOL net/wireless/cfg80211 0xc75db987 wiphy_apply_custom_regulatory +EXPORT_SYMBOL net/wireless/cfg80211 0xc8fcb389 ieee80211_amsdu_to_8023s +EXPORT_SYMBOL net/wireless/cfg80211 0xc9b357fb cfg80211_put_bss +EXPORT_SYMBOL net/wireless/cfg80211 0xcbf4c96e cfg80211_crit_proto_stopped +EXPORT_SYMBOL net/wireless/cfg80211 0xcc1a7c48 cfg80211_is_element_inherited +EXPORT_SYMBOL net/wireless/cfg80211 0xced72a99 cfg80211_inform_bss_frame_data +EXPORT_SYMBOL net/wireless/cfg80211 0xd175df63 cfg80211_classify8021d +EXPORT_SYMBOL net/wireless/cfg80211 0xd245fe63 cfg80211_reg_can_beacon_relax +EXPORT_SYMBOL net/wireless/cfg80211 0xd27881db __cfg80211_radar_event +EXPORT_SYMBOL net/wireless/cfg80211 0xd56d55f3 ieee80211_get_mesh_hdrlen +EXPORT_SYMBOL net/wireless/cfg80211 0xd6c87a05 cfg80211_defragment_element +EXPORT_SYMBOL net/wireless/cfg80211 0xd7fc414d cfg80211_bss_iter +EXPORT_SYMBOL net/wireless/cfg80211 0xd8d7773c cfg80211_probe_status +EXPORT_SYMBOL net/wireless/cfg80211 0xd97eaad4 cfg80211_chandef_compatible +EXPORT_SYMBOL net/wireless/cfg80211 0xdb2a1b9c cfg80211_ch_switch_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xdb573c30 cfg80211_rx_spurious_frame +EXPORT_SYMBOL net/wireless/cfg80211 0xdba126c1 reg_initiator_name +EXPORT_SYMBOL net/wireless/cfg80211 0xe36e63f7 freq_reg_info +EXPORT_SYMBOL net/wireless/cfg80211 0xe523c26c cfg80211_bss_color_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xe68b4d40 cfg80211_notify_new_peer_candidate +EXPORT_SYMBOL net/wireless/cfg80211 0xe6f5d159 cfg80211_pmksa_candidate_notify +EXPORT_SYMBOL net/wireless/cfg80211 0xee1f2fd7 cfg80211_iftype_allowed +EXPORT_SYMBOL net/wireless/cfg80211 0xf1b42044 cfg80211_iter_combinations +EXPORT_SYMBOL net/wireless/cfg80211 0xf36452d5 wdev_chandef +EXPORT_SYMBOL net/wireless/cfg80211 0xf3fe2676 ieee80211_is_valid_amsdu +EXPORT_SYMBOL net/wireless/cfg80211 0xf40bc2f5 ieee80211_operating_class_to_band +EXPORT_SYMBOL net/wireless/cfg80211 0xf41ba6ef cfg80211_report_wowlan_wakeup +EXPORT_SYMBOL net/wireless/cfg80211 0xf4ec450b cfg80211_rx_control_port +EXPORT_SYMBOL net/wireless/cfg80211 0xf5596d89 cfg80211_get_p2p_attr +EXPORT_SYMBOL net/wireless/cfg80211 0xfb815b22 __cfg80211_alloc_event_skb +EXPORT_SYMBOL net/wireless/lib80211 0x3242aedb lib80211_get_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x424d086f lib80211_unregister_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0x7191f4ce lib80211_crypt_delayed_deinit +EXPORT_SYMBOL net/wireless/lib80211 0x93b28a17 lib80211_register_crypto_ops +EXPORT_SYMBOL net/wireless/lib80211 0xd46654f4 lib80211_crypt_info_init +EXPORT_SYMBOL net/wireless/lib80211 0xe35067fb lib80211_crypt_info_free +EXPORT_SYMBOL sound/soundcore 0xcff792c7 sound_class +EXPORT_SYMBOL vmlinux 0x0003e8fe dmam_pool_create +EXPORT_SYMBOL vmlinux 0x00148653 vsnprintf +EXPORT_SYMBOL vmlinux 0x002c6c4f ptp_find_pin_unlocked +EXPORT_SYMBOL vmlinux 0x00304909 tcp_v4_md5_lookup +EXPORT_SYMBOL vmlinux 0x003f7e33 phy_mii_ioctl +EXPORT_SYMBOL vmlinux 0x0040912d ip_sock_set_pktinfo +EXPORT_SYMBOL vmlinux 0x0044be59 ip6_frag_init +EXPORT_SYMBOL vmlinux 0x0058a53a acpi_bus_get_status +EXPORT_SYMBOL vmlinux 0x006c2c29 skb_clone +EXPORT_SYMBOL vmlinux 0x007a5833 mipi_dsi_dcs_write_buffer +EXPORT_SYMBOL vmlinux 0x00863f5d lookup_one_len_unlocked +EXPORT_SYMBOL vmlinux 0x0086ed5f bio_copy_data +EXPORT_SYMBOL vmlinux 0x008c7c8f pcix_get_mmrbc +EXPORT_SYMBOL vmlinux 0x009d16b6 __tracepoint_mmap_lock_released +EXPORT_SYMBOL vmlinux 0x00a4b044 amd_iommu_deactivate_guest_mode +EXPORT_SYMBOL vmlinux 0x00b4e615 posix_acl_equiv_mode +EXPORT_SYMBOL vmlinux 0x00bc0c60 dup_iter +EXPORT_SYMBOL vmlinux 0x00cb431f module_layout +EXPORT_SYMBOL vmlinux 0x00d7e722 vme_lm_count +EXPORT_SYMBOL vmlinux 0x00e11654 pci_prepare_to_sleep +EXPORT_SYMBOL vmlinux 0x00e398ba netdev_upper_dev_unlink +EXPORT_SYMBOL vmlinux 0x00e7d555 block_invalidate_folio +EXPORT_SYMBOL vmlinux 0x01000e51 schedule +EXPORT_SYMBOL vmlinux 0x01156ae4 utf8_strncasecmp_folded +EXPORT_SYMBOL vmlinux 0x01216126 acpi_dev_get_first_match_dev +EXPORT_SYMBOL vmlinux 0x014527b1 mmc_retune_unpause +EXPORT_SYMBOL vmlinux 0x0147812c kblockd_mod_delayed_work_on +EXPORT_SYMBOL vmlinux 0x014e9cc0 uart_add_one_port +EXPORT_SYMBOL vmlinux 0x016f123e sg_copy_to_buffer +EXPORT_SYMBOL vmlinux 0x016f4bef udp_set_csum +EXPORT_SYMBOL vmlinux 0x017508c4 block_write_full_page +EXPORT_SYMBOL vmlinux 0x01757935 rdmacg_register_device +EXPORT_SYMBOL vmlinux 0x017bb807 sock_set_mark +EXPORT_SYMBOL vmlinux 0x017de3d5 nr_cpu_ids +EXPORT_SYMBOL vmlinux 0x0188cd88 vme_alloc_consistent +EXPORT_SYMBOL vmlinux 0x01a31a00 buffer_migrate_folio +EXPORT_SYMBOL vmlinux 0x01b08b33 blk_mq_free_tag_set +EXPORT_SYMBOL vmlinux 0x01b6865c xa_get_mark +EXPORT_SYMBOL vmlinux 0x01bf55fc paddr_vmcoreinfo_note +EXPORT_SYMBOL vmlinux 0x01c8a8e8 rdmacg_try_charge +EXPORT_SYMBOL vmlinux 0x01d6a1c3 vmalloc_to_page +EXPORT_SYMBOL vmlinux 0x01e61d6c __x86_indirect_call_thunk_r12 +EXPORT_SYMBOL vmlinux 0x01e75e7a ip_sock_set_freebind +EXPORT_SYMBOL vmlinux 0x01ff8077 is_nd_pfn +EXPORT_SYMBOL vmlinux 0x0209f3a7 secure_ipv6_port_ephemeral +EXPORT_SYMBOL vmlinux 0x020dbf27 bitmap_alloc +EXPORT_SYMBOL vmlinux 0x0219133d bd_abort_claiming +EXPORT_SYMBOL vmlinux 0x0228925f iowrite64_hi_lo +EXPORT_SYMBOL vmlinux 0x0237b57a arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x023d1b90 wrmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x0248efd3 kstrtobool_from_user +EXPORT_SYMBOL vmlinux 0x024a5697 d_prune_aliases +EXPORT_SYMBOL vmlinux 0x0259d8b5 path_is_mountpoint +EXPORT_SYMBOL vmlinux 0x02636da9 dm_register_target +EXPORT_SYMBOL vmlinux 0x0274dc2b netif_get_num_default_rss_queues +EXPORT_SYMBOL vmlinux 0x0288ce03 __mdiobus_register +EXPORT_SYMBOL vmlinux 0x0296695f refcount_warn_saturate +EXPORT_SYMBOL vmlinux 0x029dd1c2 rproc_vq_interrupt +EXPORT_SYMBOL vmlinux 0x02ba1187 vm_zone_stat +EXPORT_SYMBOL vmlinux 0x02c656b6 acpi_enable_all_runtime_gpes +EXPORT_SYMBOL vmlinux 0x02cce8d1 phy_stop +EXPORT_SYMBOL vmlinux 0x02d5221b rtnl_notify +EXPORT_SYMBOL vmlinux 0x02de1259 jbd2_journal_flush +EXPORT_SYMBOL vmlinux 0x02e0db9f __dev_remove_pack +EXPORT_SYMBOL vmlinux 0x02e3db8d sdev_enable_disk_events +EXPORT_SYMBOL vmlinux 0x02ea3095 reuseport_has_conns_set +EXPORT_SYMBOL vmlinux 0x02ec15ad param_get_int +EXPORT_SYMBOL vmlinux 0x02ec6751 dquot_initialize +EXPORT_SYMBOL vmlinux 0x03147df9 skb_ext_add +EXPORT_SYMBOL vmlinux 0x032a1557 ww_mutex_unlock +EXPORT_SYMBOL vmlinux 0x032ec647 truncate_inode_pages +EXPORT_SYMBOL vmlinux 0x0334a42f rproc_elf_find_loaded_rsc_table +EXPORT_SYMBOL vmlinux 0x0334da4e scsi_command_size_tbl +EXPORT_SYMBOL vmlinux 0x03387b27 phy_get_pause +EXPORT_SYMBOL vmlinux 0x03455608 dcb_ieee_getapp_dscp_prio_mask_map +EXPORT_SYMBOL vmlinux 0x034beb7c cdrom_open +EXPORT_SYMBOL vmlinux 0x03561c68 retire_super +EXPORT_SYMBOL vmlinux 0x035d25ab memcg_kmem_online_key +EXPORT_SYMBOL vmlinux 0x0360d67f make_flow_keys_digest +EXPORT_SYMBOL vmlinux 0x0362f9a8 __x86_indirect_thunk_r12 +EXPORT_SYMBOL vmlinux 0x0366307a console_suspend_enabled +EXPORT_SYMBOL vmlinux 0x036cce78 tty_termios_input_baud_rate +EXPORT_SYMBOL vmlinux 0x037a0cba kfree +EXPORT_SYMBOL vmlinux 0x037d61bd clkdev_add +EXPORT_SYMBOL vmlinux 0x037ff628 xsk_clear_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x03815f35 ledtrig_disk_activity +EXPORT_SYMBOL vmlinux 0x0397edd5 fb_edid_to_monspecs +EXPORT_SYMBOL vmlinux 0x03a01fa5 tcf_idr_create_from_flags +EXPORT_SYMBOL vmlinux 0x03b814ca bpf_dispatcher_xdp_func +EXPORT_SYMBOL vmlinux 0x03bc48c1 sock_no_linger +EXPORT_SYMBOL vmlinux 0x03d68131 ip_do_fragment +EXPORT_SYMBOL vmlinux 0x03e9ab76 jbd2_journal_lock_updates +EXPORT_SYMBOL vmlinux 0x03ee009e ww_mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x03f07179 __bio_advance +EXPORT_SYMBOL vmlinux 0x03f9d7ce alloc_buffer_head +EXPORT_SYMBOL vmlinux 0x03fd2571 vm_unmap_ram +EXPORT_SYMBOL vmlinux 0x041c10ff __sk_queue_drop_skb +EXPORT_SYMBOL vmlinux 0x041d6f0b xsk_clear_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x042fac6f iommu_dma_get_resv_regions +EXPORT_SYMBOL vmlinux 0x04328dc3 try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x044154c6 tc_skb_ext_tc +EXPORT_SYMBOL vmlinux 0x04446401 thread_group_exited +EXPORT_SYMBOL vmlinux 0x0445ca84 kobject_add +EXPORT_SYMBOL vmlinux 0x04482cdb __refrigerator +EXPORT_SYMBOL vmlinux 0x044f0ad9 get_random_u16 +EXPORT_SYMBOL vmlinux 0x04507e0b mipi_dsi_dcs_set_tear_scanline +EXPORT_SYMBOL vmlinux 0x045a0136 skb_copy_datagram_iter +EXPORT_SYMBOL vmlinux 0x0461f95d xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x0474edef kstrtou16_from_user +EXPORT_SYMBOL vmlinux 0x04789d34 __nla_put_64bit +EXPORT_SYMBOL vmlinux 0x0479aac1 seq_list_next_rcu +EXPORT_SYMBOL vmlinux 0x0479b816 mdiobus_read_nested +EXPORT_SYMBOL vmlinux 0x0484c6c4 acpi_enter_sleep_state_prep +EXPORT_SYMBOL vmlinux 0x04863e28 hdmi_audio_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x04a7ff97 dev_addr_del +EXPORT_SYMBOL vmlinux 0x04b74936 setattr_should_drop_suidgid +EXPORT_SYMBOL vmlinux 0x04bccf2e pci_setup_cardbus +EXPORT_SYMBOL vmlinux 0x04c62fd7 __memset +EXPORT_SYMBOL vmlinux 0x04cf6d97 unregister_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x04d24402 iwe_stream_add_point +EXPORT_SYMBOL vmlinux 0x04d8c750 release_perfctr_nmi +EXPORT_SYMBOL vmlinux 0x04ea5d10 ksize +EXPORT_SYMBOL vmlinux 0x04fc220a tty_port_free_xmit_buf +EXPORT_SYMBOL vmlinux 0x05009866 pps_register_source +EXPORT_SYMBOL vmlinux 0x050877b9 dmi_first_match +EXPORT_SYMBOL vmlinux 0x0519f110 register_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x05240ee7 percpu_counter_batch +EXPORT_SYMBOL vmlinux 0x05331974 agp_free_memory +EXPORT_SYMBOL vmlinux 0x053671d4 amd_iommu_snp_en +EXPORT_SYMBOL vmlinux 0x054496b4 schedule_timeout_interruptible +EXPORT_SYMBOL vmlinux 0x055049a2 simple_dir_inode_operations +EXPORT_SYMBOL vmlinux 0x0558a5c7 pci_write_config_dword +EXPORT_SYMBOL vmlinux 0x055e77e8 jiffies_64 +EXPORT_SYMBOL vmlinux 0x0562dc30 __sg_page_iter_start +EXPORT_SYMBOL vmlinux 0x056bcf7b dm_read_arg +EXPORT_SYMBOL vmlinux 0x05710760 mmc_can_erase +EXPORT_SYMBOL vmlinux 0x0575da12 zap_page_range_single +EXPORT_SYMBOL vmlinux 0x058803b4 get_ipc_ns_exported +EXPORT_SYMBOL vmlinux 0x05b7dc0a vme_irq_free +EXPORT_SYMBOL vmlinux 0x05c02e74 vmf_insert_mixed +EXPORT_SYMBOL vmlinux 0x05d36d2f seq_vprintf +EXPORT_SYMBOL vmlinux 0x05e1119f xfrm_policy_flush +EXPORT_SYMBOL vmlinux 0x05e3aa4a pci_get_device +EXPORT_SYMBOL vmlinux 0x05ede955 platform_get_ethdev_address +EXPORT_SYMBOL vmlinux 0x06052f8d __memmove +EXPORT_SYMBOL vmlinux 0x060ba97c gen_pool_free_owner +EXPORT_SYMBOL vmlinux 0x0612d446 uart_get_baud_rate +EXPORT_SYMBOL vmlinux 0x061651be strcat +EXPORT_SYMBOL vmlinux 0x062a55c8 flow_rule_match_eth_addrs +EXPORT_SYMBOL vmlinux 0x0634100a bitmap_parselist_user +EXPORT_SYMBOL vmlinux 0x06362434 devm_request_any_context_irq +EXPORT_SYMBOL vmlinux 0x06463b7e fs_param_is_blockdev +EXPORT_SYMBOL vmlinux 0x0666488e folio_mark_dirty +EXPORT_SYMBOL vmlinux 0x0668b595 _kstrtoul +EXPORT_SYMBOL vmlinux 0x066c646b get_cached_acl_rcu +EXPORT_SYMBOL vmlinux 0x06725faf _copy_from_iter +EXPORT_SYMBOL vmlinux 0x06a86bc1 iowrite16 +EXPORT_SYMBOL vmlinux 0x06adad7b dma_unmap_resource +EXPORT_SYMBOL vmlinux 0x06bd88b5 ucs2_strnlen +EXPORT_SYMBOL vmlinux 0x06d11488 __bitmap_equal +EXPORT_SYMBOL vmlinux 0x06dd2315 proc_remove +EXPORT_SYMBOL vmlinux 0x06ddd9eb kernel_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x06e03b81 ipv6_sock_mc_drop +EXPORT_SYMBOL vmlinux 0x06fb9c35 netdev_bonding_info_change +EXPORT_SYMBOL vmlinux 0x06fda13d netdev_lower_get_next_private_rcu +EXPORT_SYMBOL vmlinux 0x07098248 xz_dec_microlzma_alloc +EXPORT_SYMBOL vmlinux 0x070c84a9 scsi_dma_map +EXPORT_SYMBOL vmlinux 0x0725663c ptp_clock_index +EXPORT_SYMBOL vmlinux 0x072a9568 dev_mc_del +EXPORT_SYMBOL vmlinux 0x072f901c vme_master_rmw +EXPORT_SYMBOL vmlinux 0x0745a981 xa_erase +EXPORT_SYMBOL vmlinux 0x074fe63e ppp_unregister_channel +EXPORT_SYMBOL vmlinux 0x075e6546 mipi_dsi_generic_read +EXPORT_SYMBOL vmlinux 0x07645306 tty_hung_up_p +EXPORT_SYMBOL vmlinux 0x076d8696 xfrm4_rcv_encap +EXPORT_SYMBOL vmlinux 0x078f4db9 devm_gen_pool_create +EXPORT_SYMBOL vmlinux 0x079af438 mipi_dsi_generic_write +EXPORT_SYMBOL vmlinux 0x079fd048 crypto_sha3_update +EXPORT_SYMBOL vmlinux 0x07a79595 __traceiter_mmap_lock_start_locking +EXPORT_SYMBOL vmlinux 0x07a890c8 fb_alloc_cmap +EXPORT_SYMBOL vmlinux 0x07b9b4af phy_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0x07cc4a5d printk_timed_ratelimit +EXPORT_SYMBOL vmlinux 0x07ceeac9 panic_notifier_list +EXPORT_SYMBOL vmlinux 0x07d37683 __sk_mem_reclaim +EXPORT_SYMBOL vmlinux 0x07f57478 pci_unmap_iospace +EXPORT_SYMBOL vmlinux 0x0800473f __cond_resched +EXPORT_SYMBOL vmlinux 0x0805f2c8 ecryptfs_get_auth_tok_key +EXPORT_SYMBOL vmlinux 0x08162c74 free_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0x082c3213 pci_root_buses +EXPORT_SYMBOL vmlinux 0x083eb21c rfkill_unregister +EXPORT_SYMBOL vmlinux 0x0870efe3 jent_testing_exit +EXPORT_SYMBOL vmlinux 0x087223a8 skb_expand_head +EXPORT_SYMBOL vmlinux 0x089a9723 ppp_output_wakeup +EXPORT_SYMBOL vmlinux 0x08a990fc remap_vmalloc_range +EXPORT_SYMBOL vmlinux 0x08b0da39 bio_integrity_trim +EXPORT_SYMBOL vmlinux 0x08be84e5 iov_iter_npages +EXPORT_SYMBOL vmlinux 0x08d55638 dquot_commit_info +EXPORT_SYMBOL vmlinux 0x090fb511 pci_back_from_sleep +EXPORT_SYMBOL vmlinux 0x09133fe6 of_find_mipi_dsi_host_by_node +EXPORT_SYMBOL vmlinux 0x092e26bf acpi_remove_address_space_handler +EXPORT_SYMBOL vmlinux 0x093712e5 acpi_purge_cached_objects +EXPORT_SYMBOL vmlinux 0x095b5775 pci_ep_cfs_remove_epf_group +EXPORT_SYMBOL vmlinux 0x096344c2 skb_flow_dissect_ct +EXPORT_SYMBOL vmlinux 0x0966e107 __x86_indirect_call_thunk_r9 +EXPORT_SYMBOL vmlinux 0x096cd61c config_item_get +EXPORT_SYMBOL vmlinux 0x09769037 dmt_modes +EXPORT_SYMBOL vmlinux 0x0976cdcf ipv6_find_hdr +EXPORT_SYMBOL vmlinux 0x098b71c6 fb_dealloc_cmap +EXPORT_SYMBOL vmlinux 0x0990d6e2 init_net +EXPORT_SYMBOL vmlinux 0x0991b5e1 mipi_dsi_driver_register_full +EXPORT_SYMBOL vmlinux 0x09b7571b ata_print_version +EXPORT_SYMBOL vmlinux 0x09d44df9 in_lock_functions +EXPORT_SYMBOL vmlinux 0x09da0ba4 xa_set_mark +EXPORT_SYMBOL vmlinux 0x09eb1414 agp_generic_remove_memory +EXPORT_SYMBOL vmlinux 0x09ecb781 file_fdatawait_range +EXPORT_SYMBOL vmlinux 0x09f315cc set_pages_uc +EXPORT_SYMBOL vmlinux 0x0a0127c3 tcf_action_check_ctrlact +EXPORT_SYMBOL vmlinux 0x0a012f73 mb_cache_entry_touch +EXPORT_SYMBOL vmlinux 0x0a0ebc08 __xa_cmpxchg +EXPORT_SYMBOL vmlinux 0x0a125b8a may_umount +EXPORT_SYMBOL vmlinux 0x0a13a828 skb_get_hash_perturb +EXPORT_SYMBOL vmlinux 0x0a18422d flow_rule_match_enc_control +EXPORT_SYMBOL vmlinux 0x0a1e8769 utf8_casefold_hash +EXPORT_SYMBOL vmlinux 0x0a34f5d0 phy_aneg_done +EXPORT_SYMBOL vmlinux 0x0a34fa7e netpoll_poll_disable +EXPORT_SYMBOL vmlinux 0x0a36e8bd nd_btt_version +EXPORT_SYMBOL vmlinux 0x0a3ef768 pci_enable_device +EXPORT_SYMBOL vmlinux 0x0a4e4f07 mipi_dsi_driver_unregister +EXPORT_SYMBOL vmlinux 0x0a623a55 devfreq_monitor_suspend +EXPORT_SYMBOL vmlinux 0x0a770832 register_memory_notifier +EXPORT_SYMBOL vmlinux 0x0a84b15d zstd_init_cctx +EXPORT_SYMBOL vmlinux 0x0a89c7dd devm_devfreq_add_governor +EXPORT_SYMBOL vmlinux 0x0a8d220f security_inet_conn_established +EXPORT_SYMBOL vmlinux 0x0a9ba04f srso_untrain_ret +EXPORT_SYMBOL vmlinux 0x0aa309cf synchronize_hardirq +EXPORT_SYMBOL vmlinux 0x0aaccc92 pci_remap_iospace +EXPORT_SYMBOL vmlinux 0x0aafd7a5 param_ops_string +EXPORT_SYMBOL vmlinux 0x0acf7679 dma_issue_pending_all +EXPORT_SYMBOL vmlinux 0x0ad56028 dquot_get_next_id +EXPORT_SYMBOL vmlinux 0x0ae9dce8 sk_wait_data +EXPORT_SYMBOL vmlinux 0x0aedd9b0 _dev_alert +EXPORT_SYMBOL vmlinux 0x0afb186a dst_release +EXPORT_SYMBOL vmlinux 0x0b040c93 pci_bus_write_config_word +EXPORT_SYMBOL vmlinux 0x0b19b445 ioread8 +EXPORT_SYMBOL vmlinux 0x0b1beb31 vmalloc_32_user +EXPORT_SYMBOL vmlinux 0x0b202e53 copy_page_from_iter_atomic +EXPORT_SYMBOL vmlinux 0x0b26b8c8 acpi_run_osc +EXPORT_SYMBOL vmlinux 0x0b362c78 devfreq_monitor_resume +EXPORT_SYMBOL vmlinux 0x0b520062 dcb_setrewr +EXPORT_SYMBOL vmlinux 0x0b56460c read_cache_page +EXPORT_SYMBOL vmlinux 0x0b637410 cr4_update_irqsoff +EXPORT_SYMBOL vmlinux 0x0b695557 __neigh_event_send +EXPORT_SYMBOL vmlinux 0x0b742fd7 simple_strtol +EXPORT_SYMBOL vmlinux 0x0b88bc3c __hw_addr_sync_dev +EXPORT_SYMBOL vmlinux 0x0b96acc8 skb_copy +EXPORT_SYMBOL vmlinux 0x0b9caa48 nf_log_unregister +EXPORT_SYMBOL vmlinux 0x0ba0b938 vm_brk +EXPORT_SYMBOL vmlinux 0x0ba48e27 pcim_iomap_regions_request_all +EXPORT_SYMBOL vmlinux 0x0bab1a39 nd_dax_probe +EXPORT_SYMBOL vmlinux 0x0bb5dd4a dma_fence_chain_find_seqno +EXPORT_SYMBOL vmlinux 0x0bc477a2 irq_set_irq_type +EXPORT_SYMBOL vmlinux 0x0bd394d8 tty_termios_baud_rate +EXPORT_SYMBOL vmlinux 0x0be45f3c __scsi_print_sense +EXPORT_SYMBOL vmlinux 0x0be7639e tcp_read_done +EXPORT_SYMBOL vmlinux 0x0bebfc03 tcf_idr_search +EXPORT_SYMBOL vmlinux 0x0bfc1d1a check_zeroed_user +EXPORT_SYMBOL vmlinux 0x0c145bfb f_setown +EXPORT_SYMBOL vmlinux 0x0c25ec48 secure_tcpv6_seq +EXPORT_SYMBOL vmlinux 0x0c276e13 tcf_em_register +EXPORT_SYMBOL vmlinux 0x0c2cdef4 ipv6_sock_mc_join +EXPORT_SYMBOL vmlinux 0x0c3690fc _raw_spin_lock_bh +EXPORT_SYMBOL vmlinux 0x0c3e9486 sk_common_release +EXPORT_SYMBOL vmlinux 0x0c463982 blk_queue_chunk_sectors +EXPORT_SYMBOL vmlinux 0x0c50d5dd tcf_chain_get_by_act +EXPORT_SYMBOL vmlinux 0x0c532b56 pnp_register_card_driver +EXPORT_SYMBOL vmlinux 0x0c575719 __cond_resched_rwlock_write +EXPORT_SYMBOL vmlinux 0x0c6bdc3f vme_master_read +EXPORT_SYMBOL vmlinux 0x0c6d66ff dev_set_mac_address +EXPORT_SYMBOL vmlinux 0x0ca162c2 agp_alloc_page_array +EXPORT_SYMBOL vmlinux 0x0cb2843d get_tree_single +EXPORT_SYMBOL vmlinux 0x0cc4b4b6 crc_ccitt_false +EXPORT_SYMBOL vmlinux 0x0ccc4ace dcbnl_ieee_notify +EXPORT_SYMBOL vmlinux 0x0cd5835b ipv6_flowlabel_exclusive +EXPORT_SYMBOL vmlinux 0x0cd7cc63 skb_free_datagram +EXPORT_SYMBOL vmlinux 0x0cdba186 unregister_mii_timestamper +EXPORT_SYMBOL vmlinux 0x0cdc65b0 tcp_connect +EXPORT_SYMBOL vmlinux 0x0cdce87c rfkill_set_hw_state_reason +EXPORT_SYMBOL vmlinux 0x0cdd6c69 config_item_put +EXPORT_SYMBOL vmlinux 0x0cee6b91 inet_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x0cf4a8b9 fc_mount +EXPORT_SYMBOL vmlinux 0x0d03d8ce mmc_detect_change +EXPORT_SYMBOL vmlinux 0x0d049235 d_obtain_alias +EXPORT_SYMBOL vmlinux 0x0d07f543 get_anon_bdev +EXPORT_SYMBOL vmlinux 0x0d31b929 input_unregister_handle +EXPORT_SYMBOL vmlinux 0x0d333b64 zstd_end_stream +EXPORT_SYMBOL vmlinux 0x0d38b833 mark_page_accessed +EXPORT_SYMBOL vmlinux 0x0d542439 __ipv6_addr_type +EXPORT_SYMBOL vmlinux 0x0d72f1c6 phy_driver_register +EXPORT_SYMBOL vmlinux 0x0d837b00 scsi_is_sdev_device +EXPORT_SYMBOL vmlinux 0x0da37acd dma_fence_array_first +EXPORT_SYMBOL vmlinux 0x0da716d5 poll_initwait +EXPORT_SYMBOL vmlinux 0x0daa98e8 ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x0db8f8e6 bio_endio +EXPORT_SYMBOL vmlinux 0x0deb72fc __traceiter_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x0decc61f fbcon_update_vcs +EXPORT_SYMBOL vmlinux 0x0df62980 ppp_unregister_compressor +EXPORT_SYMBOL vmlinux 0x0e0550bc dev_remove_offload +EXPORT_SYMBOL vmlinux 0x0e17678a siphash_4u64 +EXPORT_SYMBOL vmlinux 0x0e199525 xp_free +EXPORT_SYMBOL vmlinux 0x0e23b37f alloc_cpumask_var_node +EXPORT_SYMBOL vmlinux 0x0e29f684 blk_mq_alloc_disk_for_queue +EXPORT_SYMBOL vmlinux 0x0e2e240e napi_gro_receive +EXPORT_SYMBOL vmlinux 0x0e3277cd vfs_parse_fs_param +EXPORT_SYMBOL vmlinux 0x0e3f8873 phy_start_cable_test +EXPORT_SYMBOL vmlinux 0x0e4262c6 __siphash_unaligned +EXPORT_SYMBOL vmlinux 0x0e592f39 uart_get_divisor +EXPORT_SYMBOL vmlinux 0x0e6387c0 i2c_find_device_by_fwnode +EXPORT_SYMBOL vmlinux 0x0e65ea94 phy_find_first +EXPORT_SYMBOL vmlinux 0x0e82aae4 tc_setup_offload_action +EXPORT_SYMBOL vmlinux 0x0e8dbe6e uart_register_driver +EXPORT_SYMBOL vmlinux 0x0e8ef995 kernel_write +EXPORT_SYMBOL vmlinux 0x0e957ab6 agp_bind_memory +EXPORT_SYMBOL vmlinux 0x0ea3c74e tasklet_kill +EXPORT_SYMBOL vmlinux 0x0ea593f6 hdmi_drm_infoframe_init +EXPORT_SYMBOL vmlinux 0x0ead675d clocksource_change_rating +EXPORT_SYMBOL vmlinux 0x0eb418a2 backlight_force_update +EXPORT_SYMBOL vmlinux 0x0eb6eb87 add_taint +EXPORT_SYMBOL vmlinux 0x0ec5babe vme_dma_free +EXPORT_SYMBOL vmlinux 0x0ee15632 inode_nohighmem +EXPORT_SYMBOL vmlinux 0x0eeae72d finalize_exec +EXPORT_SYMBOL vmlinux 0x0f025c08 set_blocksize +EXPORT_SYMBOL vmlinux 0x0f09cc34 schedule_timeout_killable +EXPORT_SYMBOL vmlinux 0x0f0a6959 noop_fsync +EXPORT_SYMBOL vmlinux 0x0f1ad8e2 seq_list_start_rcu +EXPORT_SYMBOL vmlinux 0x0f1e1a1e skb_checksum +EXPORT_SYMBOL vmlinux 0x0f1edf4f netdev_err +EXPORT_SYMBOL vmlinux 0x0f37ca89 lockref_put_not_zero +EXPORT_SYMBOL vmlinux 0x0f630261 gen_replace_estimator +EXPORT_SYMBOL vmlinux 0x0f8016a5 skb_push +EXPORT_SYMBOL vmlinux 0x0f811fc7 jent_raw_hires_entropy_store +EXPORT_SYMBOL vmlinux 0x0f827abc ipv4_specific +EXPORT_SYMBOL vmlinux 0x0f852f4e netpoll_poll_enable +EXPORT_SYMBOL vmlinux 0x0f86f560 kthread_delayed_work_timer_fn +EXPORT_SYMBOL vmlinux 0x0f92195e param_ops_ushort +EXPORT_SYMBOL vmlinux 0x0f9fe992 sockopt_ns_capable +EXPORT_SYMBOL vmlinux 0x0fa4dc84 pci_disable_link_state_locked +EXPORT_SYMBOL vmlinux 0x0fab1ab0 hdmi_spd_infoframe_pack +EXPORT_SYMBOL vmlinux 0x0fb2f8a4 mktime64 +EXPORT_SYMBOL vmlinux 0x0fd7273c get_tree_nodev +EXPORT_SYMBOL vmlinux 0x0fd902db mb_cache_entry_create +EXPORT_SYMBOL vmlinux 0x0fe182f8 xfrm_register_km +EXPORT_SYMBOL vmlinux 0x0ff244fa kmem_cache_destroy +EXPORT_SYMBOL vmlinux 0x0fff5afc time64_to_tm +EXPORT_SYMBOL vmlinux 0x10017aa5 kernel_cpustat +EXPORT_SYMBOL vmlinux 0x100668d7 __dquot_alloc_space +EXPORT_SYMBOL vmlinux 0x1008fc3a bpf_empty_prog_array +EXPORT_SYMBOL vmlinux 0x100bddf8 proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0x100d791d scsi_mode_sense +EXPORT_SYMBOL vmlinux 0x1015e50d mnt_set_expiry +EXPORT_SYMBOL vmlinux 0x101d7ff5 ns_capable_noaudit +EXPORT_SYMBOL vmlinux 0x102fb5e0 pci_enable_msi +EXPORT_SYMBOL vmlinux 0x1035c7c2 __release_region +EXPORT_SYMBOL vmlinux 0x10384e25 blk_post_runtime_suspend +EXPORT_SYMBOL vmlinux 0x1046099b xfrm_input +EXPORT_SYMBOL vmlinux 0x1057a279 bsearch +EXPORT_SYMBOL vmlinux 0x105880ff fuse_mount_destroy +EXPORT_SYMBOL vmlinux 0x1068004b gf128mul_bbe +EXPORT_SYMBOL vmlinux 0x107be0b0 percpu_counter_sync +EXPORT_SYMBOL vmlinux 0x107dd046 __x86_indirect_call_thunk_r8 +EXPORT_SYMBOL vmlinux 0x107e5878 zlib_inflateEnd +EXPORT_SYMBOL vmlinux 0x10abd8e1 param_get_hexint +EXPORT_SYMBOL vmlinux 0x10cfd1e4 input_close_device +EXPORT_SYMBOL vmlinux 0x10d9f885 scsi_sense_desc_find +EXPORT_SYMBOL vmlinux 0x10e6f74a free_contig_range +EXPORT_SYMBOL vmlinux 0x10e70fa1 tc_setup_cb_reoffload +EXPORT_SYMBOL vmlinux 0x10ec2d13 tcf_chain_put_by_act +EXPORT_SYMBOL vmlinux 0x10f83c50 param_get_ullong +EXPORT_SYMBOL vmlinux 0x10fd03ac blk_queue_logical_block_size +EXPORT_SYMBOL vmlinux 0x1101ec6b __tracepoint_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x11063770 write_cache_pages +EXPORT_SYMBOL vmlinux 0x11089ac7 _ctype +EXPORT_SYMBOL vmlinux 0x111a28fb __hw_addr_ref_sync_dev +EXPORT_SYMBOL vmlinux 0x111ff0a4 simple_transaction_set +EXPORT_SYMBOL vmlinux 0x11265fa2 security_binder_transfer_file +EXPORT_SYMBOL vmlinux 0x112898ce xattr_supports_user_prefix +EXPORT_SYMBOL vmlinux 0x112956c8 __dev_set_mtu +EXPORT_SYMBOL vmlinux 0x112ea092 vme_register_error_handler +EXPORT_SYMBOL vmlinux 0x115cc221 pcie_relaxed_ordering_enabled +EXPORT_SYMBOL vmlinux 0x11636dc0 serio_unregister_child_port +EXPORT_SYMBOL vmlinux 0x117039b2 phy_get_eee_err +EXPORT_SYMBOL vmlinux 0x117093be qdisc_class_hash_init +EXPORT_SYMBOL vmlinux 0x118028c8 tcp_req_err +EXPORT_SYMBOL vmlinux 0x11894281 d_delete +EXPORT_SYMBOL vmlinux 0x1190ca05 sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x119f9c63 __mmap_lock_do_trace_released +EXPORT_SYMBOL vmlinux 0x11b29828 xsk_get_pool_from_qid +EXPORT_SYMBOL vmlinux 0x11c32412 i2c_smbus_read_i2c_block_data +EXPORT_SYMBOL vmlinux 0x11c96b9b devfreq_monitor_start +EXPORT_SYMBOL vmlinux 0x11de1d57 pci_save_state +EXPORT_SYMBOL vmlinux 0x11e30762 chacha_block_generic +EXPORT_SYMBOL vmlinux 0x120b336a __rb_insert_augmented +EXPORT_SYMBOL vmlinux 0x120b8ad0 jbd2__journal_start +EXPORT_SYMBOL vmlinux 0x122c3a7e _printk +EXPORT_SYMBOL vmlinux 0x122ece3b padata_free_shell +EXPORT_SYMBOL vmlinux 0x12355d70 xfrm4_protocol_register +EXPORT_SYMBOL vmlinux 0x124b94e8 ihold +EXPORT_SYMBOL vmlinux 0x124bad4d kstrtobool +EXPORT_SYMBOL vmlinux 0x125203b8 input_set_keycode +EXPORT_SYMBOL vmlinux 0x126ce7d9 hdmi_infoframe_log +EXPORT_SYMBOL vmlinux 0x127d83ea security_locked_down +EXPORT_SYMBOL vmlinux 0x1287a883 kill_pgrp +EXPORT_SYMBOL vmlinux 0x128a5159 has_capability_noaudit +EXPORT_SYMBOL vmlinux 0x128a8948 mmc_detect_card_removed +EXPORT_SYMBOL vmlinux 0x1290fcdc fb_io_read +EXPORT_SYMBOL vmlinux 0x12928f41 input_open_device +EXPORT_SYMBOL vmlinux 0x129f8148 mpage_read_folio +EXPORT_SYMBOL vmlinux 0x12ab269e proc_create_mount_point +EXPORT_SYMBOL vmlinux 0x12b7fae7 inet_sk_set_state +EXPORT_SYMBOL vmlinux 0x12c0bbde misc_deregister +EXPORT_SYMBOL vmlinux 0x12cabc89 siphash_2u64 +EXPORT_SYMBOL vmlinux 0x12cf37b8 pci_write_vpd_any +EXPORT_SYMBOL vmlinux 0x12e0421b component_match_add_typed +EXPORT_SYMBOL vmlinux 0x12ed71da page_cache_next_miss +EXPORT_SYMBOL vmlinux 0x12f4b19d pci_ep_cfs_remove_epc_group +EXPORT_SYMBOL vmlinux 0x12f6f69c fb_videomode_to_var +EXPORT_SYMBOL vmlinux 0x13065f83 sock_create_lite +EXPORT_SYMBOL vmlinux 0x130afd75 acpi_get_sleep_type_data +EXPORT_SYMBOL vmlinux 0x130bf4b1 __ip_select_ident +EXPORT_SYMBOL vmlinux 0x13110126 request_resource +EXPORT_SYMBOL vmlinux 0x131a6146 xa_clear_mark +EXPORT_SYMBOL vmlinux 0x131fc2d2 sock_enable_timestamps +EXPORT_SYMBOL vmlinux 0x132d7b87 agp_unbind_memory +EXPORT_SYMBOL vmlinux 0x13369795 sock_diag_put_filterinfo +EXPORT_SYMBOL vmlinux 0x13437e74 md_bitmap_unplug +EXPORT_SYMBOL vmlinux 0x1344d7e6 acpi_enable_gpe +EXPORT_SYMBOL vmlinux 0x1389619c __max_die_per_package +EXPORT_SYMBOL vmlinux 0x1389fe0f textsearch_register +EXPORT_SYMBOL vmlinux 0x139f2189 __kfifo_alloc +EXPORT_SYMBOL vmlinux 0x13a868d7 finish_swait +EXPORT_SYMBOL vmlinux 0x13a9be8e fb_prepare_logo +EXPORT_SYMBOL vmlinux 0x13bb4baf netdev_get_by_index +EXPORT_SYMBOL vmlinux 0x13c49cc2 _copy_from_user +EXPORT_SYMBOL vmlinux 0x13ce748d xfrm_state_lookup +EXPORT_SYMBOL vmlinux 0x13d0adf7 __kfifo_out +EXPORT_SYMBOL vmlinux 0x13ef7b17 flow_rule_match_pppoe +EXPORT_SYMBOL vmlinux 0x13f42152 system_entering_hibernation +EXPORT_SYMBOL vmlinux 0x13fdd7d4 __netif_schedule +EXPORT_SYMBOL vmlinux 0x141271bf acpi_dev_found +EXPORT_SYMBOL vmlinux 0x14351040 address_space_init_once +EXPORT_SYMBOL vmlinux 0x14547beb skb_splice_from_iter +EXPORT_SYMBOL vmlinux 0x14605535 dma_fence_context_alloc +EXPORT_SYMBOL vmlinux 0x146289b7 crc16_table +EXPORT_SYMBOL vmlinux 0x14648499 iov_iter_zero +EXPORT_SYMBOL vmlinux 0x14751808 folio_migrate_copy +EXPORT_SYMBOL vmlinux 0x148a139d alloc_file_pseudo +EXPORT_SYMBOL vmlinux 0x14a18d70 skb_prepare_seq_read +EXPORT_SYMBOL vmlinux 0x14a64a87 acpi_install_address_space_handler_no_reg +EXPORT_SYMBOL vmlinux 0x14c67e3e tcp_tx_delay_enabled +EXPORT_SYMBOL vmlinux 0x14d7477f console_list_unlock +EXPORT_SYMBOL vmlinux 0x14f10648 rproc_elf_load_rsc_table +EXPORT_SYMBOL vmlinux 0x14f6ad1f tty_chars_in_buffer +EXPORT_SYMBOL vmlinux 0x1500a6cd param_array_ops +EXPORT_SYMBOL vmlinux 0x1506ddc2 blk_mq_start_hw_queues +EXPORT_SYMBOL vmlinux 0x151f4898 schedule_timeout_uninterruptible +EXPORT_SYMBOL vmlinux 0x1526b301 unix_tot_inflight +EXPORT_SYMBOL vmlinux 0x152d5898 tag_pages_for_writeback +EXPORT_SYMBOL vmlinux 0x15351964 pci_select_bars +EXPORT_SYMBOL vmlinux 0x15360f38 __skb_ext_del +EXPORT_SYMBOL vmlinux 0x1548a81f ipv6_select_ident +EXPORT_SYMBOL vmlinux 0x1548d970 __kfifo_dma_out_prepare_r +EXPORT_SYMBOL vmlinux 0x15497c50 serio_bus +EXPORT_SYMBOL vmlinux 0x154c6338 dm_kcopyd_client_destroy +EXPORT_SYMBOL vmlinux 0x1556bb6a netpoll_cleanup +EXPORT_SYMBOL vmlinux 0x156c31b7 __inode_add_bytes +EXPORT_SYMBOL vmlinux 0x156d1d44 ip_sock_set_mtu_discover +EXPORT_SYMBOL vmlinux 0x15751c5f input_set_capability +EXPORT_SYMBOL vmlinux 0x15857dbc skb_set_owner_w +EXPORT_SYMBOL vmlinux 0x15990749 generic_error_remove_page +EXPORT_SYMBOL vmlinux 0x159e9d8f __dev_get_by_name +EXPORT_SYMBOL vmlinux 0x15abba78 generic_shutdown_super +EXPORT_SYMBOL vmlinux 0x15ba50a6 jiffies +EXPORT_SYMBOL vmlinux 0x15bafe29 unregister_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x15bed7a5 LZ4_decompress_safe_partial +EXPORT_SYMBOL vmlinux 0x15c57035 rc5t583_ext_power_req_config +EXPORT_SYMBOL vmlinux 0x15c85de3 mempool_init +EXPORT_SYMBOL vmlinux 0x15f90688 slhc_init +EXPORT_SYMBOL vmlinux 0x16030a0b icmp_ndo_send +EXPORT_SYMBOL vmlinux 0x16184e5d update_region +EXPORT_SYMBOL vmlinux 0x1619420b iget_failed +EXPORT_SYMBOL vmlinux 0x16278f01 i8042_remove_filter +EXPORT_SYMBOL vmlinux 0x16286538 iowrite64be_lo_hi +EXPORT_SYMBOL vmlinux 0x162893fd hashlen_string +EXPORT_SYMBOL vmlinux 0x16301b34 wrmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x1632bc21 kvasprintf_const +EXPORT_SYMBOL vmlinux 0x1635cf10 dump_skip_to +EXPORT_SYMBOL vmlinux 0x1648fa6a notify_change +EXPORT_SYMBOL vmlinux 0x1667c34d folio_set_bh +EXPORT_SYMBOL vmlinux 0x1668c166 bio_split_to_limits +EXPORT_SYMBOL vmlinux 0x16742ace vga_switcheroo_lock_ddc +EXPORT_SYMBOL vmlinux 0x167c5967 print_hex_dump +EXPORT_SYMBOL vmlinux 0x167e7f9d __get_user_1 +EXPORT_SYMBOL vmlinux 0x168670f4 km_query +EXPORT_SYMBOL vmlinux 0x168c30c8 sys_imageblit +EXPORT_SYMBOL vmlinux 0x16930b6b pci_bus_size_bridges +EXPORT_SYMBOL vmlinux 0x169938c1 __sysfs_match_string +EXPORT_SYMBOL vmlinux 0x169c9a93 mmc_retune_pause +EXPORT_SYMBOL vmlinux 0x16a0c365 fs_param_is_string +EXPORT_SYMBOL vmlinux 0x16a7b16f __traceiter_kmalloc +EXPORT_SYMBOL vmlinux 0x16c66cb8 inode_set_bytes +EXPORT_SYMBOL vmlinux 0x16cb38f4 rtnl_create_link +EXPORT_SYMBOL vmlinux 0x16cdc340 acpi_get_table +EXPORT_SYMBOL vmlinux 0x16da70d6 devm_mfd_add_devices +EXPORT_SYMBOL vmlinux 0x16e297c3 bit_wait +EXPORT_SYMBOL vmlinux 0x16fc6e9d sockopt_lock_sock +EXPORT_SYMBOL vmlinux 0x17085bcf scsi_add_host_with_dma +EXPORT_SYMBOL vmlinux 0x170ddf79 acpi_install_notify_handler +EXPORT_SYMBOL vmlinux 0x17397ae1 mnt_drop_write_file +EXPORT_SYMBOL vmlinux 0x1747ab6f eth_type_trans +EXPORT_SYMBOL vmlinux 0x175e33fb dma_spin_lock +EXPORT_SYMBOL vmlinux 0x1767f88f jbd2_journal_set_features +EXPORT_SYMBOL vmlinux 0x176c34f2 tc_setup_cb_destroy +EXPORT_SYMBOL vmlinux 0x177a82c3 entry_untrain_ret +EXPORT_SYMBOL vmlinux 0x1780784e __tracepoint_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x1798aa3d __inet6_lookup_established +EXPORT_SYMBOL vmlinux 0x17a9cd63 sync_inodes_sb +EXPORT_SYMBOL vmlinux 0x17be68ca acpi_clear_event +EXPORT_SYMBOL vmlinux 0x17d01bf9 key_reject_and_link +EXPORT_SYMBOL vmlinux 0x17d64422 tcf_idrinfo_destroy +EXPORT_SYMBOL vmlinux 0x17e09ebf skb_checksum_help +EXPORT_SYMBOL vmlinux 0x17e18b95 blk_integrity_compare +EXPORT_SYMBOL vmlinux 0x17e50087 flow_rule_match_cvlan +EXPORT_SYMBOL vmlinux 0x17f341a0 i8042_lock_chip +EXPORT_SYMBOL vmlinux 0x17f813a9 __SCT__tp_func_kmalloc +EXPORT_SYMBOL vmlinux 0x17fe23c1 device_match_acpi_dev +EXPORT_SYMBOL vmlinux 0x180395ef bmap +EXPORT_SYMBOL vmlinux 0x1814ac11 nf_getsockopt +EXPORT_SYMBOL vmlinux 0x1819a3f5 register_sysctl +EXPORT_SYMBOL vmlinux 0x18345b8e __bitmap_replace +EXPORT_SYMBOL vmlinux 0x184a3488 __ps2_command +EXPORT_SYMBOL vmlinux 0x187d0c8b sk_page_frag_refill +EXPORT_SYMBOL vmlinux 0x188445bb fwnode_irq_get_byname +EXPORT_SYMBOL vmlinux 0x18888d00 downgrade_write +EXPORT_SYMBOL vmlinux 0x188ea314 jiffies_to_timespec64 +EXPORT_SYMBOL vmlinux 0x189fb9fe pci_dev_get +EXPORT_SYMBOL vmlinux 0x18a6e8f4 dev_pm_opp_register_notifier +EXPORT_SYMBOL vmlinux 0x18b72573 register_kmmio_probe +EXPORT_SYMBOL vmlinux 0x18cbc38a devfreq_recommended_opp +EXPORT_SYMBOL vmlinux 0x18d978e3 devm_arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0x18dfe43d sock_no_accept +EXPORT_SYMBOL vmlinux 0x18e60984 __do_once_start +EXPORT_SYMBOL vmlinux 0x18f8125d pci_bus_alloc_resource +EXPORT_SYMBOL vmlinux 0x18fd2c2d __x86_indirect_call_thunk_r13 +EXPORT_SYMBOL vmlinux 0x18fdbc3f scsi_get_device_flags_keyed +EXPORT_SYMBOL vmlinux 0x190787ba set_pages_array_uc +EXPORT_SYMBOL vmlinux 0x19147726 cad_pid +EXPORT_SYMBOL vmlinux 0x1925be2b pnp_unregister_card_driver +EXPORT_SYMBOL vmlinux 0x192c595e ip6mr_rule_default +EXPORT_SYMBOL vmlinux 0x192ea14f __SCT__tp_func_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0x1953c958 mempool_create +EXPORT_SYMBOL vmlinux 0x1956a6cc registered_fb +EXPORT_SYMBOL vmlinux 0x1965f17f devm_ioport_map +EXPORT_SYMBOL vmlinux 0x197d5b60 dma_fence_default_wait +EXPORT_SYMBOL vmlinux 0x197da641 __blk_alloc_disk +EXPORT_SYMBOL vmlinux 0x197edfc5 blk_mq_tagset_wait_completed_request +EXPORT_SYMBOL vmlinux 0x1984d421 out_of_line_wait_on_bit +EXPORT_SYMBOL vmlinux 0x199ed0cd net_disable_timestamp +EXPORT_SYMBOL vmlinux 0x199f8863 nvdimm_namespace_locked +EXPORT_SYMBOL vmlinux 0x19ae29d3 mount_single +EXPORT_SYMBOL vmlinux 0x19b11318 phy_set_asym_pause +EXPORT_SYMBOL vmlinux 0x19bd383b security_secmark_refcount_dec +EXPORT_SYMBOL vmlinux 0x19c84e26 d_find_any_alias +EXPORT_SYMBOL vmlinux 0x19ce94f3 tc_cleanup_offload_action +EXPORT_SYMBOL vmlinux 0x19dc6dfe devfreq_monitor_stop +EXPORT_SYMBOL vmlinux 0x19df99b9 acpi_finish_gpe +EXPORT_SYMBOL vmlinux 0x19f0d3c4 ilookup5_nowait +EXPORT_SYMBOL vmlinux 0x1a0ccdd0 phy_ethtool_nway_reset +EXPORT_SYMBOL vmlinux 0x1a1111c5 pci_msi_vec_count +EXPORT_SYMBOL vmlinux 0x1a17a1fa setup_arg_pages +EXPORT_SYMBOL vmlinux 0x1a1becbc blk_mq_delay_run_hw_queues +EXPORT_SYMBOL vmlinux 0x1a211dbb fb_validate_mode +EXPORT_SYMBOL vmlinux 0x1a301d84 ndisc_send_skb +EXPORT_SYMBOL vmlinux 0x1a45cb6c acpi_disabled +EXPORT_SYMBOL vmlinux 0x1a461120 skb_dump +EXPORT_SYMBOL vmlinux 0x1a49045e mmc_start_request +EXPORT_SYMBOL vmlinux 0x1a5a01dc xfrm_policy_walk_done +EXPORT_SYMBOL vmlinux 0x1a5d7ccc sock_no_sendmsg +EXPORT_SYMBOL vmlinux 0x1a63af34 vga_switcheroo_process_delayed_switch +EXPORT_SYMBOL vmlinux 0x1a7179c3 dev_mc_add_global +EXPORT_SYMBOL vmlinux 0x1a79c8e9 __x86_indirect_thunk_r13 +EXPORT_SYMBOL vmlinux 0x1a89719c __netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x1a9a433c prandom_u32_state +EXPORT_SYMBOL vmlinux 0x1ac5d3cb strcspn +EXPORT_SYMBOL vmlinux 0x1ad7f36e __phy_write_mmd +EXPORT_SYMBOL vmlinux 0x1aded12b pci_enable_msix_range +EXPORT_SYMBOL vmlinux 0x1b015d25 bitmap_parselist +EXPORT_SYMBOL vmlinux 0x1b0cdd33 twl6040_reg_read +EXPORT_SYMBOL vmlinux 0x1b163dba __vfs_removexattr +EXPORT_SYMBOL vmlinux 0x1b177657 inet_frag_find +EXPORT_SYMBOL vmlinux 0x1b231563 qdisc_tree_reduce_backlog +EXPORT_SYMBOL vmlinux 0x1b2c419f free_inode_nonrcu +EXPORT_SYMBOL vmlinux 0x1b3d7a08 follow_pfn +EXPORT_SYMBOL vmlinux 0x1b3fee75 alloc_fddidev +EXPORT_SYMBOL vmlinux 0x1b597b7a swake_up_all +EXPORT_SYMBOL vmlinux 0x1b6314fd in_aton +EXPORT_SYMBOL vmlinux 0x1b777357 rdmacg_unregister_device +EXPORT_SYMBOL vmlinux 0x1b8b95ad i8042_unlock_chip +EXPORT_SYMBOL vmlinux 0x1b908d85 _raw_write_lock_nested +EXPORT_SYMBOL vmlinux 0x1ba59527 __kmalloc_node +EXPORT_SYMBOL vmlinux 0x1bb51249 tcp_have_smc +EXPORT_SYMBOL vmlinux 0x1bb8b73a pci_bus_read_config_byte +EXPORT_SYMBOL vmlinux 0x1bc5fa84 mdio_device_remove +EXPORT_SYMBOL vmlinux 0x1bd59dbe vme_free_consistent +EXPORT_SYMBOL vmlinux 0x1bfe3d5c simple_empty +EXPORT_SYMBOL vmlinux 0x1c065b37 ethtool_aggregate_ctrl_stats +EXPORT_SYMBOL vmlinux 0x1c12489a seq_bprintf +EXPORT_SYMBOL vmlinux 0x1c34f132 scsi_command_normalize_sense +EXPORT_SYMBOL vmlinux 0x1c58427f acpi_remove_notify_handler +EXPORT_SYMBOL vmlinux 0x1c6a26ba blk_put_queue +EXPORT_SYMBOL vmlinux 0x1c8b692e filemap_fdatawait_range +EXPORT_SYMBOL vmlinux 0x1c972c35 ndo_dflt_fdb_del +EXPORT_SYMBOL vmlinux 0x1ca2d7a2 pci_request_irq +EXPORT_SYMBOL vmlinux 0x1ca527fa ioread64be_hi_lo +EXPORT_SYMBOL vmlinux 0x1ca54696 vfs_path_lookup +EXPORT_SYMBOL vmlinux 0x1cb0bfd8 t10_pi_type3_ip +EXPORT_SYMBOL vmlinux 0x1cb11044 inetpeer_invalidate_tree +EXPORT_SYMBOL vmlinux 0x1cd8438b pxm_to_node +EXPORT_SYMBOL vmlinux 0x1ce6e022 devm_clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x1cf20085 blk_mq_alloc_request +EXPORT_SYMBOL vmlinux 0x1cf2d5f4 filemap_fdatawrite_wbc +EXPORT_SYMBOL vmlinux 0x1cffa5ae dcb_getrewr_prio_pcp_mask_map +EXPORT_SYMBOL vmlinux 0x1d07e365 memdup_user_nul +EXPORT_SYMBOL vmlinux 0x1d16b711 cros_ec_cmd_xfer_status +EXPORT_SYMBOL vmlinux 0x1d19f77b physical_mask +EXPORT_SYMBOL vmlinux 0x1d1abdf0 acpi_get_physical_device_location +EXPORT_SYMBOL vmlinux 0x1d24c881 ___ratelimit +EXPORT_SYMBOL vmlinux 0x1d40b6f3 idr_for_each +EXPORT_SYMBOL vmlinux 0x1d7dda38 cros_ec_cmd_xfer +EXPORT_SYMBOL vmlinux 0x1d828b85 md_reload_sb +EXPORT_SYMBOL vmlinux 0x1d8a2feb register_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x1d9672bd fault_in_subpage_writeable +EXPORT_SYMBOL vmlinux 0x1d996570 mdiobus_setup_mdiodev_from_board_info +EXPORT_SYMBOL vmlinux 0x1dab968b icmpv6_ndo_send +EXPORT_SYMBOL vmlinux 0x1db75248 dma_map_page_attrs +EXPORT_SYMBOL vmlinux 0x1dbb993c xattr_full_name +EXPORT_SYMBOL vmlinux 0x1dc6c93b lookup_user_key +EXPORT_SYMBOL vmlinux 0x1dd571e6 fb_copy_cmap +EXPORT_SYMBOL vmlinux 0x1de0eb83 tcf_block_netif_keep_dst +EXPORT_SYMBOL vmlinux 0x1de4ccb2 get_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x1de83e3b tcp_prot +EXPORT_SYMBOL vmlinux 0x1dec3347 jbd2_fc_end_commit_fallback +EXPORT_SYMBOL vmlinux 0x1dfd7e44 seq_escape_mem +EXPORT_SYMBOL vmlinux 0x1e0a0c24 mod_timer_pending +EXPORT_SYMBOL vmlinux 0x1e0cd7fe acpi_detach_data +EXPORT_SYMBOL vmlinux 0x1e12f738 scsi_print_sense_hdr +EXPORT_SYMBOL vmlinux 0x1e2e11f9 inet_frag_reasm_prepare +EXPORT_SYMBOL vmlinux 0x1e32ebef tcf_exts_validate_ex +EXPORT_SYMBOL vmlinux 0x1e408551 unregister_netdev +EXPORT_SYMBOL vmlinux 0x1e57d6c2 sk_net_capable +EXPORT_SYMBOL vmlinux 0x1e57f08b inet_dgram_ops +EXPORT_SYMBOL vmlinux 0x1e582391 inet6_offloads +EXPORT_SYMBOL vmlinux 0x1e6adaa0 bitmap_print_bitmask_to_buf +EXPORT_SYMBOL vmlinux 0x1e6d26a8 strstr +EXPORT_SYMBOL vmlinux 0x1e70de78 dquot_alloc +EXPORT_SYMBOL vmlinux 0x1e7c166a tcp_check_req +EXPORT_SYMBOL vmlinux 0x1e832d35 tcp_get_md5sig_pool +EXPORT_SYMBOL vmlinux 0x1e957f86 simple_dir_operations +EXPORT_SYMBOL vmlinux 0x1e9edfb7 seq_hlist_start_head_rcu +EXPORT_SYMBOL vmlinux 0x1ea0dabd qdisc_create_dflt +EXPORT_SYMBOL vmlinux 0x1eb50546 path_get +EXPORT_SYMBOL vmlinux 0x1eb922a3 IO_APIC_get_PCI_irq_vector +EXPORT_SYMBOL vmlinux 0x1edb69d6 ktime_get_raw_ts64 +EXPORT_SYMBOL vmlinux 0x1efe3a89 is_subdir +EXPORT_SYMBOL vmlinux 0x1f158159 __do_once_done +EXPORT_SYMBOL vmlinux 0x1f557414 gen_pool_has_addr +EXPORT_SYMBOL vmlinux 0x1f5f2111 config_group_init_type_name +EXPORT_SYMBOL vmlinux 0x1f6285f2 phy_free_interrupt +EXPORT_SYMBOL vmlinux 0x1f7164f7 irq_set_chip +EXPORT_SYMBOL vmlinux 0x1f7a40ff fb_set_var +EXPORT_SYMBOL vmlinux 0x1f9b0415 i2c_get_match_data +EXPORT_SYMBOL vmlinux 0x1faf096d tcp_parse_options +EXPORT_SYMBOL vmlinux 0x1fbd16da ip_tos2prio +EXPORT_SYMBOL vmlinux 0x1fc1109e proc_dointvec_userhz_jiffies +EXPORT_SYMBOL vmlinux 0x1fcf44ed nvdimm_check_and_set_ro +EXPORT_SYMBOL vmlinux 0x1fd07fff kdb_grepping_flag +EXPORT_SYMBOL vmlinux 0x1fd0dea6 __skb_pad +EXPORT_SYMBOL vmlinux 0x1fdcf0d0 __folio_start_writeback +EXPORT_SYMBOL vmlinux 0x20000329 simple_strtoul +EXPORT_SYMBOL vmlinux 0x200b2041 in6addr_any +EXPORT_SYMBOL vmlinux 0x20463df4 wait_for_completion_killable +EXPORT_SYMBOL vmlinux 0x204c19f5 tcp_alloc_md5sig_pool +EXPORT_SYMBOL vmlinux 0x204c5067 scsi_dev_info_add_list +EXPORT_SYMBOL vmlinux 0x205e4130 dentry_create +EXPORT_SYMBOL vmlinux 0x205f28d8 ipv6_chk_custom_prefix +EXPORT_SYMBOL vmlinux 0x2065f620 scsi_add_device +EXPORT_SYMBOL vmlinux 0x206d184a linkwatch_fire_event +EXPORT_SYMBOL vmlinux 0x2096fcbd tcp_splice_read +EXPORT_SYMBOL vmlinux 0x20a789ac irq_set_chip_data +EXPORT_SYMBOL vmlinux 0x20aa6c43 mmc_set_data_timeout +EXPORT_SYMBOL vmlinux 0x20ad6b83 rtnl_unicast +EXPORT_SYMBOL vmlinux 0x20b9f27d jbd2_log_wait_commit +EXPORT_SYMBOL vmlinux 0x20ba4f3e rdmsr_on_cpu +EXPORT_SYMBOL vmlinux 0x20bcbe4f blake2s_compress +EXPORT_SYMBOL vmlinux 0x20cbb30a __percpu_counter_init +EXPORT_SYMBOL vmlinux 0x20d1723c generic_file_direct_write +EXPORT_SYMBOL vmlinux 0x20d52d02 rt_dst_clone +EXPORT_SYMBOL vmlinux 0x20d65e40 fb_find_nearest_mode +EXPORT_SYMBOL vmlinux 0x20e842d3 flow_rule_match_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x20eadeb6 ip_compute_csum +EXPORT_SYMBOL vmlinux 0x21283b78 crypto_sha256_finup +EXPORT_SYMBOL vmlinux 0x21338dd7 vga_switcheroo_get_client_state +EXPORT_SYMBOL vmlinux 0x213a738d memregion_alloc +EXPORT_SYMBOL vmlinux 0x213e4965 ps2_is_keyboard_id +EXPORT_SYMBOL vmlinux 0x2149877c agp_backend_acquire +EXPORT_SYMBOL vmlinux 0x215b7db8 md_reap_sync_thread +EXPORT_SYMBOL vmlinux 0x215ecfb6 phy_set_max_speed +EXPORT_SYMBOL vmlinux 0x216d6aa3 inet_sendmsg +EXPORT_SYMBOL vmlinux 0x2173a5b8 user_path_at_empty +EXPORT_SYMBOL vmlinux 0x2177bd71 acpi_disable_event +EXPORT_SYMBOL vmlinux 0x218e600b pci_add_resource_offset +EXPORT_SYMBOL vmlinux 0x219dfbba touchscreen_parse_properties +EXPORT_SYMBOL vmlinux 0x21a494fd i2c_del_adapter +EXPORT_SYMBOL vmlinux 0x21ab3dca tls_server_hello_x509 +EXPORT_SYMBOL vmlinux 0x21bc8ba3 pci_bus_write_config_dword +EXPORT_SYMBOL vmlinux 0x21bdb523 errseq_check_and_advance +EXPORT_SYMBOL vmlinux 0x21c88a2c igrab +EXPORT_SYMBOL vmlinux 0x21ce5d43 netdev_lower_get_next +EXPORT_SYMBOL vmlinux 0x21e13cb3 inet_peer_xrlim_allow +EXPORT_SYMBOL vmlinux 0x21ea5251 __bitmap_weight +EXPORT_SYMBOL vmlinux 0x21eca5a8 acpi_bus_register_driver +EXPORT_SYMBOL vmlinux 0x21ef374c try_wait_for_completion +EXPORT_SYMBOL vmlinux 0x2211071c tcp_seq_stop +EXPORT_SYMBOL vmlinux 0x2212dc91 unregister_qdisc +EXPORT_SYMBOL vmlinux 0x222e7ce2 sysfs_streq +EXPORT_SYMBOL vmlinux 0x2234ca51 acpi_match_platform_list +EXPORT_SYMBOL vmlinux 0x2242fc99 mmc_sw_reset +EXPORT_SYMBOL vmlinux 0x2246cc7d disk_stack_limits +EXPORT_SYMBOL vmlinux 0x226acf1a mount_bdev +EXPORT_SYMBOL vmlinux 0x226b09eb bio_alloc_bioset +EXPORT_SYMBOL vmlinux 0x226df3b0 input_set_timestamp +EXPORT_SYMBOL vmlinux 0x228418fa do_clone_file_range +EXPORT_SYMBOL vmlinux 0x22ac3cf9 ps2_drain +EXPORT_SYMBOL vmlinux 0x22b325d5 kd_mksound +EXPORT_SYMBOL vmlinux 0x22c7b2ad skb_eth_gso_segment +EXPORT_SYMBOL vmlinux 0x22d2718f tcf_idr_cleanup +EXPORT_SYMBOL vmlinux 0x22d2fdb4 netlink_net_capable +EXPORT_SYMBOL vmlinux 0x22d3c71a fb_find_mode +EXPORT_SYMBOL vmlinux 0x22de4931 amd_iommu_register_ga_log_notifier +EXPORT_SYMBOL vmlinux 0x22e6e4fb __scsi_add_device +EXPORT_SYMBOL vmlinux 0x22fd725d fscrypt_decrypt_block_inplace +EXPORT_SYMBOL vmlinux 0x230fdced unregister_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x2319c9b9 neigh_changeaddr +EXPORT_SYMBOL vmlinux 0x231cff43 ndo_dflt_fdb_add +EXPORT_SYMBOL vmlinux 0x23279dd0 dev_set_mac_address_user +EXPORT_SYMBOL vmlinux 0x232c4f23 block_read_full_folio +EXPORT_SYMBOL vmlinux 0x234ba1a9 compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x2364c85a tasklet_init +EXPORT_SYMBOL vmlinux 0x236ed190 dcb_setapp +EXPORT_SYMBOL vmlinux 0x237467b9 skb_csum_hwoffload_help +EXPORT_SYMBOL vmlinux 0x238b099f mipi_dsi_packet_format_is_short +EXPORT_SYMBOL vmlinux 0x23939213 clk_hw_get_clk +EXPORT_SYMBOL vmlinux 0x239bdc57 mipi_dsi_detach +EXPORT_SYMBOL vmlinux 0x23b1c8ff __tracepoint_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x23b9d6e2 mangle_path +EXPORT_SYMBOL vmlinux 0x23c66e74 tcp_getsockopt +EXPORT_SYMBOL vmlinux 0x23daa989 mipi_dsi_create_packet +EXPORT_SYMBOL vmlinux 0x23dc7f6c hdmi_avi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x23f1d7a6 page_pool_ethtool_stats_get_count +EXPORT_SYMBOL vmlinux 0x23fd3028 vmalloc_node +EXPORT_SYMBOL vmlinux 0x240c9446 devm_extcon_unregister_notifier_all +EXPORT_SYMBOL vmlinux 0x2417c52f sys_fillrect +EXPORT_SYMBOL vmlinux 0x2427ba44 readahead_expand +EXPORT_SYMBOL vmlinux 0x2427caf9 zpool_unregister_driver +EXPORT_SYMBOL vmlinux 0x243fdf12 iterate_fd +EXPORT_SYMBOL vmlinux 0x2441845c tty_kref_put +EXPORT_SYMBOL vmlinux 0x24527690 dma_resv_reserve_fences +EXPORT_SYMBOL vmlinux 0x2459bbcc console_set_on_cmdline +EXPORT_SYMBOL vmlinux 0x245c1651 mmc_hw_reset +EXPORT_SYMBOL vmlinux 0x2460dbf3 agp_backend_release +EXPORT_SYMBOL vmlinux 0x24790372 sget +EXPORT_SYMBOL vmlinux 0x2484adc3 __kfifo_to_user_r +EXPORT_SYMBOL vmlinux 0x2485f959 netpoll_send_udp +EXPORT_SYMBOL vmlinux 0x249a0977 dev_loopback_xmit +EXPORT_SYMBOL vmlinux 0x24a11e17 cpumask_any_distribute +EXPORT_SYMBOL vmlinux 0x24bde5d4 kobject_set_name +EXPORT_SYMBOL vmlinux 0x24c2b83a pci_assign_resource +EXPORT_SYMBOL vmlinux 0x24d068b2 tcf_action_update_hw_stats +EXPORT_SYMBOL vmlinux 0x24d273d1 add_timer +EXPORT_SYMBOL vmlinux 0x24e1b558 seg6_hmac_compute +EXPORT_SYMBOL vmlinux 0x2505bf18 kstrtol_from_user +EXPORT_SYMBOL vmlinux 0x2510dd21 i2c_find_adapter_by_fwnode +EXPORT_SYMBOL vmlinux 0x252a7003 seq_lseek +EXPORT_SYMBOL vmlinux 0x25321eef prepare_creds +EXPORT_SYMBOL vmlinux 0x253577c9 iov_iter_xarray +EXPORT_SYMBOL vmlinux 0x2538bd27 pmem_should_map_pages +EXPORT_SYMBOL vmlinux 0x253f20c8 seq_printf +EXPORT_SYMBOL vmlinux 0x253fc582 tcp_sendmsg +EXPORT_SYMBOL vmlinux 0x2557684e vmap +EXPORT_SYMBOL vmlinux 0x255f7c66 md_handle_request +EXPORT_SYMBOL vmlinux 0x25820c64 fs_overflowuid +EXPORT_SYMBOL vmlinux 0x258a2c02 _raw_write_trylock +EXPORT_SYMBOL vmlinux 0x258c57cc scsi_block_requests +EXPORT_SYMBOL vmlinux 0x258d2f76 net_dim_get_tx_moderation +EXPORT_SYMBOL vmlinux 0x25935b86 netif_carrier_off +EXPORT_SYMBOL vmlinux 0x25974000 wait_for_completion +EXPORT_SYMBOL vmlinux 0x259a75f5 unregister_key_type +EXPORT_SYMBOL vmlinux 0x25a62dda vfs_setpos +EXPORT_SYMBOL vmlinux 0x25ae4458 blk_queue_flag_clear +EXPORT_SYMBOL vmlinux 0x25afd50e get_unmapped_area +EXPORT_SYMBOL vmlinux 0x25cfd6d6 d_instantiate_anon +EXPORT_SYMBOL vmlinux 0x25d7a2e7 scm_detach_fds +EXPORT_SYMBOL vmlinux 0x25db1577 do_trace_write_msr +EXPORT_SYMBOL vmlinux 0x25df957d dcache_readdir +EXPORT_SYMBOL vmlinux 0x25e9d4bd resource_list_free +EXPORT_SYMBOL vmlinux 0x25edccfe i2c_smbus_write_word_data +EXPORT_SYMBOL vmlinux 0x25f47b1f __register_chrdev +EXPORT_SYMBOL vmlinux 0x26060d14 set_groups +EXPORT_SYMBOL vmlinux 0x2608cb10 dev_set_mtu +EXPORT_SYMBOL vmlinux 0x261fcc31 fb_class +EXPORT_SYMBOL vmlinux 0x26241a07 sock_pfree +EXPORT_SYMBOL vmlinux 0x262ed89a sk_stream_wait_connect +EXPORT_SYMBOL vmlinux 0x263beb75 ecryptfs_get_versions +EXPORT_SYMBOL vmlinux 0x263c3152 bcmp +EXPORT_SYMBOL vmlinux 0x2648b0de remap_pfn_range +EXPORT_SYMBOL vmlinux 0x265986bf qdisc_reset +EXPORT_SYMBOL vmlinux 0x266ce89d seq_putc +EXPORT_SYMBOL vmlinux 0x267a4a27 sk_stream_wait_memory +EXPORT_SYMBOL vmlinux 0x268152de netdev_pick_tx +EXPORT_SYMBOL vmlinux 0x2688ec10 bitmap_zalloc +EXPORT_SYMBOL vmlinux 0x26897b52 mb_cache_entry_get +EXPORT_SYMBOL vmlinux 0x26939647 dev_kfree_skb_any_reason +EXPORT_SYMBOL vmlinux 0x269e2ab5 backlight_device_set_brightness +EXPORT_SYMBOL vmlinux 0x26b29ae8 locks_lock_inode_wait +EXPORT_SYMBOL vmlinux 0x26e298e0 unregister_memory_notifier +EXPORT_SYMBOL vmlinux 0x26e902f8 nf_ip_checksum +EXPORT_SYMBOL vmlinux 0x26ea5bc7 security_sb_set_mnt_opts +EXPORT_SYMBOL vmlinux 0x26f8f0b8 iowrite16be +EXPORT_SYMBOL vmlinux 0x270b39d0 tcf_qevent_dump +EXPORT_SYMBOL vmlinux 0x270cf88f dump_stack_lvl +EXPORT_SYMBOL vmlinux 0x2714363b inet6_csk_route_req +EXPORT_SYMBOL vmlinux 0x271cba95 acpi_bus_private_data_handler +EXPORT_SYMBOL vmlinux 0x27205d4c __blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0x272a8933 udp_memory_allocated +EXPORT_SYMBOL vmlinux 0x2733eaf7 scsi_dev_info_list_add_keyed +EXPORT_SYMBOL vmlinux 0x273e984c d_add +EXPORT_SYMBOL vmlinux 0x27479d14 param_free_charp +EXPORT_SYMBOL vmlinux 0x274c7310 vlan_dev_vlan_proto +EXPORT_SYMBOL vmlinux 0x27561ae7 configfs_undepend_item +EXPORT_SYMBOL vmlinux 0x2759448b file_remove_privs +EXPORT_SYMBOL vmlinux 0x275f3d49 hdmi_vendor_infoframe_check +EXPORT_SYMBOL vmlinux 0x276fd3a5 uart_resume_port +EXPORT_SYMBOL vmlinux 0x27726ff3 dev_uc_add_excl +EXPORT_SYMBOL vmlinux 0x27756bc8 scsi_sanitize_inquiry_string +EXPORT_SYMBOL vmlinux 0x27774ef0 tcf_action_set_ctrlact +EXPORT_SYMBOL vmlinux 0x27810361 acpi_os_wait_events_complete +EXPORT_SYMBOL vmlinux 0x2782b393 xfrm_state_walk_init +EXPORT_SYMBOL vmlinux 0x27864d57 memparse +EXPORT_SYMBOL vmlinux 0x278d439e tls_client_hello_anon +EXPORT_SYMBOL vmlinux 0x27a73cbb __filemap_set_wb_err +EXPORT_SYMBOL vmlinux 0x27bbf221 disable_irq_nosync +EXPORT_SYMBOL vmlinux 0x27cdca93 pci_add_resource +EXPORT_SYMBOL vmlinux 0x27e043eb phy_register_fixup_for_id +EXPORT_SYMBOL vmlinux 0x27e552e1 no_seek_end_llseek +EXPORT_SYMBOL vmlinux 0x27eae1bb sk_free +EXPORT_SYMBOL vmlinux 0x2801a22f proc_dointvec_minmax +EXPORT_SYMBOL vmlinux 0x281823c5 __kfifo_out_peek +EXPORT_SYMBOL vmlinux 0x28339bf7 dcb_ieee_getapp_mask +EXPORT_SYMBOL vmlinux 0x2840abc7 mmc_can_gpio_cd +EXPORT_SYMBOL vmlinux 0x2847119d inet6_ioctl +EXPORT_SYMBOL vmlinux 0x284ba24b register_framebuffer +EXPORT_SYMBOL vmlinux 0x284faa6b __x86_indirect_thunk_r11 +EXPORT_SYMBOL vmlinux 0x28500e13 proc_douintvec +EXPORT_SYMBOL vmlinux 0x285e734e bio_init_clone +EXPORT_SYMBOL vmlinux 0x2875a315 utf32_to_utf8 +EXPORT_SYMBOL vmlinux 0x287f4a68 register_fib_notifier +EXPORT_SYMBOL vmlinux 0x288c882e generic_listxattr +EXPORT_SYMBOL vmlinux 0x28c088cc genlmsg_put +EXPORT_SYMBOL vmlinux 0x28c612dc nd_device_notify +EXPORT_SYMBOL vmlinux 0x28d6b688 redirty_page_for_writepage +EXPORT_SYMBOL vmlinux 0x28e09af1 iosf_mbi_available +EXPORT_SYMBOL vmlinux 0x28f94604 __ubsan_handle_builtin_unreachable +EXPORT_SYMBOL vmlinux 0x28ff790f find_vma_intersection +EXPORT_SYMBOL vmlinux 0x2909c947 pci_disable_ptm +EXPORT_SYMBOL vmlinux 0x2909db87 rproc_add_carveout +EXPORT_SYMBOL vmlinux 0x2915ad2d mmc_cqe_request_done +EXPORT_SYMBOL vmlinux 0x29198b27 flow_block_cb_priv +EXPORT_SYMBOL vmlinux 0x291cfa70 serio_unregister_driver +EXPORT_SYMBOL vmlinux 0x291dfd67 folio_zero_new_buffers +EXPORT_SYMBOL vmlinux 0x292c32e4 vme_dma_list_exec +EXPORT_SYMBOL vmlinux 0x29332499 __x86_indirect_thunk_rsi +EXPORT_SYMBOL vmlinux 0x2936b4e2 netdev_alert +EXPORT_SYMBOL vmlinux 0x29579ffb netdev_offload_xstats_disable +EXPORT_SYMBOL vmlinux 0x29591bd8 xfrm_policy_bysel_ctx +EXPORT_SYMBOL vmlinux 0x29604158 napi_busy_loop +EXPORT_SYMBOL vmlinux 0x296b8bbf __kfifo_dma_in_prepare +EXPORT_SYMBOL vmlinux 0x296e80e9 dma_free_attrs +EXPORT_SYMBOL vmlinux 0x296ea58d phy_resume +EXPORT_SYMBOL vmlinux 0x296edb39 register_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0x297445b6 __free_pages +EXPORT_SYMBOL vmlinux 0x29781620 param_get_charp +EXPORT_SYMBOL vmlinux 0x297e5194 nd_pfn_validate +EXPORT_SYMBOL vmlinux 0x29ad8e33 x86_hyper_type +EXPORT_SYMBOL vmlinux 0x29ddb1ff pm860x_set_bits +EXPORT_SYMBOL vmlinux 0x29e1e204 hdmi_audio_infoframe_pack +EXPORT_SYMBOL vmlinux 0x29ec532e scmd_printk +EXPORT_SYMBOL vmlinux 0x29ed87fb agp_generic_mask_memory +EXPORT_SYMBOL vmlinux 0x29f1621a inode_owner_or_capable +EXPORT_SYMBOL vmlinux 0x29f8a5a4 request_key_tag +EXPORT_SYMBOL vmlinux 0x2a008be4 arp_tbl +EXPORT_SYMBOL vmlinux 0x2a1d784f jbd2_journal_update_sb_errno +EXPORT_SYMBOL vmlinux 0x2a299f09 scsi_partsize +EXPORT_SYMBOL vmlinux 0x2a303d4d check_signature +EXPORT_SYMBOL vmlinux 0x2a3371aa __dev_get_by_index +EXPORT_SYMBOL vmlinux 0x2a3bff01 jbd2_journal_abort +EXPORT_SYMBOL vmlinux 0x2a458fca device_match_acpi_handle +EXPORT_SYMBOL vmlinux 0x2a6a5aac sockopt_capable +EXPORT_SYMBOL vmlinux 0x2a6fa0d0 __SCT__tp_func_module_get +EXPORT_SYMBOL vmlinux 0x2a820ade cros_ec_check_result +EXPORT_SYMBOL vmlinux 0x2a84c820 xfrm_policy_hash_rebuild +EXPORT_SYMBOL vmlinux 0x2a85b203 cpumask_any_and_distribute +EXPORT_SYMBOL vmlinux 0x2a928918 slhc_free +EXPORT_SYMBOL vmlinux 0x2a9895b7 set_page_writeback +EXPORT_SYMBOL vmlinux 0x2a9a3905 vme_master_get +EXPORT_SYMBOL vmlinux 0x2a9b50b7 udp_skb_destructor +EXPORT_SYMBOL vmlinux 0x2aa00e26 intel_scu_ipc_dev_update +EXPORT_SYMBOL vmlinux 0x2aa0843e mempool_resize +EXPORT_SYMBOL vmlinux 0x2aa8a8aa tcp_rtx_synack +EXPORT_SYMBOL vmlinux 0x2aabcdc8 vmalloc_array +EXPORT_SYMBOL vmlinux 0x2abd39d1 __bforget +EXPORT_SYMBOL vmlinux 0x2ac75816 devm_pci_remap_cfg_resource +EXPORT_SYMBOL vmlinux 0x2acb4eaf __x86_indirect_call_thunk_r11 +EXPORT_SYMBOL vmlinux 0x2ade36af dquot_reclaim_space_nodirty +EXPORT_SYMBOL vmlinux 0x2aedb18f thermal_zone_device_critical +EXPORT_SYMBOL vmlinux 0x2aee6360 alloc_pages +EXPORT_SYMBOL vmlinux 0x2b04e002 intel_gmch_probe +EXPORT_SYMBOL vmlinux 0x2b06cdc9 free_cgroup_ns +EXPORT_SYMBOL vmlinux 0x2b2c1d07 filemap_get_folios +EXPORT_SYMBOL vmlinux 0x2b3707d5 tcf_exts_init_ex +EXPORT_SYMBOL vmlinux 0x2b4bcf68 from_kuid_munged +EXPORT_SYMBOL vmlinux 0x2b505c13 security_inode_getsecctx +EXPORT_SYMBOL vmlinux 0x2b593aa8 gen_pool_alloc_algo_owner +EXPORT_SYMBOL vmlinux 0x2b6f0962 __cpu_dying_mask +EXPORT_SYMBOL vmlinux 0x2b77315f page_pool_get_stats +EXPORT_SYMBOL vmlinux 0x2b884e4f tcf_unregister_action +EXPORT_SYMBOL vmlinux 0x2b958c99 rproc_elf_sanity_check +EXPORT_SYMBOL vmlinux 0x2b9808c6 rio_query_mport +EXPORT_SYMBOL vmlinux 0x2b9da7a4 genl_lock +EXPORT_SYMBOL vmlinux 0x2ba932df del_gendisk +EXPORT_SYMBOL vmlinux 0x2badbcaf ppp_input +EXPORT_SYMBOL vmlinux 0x2bae204e mt_find +EXPORT_SYMBOL vmlinux 0x2bb209d9 ping_prot +EXPORT_SYMBOL vmlinux 0x2bb6099e dq_data_lock +EXPORT_SYMBOL vmlinux 0x2bb7c05d __x86_indirect_call_thunk_rsi +EXPORT_SYMBOL vmlinux 0x2bbdfb4d blk_mq_init_queue +EXPORT_SYMBOL vmlinux 0x2bbe57c5 wait_for_key_construction +EXPORT_SYMBOL vmlinux 0x2bd60ab9 acpi_reset +EXPORT_SYMBOL vmlinux 0x2bd80d29 xfrm_trans_queue_net +EXPORT_SYMBOL vmlinux 0x2bed2a2b rtnl_configure_link +EXPORT_SYMBOL vmlinux 0x2c03dd6d __nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0x2c03e1d1 kill_block_super +EXPORT_SYMBOL vmlinux 0x2c0d2738 input_unregister_handler +EXPORT_SYMBOL vmlinux 0x2c178e1a dquot_disable +EXPORT_SYMBOL vmlinux 0x2c1ff5f4 blk_queue_update_dma_pad +EXPORT_SYMBOL vmlinux 0x2c256e1f input_scancode_to_scalar +EXPORT_SYMBOL vmlinux 0x2c33f093 pcim_iounmap +EXPORT_SYMBOL vmlinux 0x2c541e7b radix_tree_next_chunk +EXPORT_SYMBOL vmlinux 0x2c593717 inet_csk_reqsk_queue_drop_and_put +EXPORT_SYMBOL vmlinux 0x2c603a3d tty_unregister_device +EXPORT_SYMBOL vmlinux 0x2c65216f scsi_remove_target +EXPORT_SYMBOL vmlinux 0x2c6e2e5b __find_get_block +EXPORT_SYMBOL vmlinux 0x2c72fc32 proc_mkdir +EXPORT_SYMBOL vmlinux 0x2c82c36a security_secmark_relabel_packet +EXPORT_SYMBOL vmlinux 0x2c96835f __folio_lock +EXPORT_SYMBOL vmlinux 0x2c96d045 blk_rq_map_kern +EXPORT_SYMBOL vmlinux 0x2cb54a61 vga_get +EXPORT_SYMBOL vmlinux 0x2cbab619 amd_iommu_complete_ppr +EXPORT_SYMBOL vmlinux 0x2cca43bd __remove_inode_hash +EXPORT_SYMBOL vmlinux 0x2ccd059a dim_on_top +EXPORT_SYMBOL vmlinux 0x2cdb3d1c mmc_gpiod_request_cd_irq +EXPORT_SYMBOL vmlinux 0x2cdba320 amd_iommu_domain_set_gcr3 +EXPORT_SYMBOL vmlinux 0x2cdbf916 framebuffer_alloc +EXPORT_SYMBOL vmlinux 0x2ce0c7bb scsi_target_quiesce +EXPORT_SYMBOL vmlinux 0x2cea01ee dev_printk_emit +EXPORT_SYMBOL vmlinux 0x2cf0c910 sg_init_table +EXPORT_SYMBOL vmlinux 0x2cf56265 __dynamic_pr_debug +EXPORT_SYMBOL vmlinux 0x2cfac492 backlight_device_get_by_name +EXPORT_SYMBOL vmlinux 0x2d140a58 genl_unlock +EXPORT_SYMBOL vmlinux 0x2d1856ad ip_route_input_noref +EXPORT_SYMBOL vmlinux 0x2d18c77c xfrm6_rcv_tnl +EXPORT_SYMBOL vmlinux 0x2d30596c from_kqid_munged +EXPORT_SYMBOL vmlinux 0x2d3385d3 system_wq +EXPORT_SYMBOL vmlinux 0x2d342d3b md_bitmap_close_sync +EXPORT_SYMBOL vmlinux 0x2d37638a put_fs_context +EXPORT_SYMBOL vmlinux 0x2d39b0a7 kstrdup +EXPORT_SYMBOL vmlinux 0x2d4c773a hdmi_spd_infoframe_init +EXPORT_SYMBOL vmlinux 0x2d4daef5 find_font +EXPORT_SYMBOL vmlinux 0x2d5240e6 phy_start +EXPORT_SYMBOL vmlinux 0x2d530d7c inode_io_list_del +EXPORT_SYMBOL vmlinux 0x2d55bc3a con_copy_unimap +EXPORT_SYMBOL vmlinux 0x2d61b4bc clk_get +EXPORT_SYMBOL vmlinux 0x2d8fe6ba genphy_check_and_restart_aneg +EXPORT_SYMBOL vmlinux 0x2d912bca dmi_get_bios_year +EXPORT_SYMBOL vmlinux 0x2d994605 security_inode_copy_up_xattr +EXPORT_SYMBOL vmlinux 0x2da08256 set_trace_device +EXPORT_SYMBOL vmlinux 0x2da97535 mipi_dsi_dcs_set_display_brightness +EXPORT_SYMBOL vmlinux 0x2daad451 input_set_poll_interval +EXPORT_SYMBOL vmlinux 0x2dc4dd40 udplite_prot +EXPORT_SYMBOL vmlinux 0x2dd16564 arch_register_cpu +EXPORT_SYMBOL vmlinux 0x2dd7c0f3 dev_get_stats +EXPORT_SYMBOL vmlinux 0x2de125c0 page_frag_alloc_align +EXPORT_SYMBOL vmlinux 0x2de42fd4 setattr_prepare +EXPORT_SYMBOL vmlinux 0x2de776ff configfs_unregister_group +EXPORT_SYMBOL vmlinux 0x2dec1b45 mdiobus_c45_read +EXPORT_SYMBOL vmlinux 0x2def7f76 rtc_cmos_write +EXPORT_SYMBOL vmlinux 0x2e0a637d acpi_walk_resources +EXPORT_SYMBOL vmlinux 0x2e16ab8a __qdisc_calculate_pkt_len +EXPORT_SYMBOL vmlinux 0x2e1ca751 clk_put +EXPORT_SYMBOL vmlinux 0x2e2b40d2 strncat +EXPORT_SYMBOL vmlinux 0x2e2da06f dm_table_get_size +EXPORT_SYMBOL vmlinux 0x2e3688f7 neigh_for_each +EXPORT_SYMBOL vmlinux 0x2e3a0f63 netif_skb_features +EXPORT_SYMBOL vmlinux 0x2e3bcce2 wait_for_completion_interruptible +EXPORT_SYMBOL vmlinux 0x2e3cd9ea fault_in_iov_iter_readable +EXPORT_SYMBOL vmlinux 0x2e439142 drm_get_panel_orientation_quirk +EXPORT_SYMBOL vmlinux 0x2e4433be mipi_dsi_dcs_soft_reset +EXPORT_SYMBOL vmlinux 0x2e49f384 tcp_time_wait +EXPORT_SYMBOL vmlinux 0x2e5fe036 __skb_ext_put +EXPORT_SYMBOL vmlinux 0x2e6eef20 dquot_scan_active +EXPORT_SYMBOL vmlinux 0x2e7bf8a4 sock_release +EXPORT_SYMBOL vmlinux 0x2e8bb558 phy_device_remove +EXPORT_SYMBOL vmlinux 0x2e94e407 xfrm_state_delete_tunnel +EXPORT_SYMBOL vmlinux 0x2ea35283 __lock_buffer +EXPORT_SYMBOL vmlinux 0x2ea395e1 nf_register_queue_handler +EXPORT_SYMBOL vmlinux 0x2ead8674 __folio_batch_release +EXPORT_SYMBOL vmlinux 0x2eae1887 param_get_short +EXPORT_SYMBOL vmlinux 0x2eb1cd1b vmf_insert_mixed_mkwrite +EXPORT_SYMBOL vmlinux 0x2eb9fd81 kmem_cache_free_bulk +EXPORT_SYMBOL vmlinux 0x2ec42f68 input_allocate_device +EXPORT_SYMBOL vmlinux 0x2ec6bba0 errseq_set +EXPORT_SYMBOL vmlinux 0x2ec9e4f4 sock_no_mmap +EXPORT_SYMBOL vmlinux 0x2eec26c1 blk_integrity_unregister +EXPORT_SYMBOL vmlinux 0x2ef03729 dcb_ieee_getapp_default_prio_mask +EXPORT_SYMBOL vmlinux 0x2f02d13c filemap_check_errors +EXPORT_SYMBOL vmlinux 0x2f03fc4b security_secmark_refcount_inc +EXPORT_SYMBOL vmlinux 0x2f2e91b2 security_ib_alloc_security +EXPORT_SYMBOL vmlinux 0x2f384db3 acpi_is_video_device +EXPORT_SYMBOL vmlinux 0x2f5899bc blk_mq_tagset_busy_iter +EXPORT_SYMBOL vmlinux 0x2f7754a8 dma_pool_free +EXPORT_SYMBOL vmlinux 0x2f77e2fa security_inode_listsecurity +EXPORT_SYMBOL vmlinux 0x2f97a907 mode_strip_sgid +EXPORT_SYMBOL vmlinux 0x2fb15b87 nd_btt_arena_is_valid +EXPORT_SYMBOL vmlinux 0x2fcb5c5b __brelse +EXPORT_SYMBOL vmlinux 0x2fe252cc unregister_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x2ff1fb15 ps2_sliced_command +EXPORT_SYMBOL vmlinux 0x2ff59853 __inc_zone_page_state +EXPORT_SYMBOL vmlinux 0x3011f350 mr_mfc_find_any +EXPORT_SYMBOL vmlinux 0x301304c2 __get_user_nocheck_8 +EXPORT_SYMBOL vmlinux 0x302501aa phy_ethtool_ksettings_set +EXPORT_SYMBOL vmlinux 0x304ffa08 sock_wake_async +EXPORT_SYMBOL vmlinux 0x3059e7b7 locks_free_lock +EXPORT_SYMBOL vmlinux 0x305a68b4 inet_release +EXPORT_SYMBOL vmlinux 0x305a916c __x86_indirect_thunk_rdi +EXPORT_SYMBOL vmlinux 0x3060084c kthread_bind +EXPORT_SYMBOL vmlinux 0x30638dd7 ip_mc_leave_group +EXPORT_SYMBOL vmlinux 0x308d096a vlan_vid_del +EXPORT_SYMBOL vmlinux 0x3096be16 names_cachep +EXPORT_SYMBOL vmlinux 0x309ec0a6 security_sctp_assoc_established +EXPORT_SYMBOL vmlinux 0x30a80826 __kfifo_from_user +EXPORT_SYMBOL vmlinux 0x30ac0ebe sk_capable +EXPORT_SYMBOL vmlinux 0x30acfde9 hsiphash_2u32 +EXPORT_SYMBOL vmlinux 0x30be282e from_kgid +EXPORT_SYMBOL vmlinux 0x30ef3ea5 validate_slab_cache +EXPORT_SYMBOL vmlinux 0x30f0cf1d udp_gro_receive +EXPORT_SYMBOL vmlinux 0x30f950be devm_register_netdev +EXPORT_SYMBOL vmlinux 0x310028de send_sig +EXPORT_SYMBOL vmlinux 0x31212b9b tty_vhangup +EXPORT_SYMBOL vmlinux 0x3126a9e8 siphash_1u64 +EXPORT_SYMBOL vmlinux 0x312c9f3f uart_remove_one_port +EXPORT_SYMBOL vmlinux 0x312ed932 verify_spi_info +EXPORT_SYMBOL vmlinux 0x31549b2a __x86_indirect_thunk_r10 +EXPORT_SYMBOL vmlinux 0x315a2bf5 asm_load_gs_index +EXPORT_SYMBOL vmlinux 0x316d1034 dqput +EXPORT_SYMBOL vmlinux 0x317c2efc netdev_unbind_sb_channel +EXPORT_SYMBOL vmlinux 0x319d47c8 lookup_one_qstr_excl +EXPORT_SYMBOL vmlinux 0x31d0538e tcf_exts_terse_dump +EXPORT_SYMBOL vmlinux 0x31d1ec30 processors +EXPORT_SYMBOL vmlinux 0x31d40628 tcf_idr_release +EXPORT_SYMBOL vmlinux 0x31de50f3 skb_copy_bits +EXPORT_SYMBOL vmlinux 0x31df5ee9 pnp_activate_dev +EXPORT_SYMBOL vmlinux 0x31f1497e pci_get_domain_bus_and_slot +EXPORT_SYMBOL vmlinux 0x3213f038 mutex_unlock +EXPORT_SYMBOL vmlinux 0x3216b133 flow_rule_match_ports +EXPORT_SYMBOL vmlinux 0x3221df67 __bitmap_subset +EXPORT_SYMBOL vmlinux 0x3228a9c3 xfrm_stateonly_find +EXPORT_SYMBOL vmlinux 0x322917f2 tcp_select_initial_window +EXPORT_SYMBOL vmlinux 0x322a63c5 netdev_warn +EXPORT_SYMBOL vmlinux 0x324741bc mmc_of_parse_clk_phase +EXPORT_SYMBOL vmlinux 0x324a69d9 tcp_mtu_to_mss +EXPORT_SYMBOL vmlinux 0x326425ca pci_unmap_biosrom +EXPORT_SYMBOL vmlinux 0x32654d43 clkdev_drop +EXPORT_SYMBOL vmlinux 0x32782883 mount_nodev +EXPORT_SYMBOL vmlinux 0x327c84bf vme_lm_attach +EXPORT_SYMBOL vmlinux 0x3283e6b0 prandom_seed_full_state +EXPORT_SYMBOL vmlinux 0x328d50fe configfs_remove_default_groups +EXPORT_SYMBOL vmlinux 0x328f32d8 scsi_device_put +EXPORT_SYMBOL vmlinux 0x32ab1ca8 sock_kmalloc +EXPORT_SYMBOL vmlinux 0x32c33315 mipi_dsi_dcs_get_display_brightness +EXPORT_SYMBOL vmlinux 0x32cdcb44 page_pool_destroy +EXPORT_SYMBOL vmlinux 0x32ce3777 radix_tree_preload +EXPORT_SYMBOL vmlinux 0x32d0644c cdev_init +EXPORT_SYMBOL vmlinux 0x32dd66f9 inc_node_page_state +EXPORT_SYMBOL vmlinux 0x32de75a8 __x86_indirect_call_thunk_rdi +EXPORT_SYMBOL vmlinux 0x32e338cd register_mii_timestamper +EXPORT_SYMBOL vmlinux 0x32e6f1a0 acpi_video_backlight_string +EXPORT_SYMBOL vmlinux 0x32e781e0 dm_kobject_release +EXPORT_SYMBOL vmlinux 0x32e8cfea mtree_load +EXPORT_SYMBOL vmlinux 0x331eeca0 rproc_remove_subdev +EXPORT_SYMBOL vmlinux 0x3324ef3b acpi_set_firmware_waking_vector +EXPORT_SYMBOL vmlinux 0x3325d66c d_move +EXPORT_SYMBOL vmlinux 0x333bfca1 hdmi_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x333d777f dquot_get_dqblk +EXPORT_SYMBOL vmlinux 0x334cfa94 tcp_v4_do_rcv +EXPORT_SYMBOL vmlinux 0x335f7d0e tty_insert_flip_string_flags +EXPORT_SYMBOL vmlinux 0x336026ad dquot_mark_dquot_dirty +EXPORT_SYMBOL vmlinux 0x3369ea44 mtree_insert_range +EXPORT_SYMBOL vmlinux 0x33736a1d __genradix_ptr_alloc +EXPORT_SYMBOL vmlinux 0x33810aca mr_rtm_dumproute +EXPORT_SYMBOL vmlinux 0x338632e8 serial8250_do_pm +EXPORT_SYMBOL vmlinux 0x339831b2 inet_frags_fini +EXPORT_SYMBOL vmlinux 0x33b84f74 copy_page +EXPORT_SYMBOL vmlinux 0x33d07fee __x86_indirect_call_thunk_r10 +EXPORT_SYMBOL vmlinux 0x33d0e84f pagecache_isize_extended +EXPORT_SYMBOL vmlinux 0x33d79626 tty_port_destroy +EXPORT_SYMBOL vmlinux 0x33dee5aa discard_new_inode +EXPORT_SYMBOL vmlinux 0x33ef0118 __cpuhp_setup_state +EXPORT_SYMBOL vmlinux 0x33f0768c cpufreq_quick_get_max +EXPORT_SYMBOL vmlinux 0x33f511c9 bpf_link_get_from_fd +EXPORT_SYMBOL vmlinux 0x33f90951 trace_raw_output_prep +EXPORT_SYMBOL vmlinux 0x33fcf44a __kfifo_out_r +EXPORT_SYMBOL vmlinux 0x33fd9da4 acpi_get_gpe_device +EXPORT_SYMBOL vmlinux 0x3402dc8b __write_overflow_field +EXPORT_SYMBOL vmlinux 0x3405bf3a padata_free +EXPORT_SYMBOL vmlinux 0x3408c6db seq_pad +EXPORT_SYMBOL vmlinux 0x340f46fc param_ops_bool +EXPORT_SYMBOL vmlinux 0x34194c33 peernet2id +EXPORT_SYMBOL vmlinux 0x343aa1c4 pcix_get_max_mmrbc +EXPORT_SYMBOL vmlinux 0x343b4e47 inet_csk_prepare_forced_close +EXPORT_SYMBOL vmlinux 0x3441445f msrs_free +EXPORT_SYMBOL vmlinux 0x347655ba blkdev_get_by_dev +EXPORT_SYMBOL vmlinux 0x347be039 elv_bio_merge_ok +EXPORT_SYMBOL vmlinux 0x3489859f acpi_enter_sleep_state_s4bios +EXPORT_SYMBOL vmlinux 0x349cba85 strchr +EXPORT_SYMBOL vmlinux 0x34a1f7e3 acpi_processor_get_psd +EXPORT_SYMBOL vmlinux 0x34a4413b mr_mfc_find_parent +EXPORT_SYMBOL vmlinux 0x34c7cdbc lookup_bdev +EXPORT_SYMBOL vmlinux 0x34db050b _raw_spin_lock_irqsave +EXPORT_SYMBOL vmlinux 0x34f3484e security_tun_dev_attach_queue +EXPORT_SYMBOL vmlinux 0x34f89363 acpi_terminate_debugger +EXPORT_SYMBOL vmlinux 0x3517383e register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x351dcf48 pcibios_bus_to_resource +EXPORT_SYMBOL vmlinux 0x351ea55c vm_iomap_memory +EXPORT_SYMBOL vmlinux 0x352894cd __tracepoint_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x3539f11b match_strlcpy +EXPORT_SYMBOL vmlinux 0x354b4a1e acpi_ut_trace +EXPORT_SYMBOL vmlinux 0x356461c8 rtc_time64_to_tm +EXPORT_SYMBOL vmlinux 0x35774c3f truncate_pagecache_range +EXPORT_SYMBOL vmlinux 0x35963413 dev_get_by_name_rcu +EXPORT_SYMBOL vmlinux 0x35a88f28 zlib_inflateInit2 +EXPORT_SYMBOL vmlinux 0x35a8ed2e vfs_get_link +EXPORT_SYMBOL vmlinux 0x35ad98f9 vm_insert_pages +EXPORT_SYMBOL vmlinux 0x35c9dce8 filemap_invalidate_unlock_two +EXPORT_SYMBOL vmlinux 0x35cd4290 __sock_i_ino +EXPORT_SYMBOL vmlinux 0x35ed93c2 devm_kvasprintf +EXPORT_SYMBOL vmlinux 0x35ef8a2c fb_set_cmap +EXPORT_SYMBOL vmlinux 0x35ff5c6b sync_mapping_buffers +EXPORT_SYMBOL vmlinux 0x36038449 get_task_cred +EXPORT_SYMBOL vmlinux 0x360b1afe probe_irq_mask +EXPORT_SYMBOL vmlinux 0x3612f619 dm_table_get_md +EXPORT_SYMBOL vmlinux 0x3615d673 neigh_xmit +EXPORT_SYMBOL vmlinux 0x3619e7bd ip_fraglist_init +EXPORT_SYMBOL vmlinux 0x361f4c0a kobject_del +EXPORT_SYMBOL vmlinux 0x3620ee40 bio_integrity_prep +EXPORT_SYMBOL vmlinux 0x3625e70e simple_link +EXPORT_SYMBOL vmlinux 0x364850b1 down_write_killable +EXPORT_SYMBOL vmlinux 0x364c23ad mutex_is_locked +EXPORT_SYMBOL vmlinux 0x364c511d phy_validate_pause +EXPORT_SYMBOL vmlinux 0x365acda7 set_normalized_timespec64 +EXPORT_SYMBOL vmlinux 0x365e7911 kstrdup_const +EXPORT_SYMBOL vmlinux 0x366707c9 jent_testing_init +EXPORT_SYMBOL vmlinux 0x36853bb3 devm_clk_get +EXPORT_SYMBOL vmlinux 0x3696bc8a single_open +EXPORT_SYMBOL vmlinux 0x36ad127c dma_unmap_page_attrs +EXPORT_SYMBOL vmlinux 0x36b6ebbf down_killable +EXPORT_SYMBOL vmlinux 0x36c50e85 nf_unregister_sockopt +EXPORT_SYMBOL vmlinux 0x370b7555 vfs_dedupe_file_range_one +EXPORT_SYMBOL vmlinux 0x370c53bf nvdimm_bus_unlock +EXPORT_SYMBOL vmlinux 0x37110088 remove_wait_queue +EXPORT_SYMBOL vmlinux 0x371dc9ad dma_resv_replace_fences +EXPORT_SYMBOL vmlinux 0x371e1953 __printk_cpu_sync_wait +EXPORT_SYMBOL vmlinux 0x3733a276 phy_ethtool_set_wol +EXPORT_SYMBOL vmlinux 0x373ad86b dma_async_device_register +EXPORT_SYMBOL vmlinux 0x3744cf36 vmalloc_to_pfn +EXPORT_SYMBOL vmlinux 0x3755f990 gf128mul_init_64k_bbe +EXPORT_SYMBOL vmlinux 0x377d8004 acpi_error +EXPORT_SYMBOL vmlinux 0x3795eaca setup_new_exec +EXPORT_SYMBOL vmlinux 0x3795f1ac key_move +EXPORT_SYMBOL vmlinux 0x379812f0 xfrm_state_add +EXPORT_SYMBOL vmlinux 0x37a6416a sg_miter_stop +EXPORT_SYMBOL vmlinux 0x37b1025b serial8250_do_set_termios +EXPORT_SYMBOL vmlinux 0x37b3dead netdev_adjacent_change_commit +EXPORT_SYMBOL vmlinux 0x37b8b39e screen_info +EXPORT_SYMBOL vmlinux 0x37bd1ef6 ip_check_defrag +EXPORT_SYMBOL vmlinux 0x37befc70 jiffies_to_msecs +EXPORT_SYMBOL vmlinux 0x37d2db8e unregister_filesystem +EXPORT_SYMBOL vmlinux 0x37db8f19 dmi_get_date +EXPORT_SYMBOL vmlinux 0x37e3fadc vga_switcheroo_fini_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x37e92440 shrink_dcache_sb +EXPORT_SYMBOL vmlinux 0x37f1dd62 netif_napi_add_weight +EXPORT_SYMBOL vmlinux 0x37f7e133 eth_header +EXPORT_SYMBOL vmlinux 0x38007a82 sock_alloc_file +EXPORT_SYMBOL vmlinux 0x3805fe54 __vfs_setxattr +EXPORT_SYMBOL vmlinux 0x381a798a setup_max_cpus +EXPORT_SYMBOL vmlinux 0x3854774b kstrtoll +EXPORT_SYMBOL vmlinux 0x3856ddf2 scsi_report_opcode +EXPORT_SYMBOL vmlinux 0x3882ae1e ww_mutex_trylock +EXPORT_SYMBOL vmlinux 0x38869d88 kstat +EXPORT_SYMBOL vmlinux 0x388e860c netpoll_send_skb +EXPORT_SYMBOL vmlinux 0x3891ffc8 ecryptfs_fill_auth_tok +EXPORT_SYMBOL vmlinux 0x389617b0 LZ4_decompress_fast_continue +EXPORT_SYMBOL vmlinux 0x389a3bdf fput +EXPORT_SYMBOL vmlinux 0x38a20e60 xfrm_policy_walk +EXPORT_SYMBOL vmlinux 0x38a4f3c3 blk_mq_complete_request +EXPORT_SYMBOL vmlinux 0x38a71b7e pci_free_resource_list +EXPORT_SYMBOL vmlinux 0x38a85d84 __post_watch_notification +EXPORT_SYMBOL vmlinux 0x38a9f7c5 in6addr_loopback +EXPORT_SYMBOL vmlinux 0x38aab936 __traceiter_spi_transfer_start +EXPORT_SYMBOL vmlinux 0x38b2ed91 capable_wrt_inode_uidgid +EXPORT_SYMBOL vmlinux 0x38b71110 pci_remove_bus +EXPORT_SYMBOL vmlinux 0x38e46431 mempool_exit +EXPORT_SYMBOL vmlinux 0x38ffb8d9 try_module_get +EXPORT_SYMBOL vmlinux 0x39081193 __max_logical_packages +EXPORT_SYMBOL vmlinux 0x39084031 jbd2_journal_ack_err +EXPORT_SYMBOL vmlinux 0x391599da mdiobus_unregister_device +EXPORT_SYMBOL vmlinux 0x391df80a netstamp_needed_key +EXPORT_SYMBOL vmlinux 0x392b1fea wait_for_completion_io +EXPORT_SYMBOL vmlinux 0x392f24ec folio_mark_accessed +EXPORT_SYMBOL vmlinux 0x3939f8f0 rfkill_pause_polling +EXPORT_SYMBOL vmlinux 0x39461d6a in_egroup_p +EXPORT_SYMBOL vmlinux 0x3948d486 tcp_sock_set_keepintvl +EXPORT_SYMBOL vmlinux 0x3948e36a rproc_get_by_child +EXPORT_SYMBOL vmlinux 0x394a1e11 phy_sfp_attach +EXPORT_SYMBOL vmlinux 0x3955fcf6 __kfifo_in_r +EXPORT_SYMBOL vmlinux 0x3962bdff skb_eth_pop +EXPORT_SYMBOL vmlinux 0x39991865 icmp_global_allow +EXPORT_SYMBOL vmlinux 0x399ad043 __kfifo_dma_out_finish_r +EXPORT_SYMBOL vmlinux 0x39b12223 __acpi_handle_debug +EXPORT_SYMBOL vmlinux 0x39c1555c ppp_channel_index +EXPORT_SYMBOL vmlinux 0x39c74235 dm_read_arg_group +EXPORT_SYMBOL vmlinux 0x39cdc099 security_sb_mnt_opts_compat +EXPORT_SYMBOL vmlinux 0x39cf7897 ioc_lookup_icq +EXPORT_SYMBOL vmlinux 0x39d95ca4 zstd_reset_cstream +EXPORT_SYMBOL vmlinux 0x39dd0325 tcp_md5_do_del +EXPORT_SYMBOL vmlinux 0x39e3c030 do_trace_read_msr +EXPORT_SYMBOL vmlinux 0x39f0d987 __quota_error +EXPORT_SYMBOL vmlinux 0x3a08475f platform_thermal_notify +EXPORT_SYMBOL vmlinux 0x3a099605 __get_user_nocheck_4 +EXPORT_SYMBOL vmlinux 0x3a0ad110 nf_ip6_checksum +EXPORT_SYMBOL vmlinux 0x3a1c78f3 mipi_dsi_device_unregister +EXPORT_SYMBOL vmlinux 0x3a2138d3 vfs_parse_fs_string +EXPORT_SYMBOL vmlinux 0x3a24e01b phy_ethtool_get_sset_count +EXPORT_SYMBOL vmlinux 0x3a2d1dfa rdmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0x3a46ebe6 filemap_fdatawrite +EXPORT_SYMBOL vmlinux 0x3a4f9d28 rng_is_initialized +EXPORT_SYMBOL vmlinux 0x3a516709 __cpuhp_setup_state_cpuslocked +EXPORT_SYMBOL vmlinux 0x3a5fb5f0 netdev_sk_get_lowest_dev +EXPORT_SYMBOL vmlinux 0x3a78bdca md_wait_for_blocked_rdev +EXPORT_SYMBOL vmlinux 0x3a79cb08 vme_bus_num +EXPORT_SYMBOL vmlinux 0x3a7ef2dc handshake_genl_put +EXPORT_SYMBOL vmlinux 0x3a8d148f vme_lm_request +EXPORT_SYMBOL vmlinux 0x3a9fc600 dst_discard_out +EXPORT_SYMBOL vmlinux 0x3aab8795 max8998_bulk_write +EXPORT_SYMBOL vmlinux 0x3ab28948 console_srcu_read_lock +EXPORT_SYMBOL vmlinux 0x3ab7b1cc scsi_set_sense_field_pointer +EXPORT_SYMBOL vmlinux 0x3ab90eed kern_path +EXPORT_SYMBOL vmlinux 0x3aca0190 _raw_write_lock_irq +EXPORT_SYMBOL vmlinux 0x3ad5cda3 lockref_get_not_zero +EXPORT_SYMBOL vmlinux 0x3ad7a5d5 acpi_evaluate_reference +EXPORT_SYMBOL vmlinux 0x3ada9e06 acpi_check_region +EXPORT_SYMBOL vmlinux 0x3ade482a flow_block_cb_setup_simple +EXPORT_SYMBOL vmlinux 0x3ae34aeb zstd_init_dctx +EXPORT_SYMBOL vmlinux 0x3ae36fef blk_queue_flag_set +EXPORT_SYMBOL vmlinux 0x3aeb1cfc napi_gro_frags +EXPORT_SYMBOL vmlinux 0x3af10bec scsi_execute_cmd +EXPORT_SYMBOL vmlinux 0x3af2f3d1 sock_ioctl_inout +EXPORT_SYMBOL vmlinux 0x3afc3f25 udp_pre_connect +EXPORT_SYMBOL vmlinux 0x3afec53b sock_no_connect +EXPORT_SYMBOL vmlinux 0x3afed12d key_type_keyring +EXPORT_SYMBOL vmlinux 0x3aff3200 acpi_evaluate_object_typed +EXPORT_SYMBOL vmlinux 0x3b00da82 d_alloc +EXPORT_SYMBOL vmlinux 0x3b029f48 acpi_install_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x3b04b0d3 invalidate_disk +EXPORT_SYMBOL vmlinux 0x3b13590d jbd2_journal_init_dev +EXPORT_SYMBOL vmlinux 0x3b1f1bdb nf_setsockopt +EXPORT_SYMBOL vmlinux 0x3b24e9c3 tcp_filter +EXPORT_SYMBOL vmlinux 0x3b321462 LZ4_setStreamDecode +EXPORT_SYMBOL vmlinux 0x3b3b7073 scsi_block_when_processing_errors +EXPORT_SYMBOL vmlinux 0x3b423410 __copy_user_nocache +EXPORT_SYMBOL vmlinux 0x3b42a8f7 scsi_set_medium_removal +EXPORT_SYMBOL vmlinux 0x3b644591 __bitmap_shift_left +EXPORT_SYMBOL vmlinux 0x3b6c41ea kstrtouint +EXPORT_SYMBOL vmlinux 0x3b718880 ptp_clock_unregister +EXPORT_SYMBOL vmlinux 0x3b79f331 __filemap_get_folio +EXPORT_SYMBOL vmlinux 0x3b80f727 i2c_verify_adapter +EXPORT_SYMBOL vmlinux 0x3b83610f cpu_sibling_map +EXPORT_SYMBOL vmlinux 0x3b9144c9 acpi_get_current_resources +EXPORT_SYMBOL vmlinux 0x3b9ca57f phy_drivers_register +EXPORT_SYMBOL vmlinux 0x3ba0a6ca unregister_cdrom +EXPORT_SYMBOL vmlinux 0x3ba2e41f tty_unregister_ldisc +EXPORT_SYMBOL vmlinux 0x3ba694cf mipi_dsi_attach +EXPORT_SYMBOL vmlinux 0x3bb1b6f4 sock_wfree +EXPORT_SYMBOL vmlinux 0x3bb4480b pci_iomap +EXPORT_SYMBOL vmlinux 0x3bbc2acb pv_ops +EXPORT_SYMBOL vmlinux 0x3be37b16 __ClearPageMovable +EXPORT_SYMBOL vmlinux 0x3bee8a65 devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x3c185c61 page_put_link +EXPORT_SYMBOL vmlinux 0x3c20d786 agp_generic_alloc_by_type +EXPORT_SYMBOL vmlinux 0x3c22fb6b __mdiobus_c45_read +EXPORT_SYMBOL vmlinux 0x3c3cc010 iw_handler_get_thrspy +EXPORT_SYMBOL vmlinux 0x3c3fce39 __local_bh_enable_ip +EXPORT_SYMBOL vmlinux 0x3c3ff9fd sprintf +EXPORT_SYMBOL vmlinux 0x3c427f67 cpu_die_map +EXPORT_SYMBOL vmlinux 0x3c43a755 param_set_invbool +EXPORT_SYMBOL vmlinux 0x3c7fffad read_cache_folio +EXPORT_SYMBOL vmlinux 0x3c97b76b dev_mc_unsync +EXPORT_SYMBOL vmlinux 0x3cac1d80 cdrom_check_events +EXPORT_SYMBOL vmlinux 0x3cb14b23 register_filesystem +EXPORT_SYMBOL vmlinux 0x3cb23db3 console_srcu_read_unlock +EXPORT_SYMBOL vmlinux 0x3cbaffcf __folio_put +EXPORT_SYMBOL vmlinux 0x3cbb940b zstd_init_dstream +EXPORT_SYMBOL vmlinux 0x3cbf1fed dev_kfree_skb_irq_reason +EXPORT_SYMBOL vmlinux 0x3cc17fa0 textsearch_destroy +EXPORT_SYMBOL vmlinux 0x3cc37535 jbd2__journal_restart +EXPORT_SYMBOL vmlinux 0x3cd517f1 kill_pid +EXPORT_SYMBOL vmlinux 0x3cd7d530 phy_reset_after_clk_enable +EXPORT_SYMBOL vmlinux 0x3ce4ca6f disable_irq +EXPORT_SYMBOL vmlinux 0x3d04c78b ___pskb_trim +EXPORT_SYMBOL vmlinux 0x3d191f4a pcie_capability_clear_and_set_word_locked +EXPORT_SYMBOL vmlinux 0x3d210724 gen_pool_dma_zalloc_align +EXPORT_SYMBOL vmlinux 0x3d2f9ddd user_revoke +EXPORT_SYMBOL vmlinux 0x3d4e9d34 fib_notifier_ops_unregister +EXPORT_SYMBOL vmlinux 0x3d66c15e neigh_connected_output +EXPORT_SYMBOL vmlinux 0x3d7bac46 posix_acl_from_xattr +EXPORT_SYMBOL vmlinux 0x3d8281d2 blk_set_queue_depth +EXPORT_SYMBOL vmlinux 0x3da092b8 dma_fence_get_stub +EXPORT_SYMBOL vmlinux 0x3da171f9 pci_mem_start +EXPORT_SYMBOL vmlinux 0x3daae96c dma_fence_signal_timestamp +EXPORT_SYMBOL vmlinux 0x3dabd08e i2c_smbus_read_word_data +EXPORT_SYMBOL vmlinux 0x3dabf271 memcg_sockets_enabled_key +EXPORT_SYMBOL vmlinux 0x3dac779a bpf_sk_lookup_enabled +EXPORT_SYMBOL vmlinux 0x3dad9978 cancel_delayed_work +EXPORT_SYMBOL vmlinux 0x3dc619d3 swake_up_locked +EXPORT_SYMBOL vmlinux 0x3dcb88a0 irq_set_handler_data +EXPORT_SYMBOL vmlinux 0x3ddc6c04 x86_bios_cpu_apicid +EXPORT_SYMBOL vmlinux 0x3ddf616c mmc_set_blocklen +EXPORT_SYMBOL vmlinux 0x3dfb86b9 resource_list_create_entry +EXPORT_SYMBOL vmlinux 0x3dfc897c seq_hlist_start_head +EXPORT_SYMBOL vmlinux 0x3e0ad88e input_mt_assign_slots +EXPORT_SYMBOL vmlinux 0x3e1e61a3 tcf_qevent_init +EXPORT_SYMBOL vmlinux 0x3e34c15c netif_set_xps_queue +EXPORT_SYMBOL vmlinux 0x3e36a81c reuseport_migrate_sock +EXPORT_SYMBOL vmlinux 0x3e3bad0a __tasklet_hi_schedule +EXPORT_SYMBOL vmlinux 0x3e3c9dcc dquot_claim_space_nodirty +EXPORT_SYMBOL vmlinux 0x3e4f4298 jbd2_journal_check_available_features +EXPORT_SYMBOL vmlinux 0x3e61fcf9 pci_bus_write_config_byte +EXPORT_SYMBOL vmlinux 0x3e642c2b register_netdevice_notifier_net +EXPORT_SYMBOL vmlinux 0x3e68df42 __netlink_dump_start +EXPORT_SYMBOL vmlinux 0x3e89a2e1 inet_csk_accept +EXPORT_SYMBOL vmlinux 0x3e89d919 mmc_retune_timer_stop +EXPORT_SYMBOL vmlinux 0x3e8ccade sock_dequeue_err_skb +EXPORT_SYMBOL vmlinux 0x3e9767ef phy_ethtool_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x3ea2aa4a dec_zone_page_state +EXPORT_SYMBOL vmlinux 0x3ea72a1c vif_device_init +EXPORT_SYMBOL vmlinux 0x3eccbe2c __find_nth_bit +EXPORT_SYMBOL vmlinux 0x3ee96c22 rproc_free +EXPORT_SYMBOL vmlinux 0x3eebd193 flow_block_cb_decref +EXPORT_SYMBOL vmlinux 0x3eef4210 tty_port_close +EXPORT_SYMBOL vmlinux 0x3ef68405 may_setattr +EXPORT_SYMBOL vmlinux 0x3ef69adf __blk_rq_map_sg +EXPORT_SYMBOL vmlinux 0x3efa7af1 mmc_is_req_done +EXPORT_SYMBOL vmlinux 0x3efe1703 phy_unregister_fixup_for_id +EXPORT_SYMBOL vmlinux 0x3f0b71d2 proto_register +EXPORT_SYMBOL vmlinux 0x3f0eabd2 xxh64_update +EXPORT_SYMBOL vmlinux 0x3f296ced nf_log_unbind_pf +EXPORT_SYMBOL vmlinux 0x3f34644d zstd_dstream_workspace_bound +EXPORT_SYMBOL vmlinux 0x3f3c89c8 scsicam_bios_param +EXPORT_SYMBOL vmlinux 0x3f4539cf unlock_rename +EXPORT_SYMBOL vmlinux 0x3f4547a7 put_unused_fd +EXPORT_SYMBOL vmlinux 0x3f4bd846 gen_pool_first_fit_order_align +EXPORT_SYMBOL vmlinux 0x3f6a64e0 sk_stream_kill_queues +EXPORT_SYMBOL vmlinux 0x3f6f099c filemap_fdatawait_range_keep_errors +EXPORT_SYMBOL vmlinux 0x3f759473 __netdev_notify_peers +EXPORT_SYMBOL vmlinux 0x3f86a72b inode_init_once +EXPORT_SYMBOL vmlinux 0x3f89071b security_ib_pkey_access +EXPORT_SYMBOL vmlinux 0x3f9061eb security_skb_classify_flow +EXPORT_SYMBOL vmlinux 0x3fb3288c pci_fixup_device +EXPORT_SYMBOL vmlinux 0x3fb64103 inode_init_owner +EXPORT_SYMBOL vmlinux 0x3fb6c8ac iov_iter_alignment +EXPORT_SYMBOL vmlinux 0x3fbd8698 udp_lib_unhash +EXPORT_SYMBOL vmlinux 0x3fbf0a5e mr_mfc_seq_idx +EXPORT_SYMBOL vmlinux 0x3fbf3c89 vme_slave_set +EXPORT_SYMBOL vmlinux 0x3fd78f3b register_chrdev_region +EXPORT_SYMBOL vmlinux 0x3fe2ccbe memweight +EXPORT_SYMBOL vmlinux 0x3ff07027 mdio_bus_type +EXPORT_SYMBOL vmlinux 0x3ff3262d __d_lookup_unhash_wake +EXPORT_SYMBOL vmlinux 0x400147a0 skb_kill_datagram +EXPORT_SYMBOL vmlinux 0x4009e806 ipv4_mtu +EXPORT_SYMBOL vmlinux 0x40185f4f eth_header_parse +EXPORT_SYMBOL vmlinux 0x401ae51c sock_init_data +EXPORT_SYMBOL vmlinux 0x401eef5a blkdev_compat_ptr_ioctl +EXPORT_SYMBOL vmlinux 0x401f9a3b neigh_sysctl_register +EXPORT_SYMBOL vmlinux 0x40436248 __dynamic_dev_dbg +EXPORT_SYMBOL vmlinux 0x4055a920 acpi_remove_fixed_event_handler +EXPORT_SYMBOL vmlinux 0x405ef874 vfs_readlink +EXPORT_SYMBOL vmlinux 0x4061b4b2 sock_create_kern +EXPORT_SYMBOL vmlinux 0x406d92d2 dev_load +EXPORT_SYMBOL vmlinux 0x40765afe con_is_visible +EXPORT_SYMBOL vmlinux 0x407da0dc param_ops_uint +EXPORT_SYMBOL vmlinux 0x40973662 sysctl_udp_mem +EXPORT_SYMBOL vmlinux 0x409bb7e9 udp_lib_get_port +EXPORT_SYMBOL vmlinux 0x40a62432 __nla_validate +EXPORT_SYMBOL vmlinux 0x40a9b349 vzalloc +EXPORT_SYMBOL vmlinux 0x40c7247c si_meminfo +EXPORT_SYMBOL vmlinux 0x40ca5f2d ptp_clock_register +EXPORT_SYMBOL vmlinux 0x40d04664 console_trylock +EXPORT_SYMBOL vmlinux 0x40d59096 unregister_restart_handler +EXPORT_SYMBOL vmlinux 0x40e21b67 __sock_create +EXPORT_SYMBOL vmlinux 0x40ea6660 __netif_rx +EXPORT_SYMBOL vmlinux 0x40f76a86 __vcalloc +EXPORT_SYMBOL vmlinux 0x40fc7bd0 rproc_shutdown +EXPORT_SYMBOL vmlinux 0x4120718c scsi_remove_device +EXPORT_SYMBOL vmlinux 0x412b095e dm_table_run_md_queue_async +EXPORT_SYMBOL vmlinux 0x412f893c page_offline_begin +EXPORT_SYMBOL vmlinux 0x41362917 rproc_mem_entry_init +EXPORT_SYMBOL vmlinux 0x41367ce1 security_sk_clone +EXPORT_SYMBOL vmlinux 0x41482d8b strndup_user +EXPORT_SYMBOL vmlinux 0x417c1cd5 __aperture_remove_legacy_vga_devices +EXPORT_SYMBOL vmlinux 0x417fdcd7 __scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x417fece2 cdrom_mode_sense +EXPORT_SYMBOL vmlinux 0x4188ce72 generic_read_dir +EXPORT_SYMBOL vmlinux 0x4188d439 neigh_rand_reach_time +EXPORT_SYMBOL vmlinux 0x418b17bd napi_consume_skb +EXPORT_SYMBOL vmlinux 0x4198a2fe jbd2_fc_end_commit +EXPORT_SYMBOL vmlinux 0x41a30bef mtree_store_range +EXPORT_SYMBOL vmlinux 0x41a8f9b7 dev_mc_add_excl +EXPORT_SYMBOL vmlinux 0x41a9bf00 inode_add_bytes +EXPORT_SYMBOL vmlinux 0x41b1a1b8 twl6040_set_bits +EXPORT_SYMBOL vmlinux 0x41c60ba7 pci_bus_assign_resources +EXPORT_SYMBOL vmlinux 0x41d54ede xfrm_register_type +EXPORT_SYMBOL vmlinux 0x41de6397 netif_rx +EXPORT_SYMBOL vmlinux 0x41e0b611 setattr_should_drop_sgid +EXPORT_SYMBOL vmlinux 0x41e1c831 path_is_under +EXPORT_SYMBOL vmlinux 0x41ed3709 get_random_bytes +EXPORT_SYMBOL vmlinux 0x41efdeaf radix_tree_lookup_slot +EXPORT_SYMBOL vmlinux 0x42137e5e vme_master_mmap +EXPORT_SYMBOL vmlinux 0x42150844 netdev_upper_get_next_dev_rcu +EXPORT_SYMBOL vmlinux 0x4228083e cont_write_begin +EXPORT_SYMBOL vmlinux 0x422d9b74 param_set_ullong +EXPORT_SYMBOL vmlinux 0x4231d3f8 elv_rb_add +EXPORT_SYMBOL vmlinux 0x4238afe2 phy_get_internal_delay +EXPORT_SYMBOL vmlinux 0x423d461f pci_irq_vector +EXPORT_SYMBOL vmlinux 0x42473e66 tcp_v4_md5_hash_skb +EXPORT_SYMBOL vmlinux 0x4248ae3c single_task_running +EXPORT_SYMBOL vmlinux 0x424d3620 zlib_inflateIncomp +EXPORT_SYMBOL vmlinux 0x42530b7c dst_destroy +EXPORT_SYMBOL vmlinux 0x4253ed1c input_alloc_absinfo +EXPORT_SYMBOL vmlinux 0x42578e80 acpi_get_type +EXPORT_SYMBOL vmlinux 0x425b2bba pcie_capability_clear_and_set_word_unlocked +EXPORT_SYMBOL vmlinux 0x425f7397 seq_dentry +EXPORT_SYMBOL vmlinux 0x426d2b73 genphy_read_mmd_unsupported +EXPORT_SYMBOL vmlinux 0x426ef1cc genphy_restart_aneg +EXPORT_SYMBOL vmlinux 0x427b0766 dma_async_tx_descriptor_init +EXPORT_SYMBOL vmlinux 0x42a3c569 rdmacg_uncharge +EXPORT_SYMBOL vmlinux 0x42aa7531 rt_mutex_base_init +EXPORT_SYMBOL vmlinux 0x42b40f16 inet6_release +EXPORT_SYMBOL vmlinux 0x42bb5bde ipv6_setsockopt +EXPORT_SYMBOL vmlinux 0x42bed8d4 unix_gc_lock +EXPORT_SYMBOL vmlinux 0x42ca7506 qdisc_watchdog_schedule_range_ns +EXPORT_SYMBOL vmlinux 0x42cd612e tcp_mtup_init +EXPORT_SYMBOL vmlinux 0x42d75c26 iommu_get_msi_cookie +EXPORT_SYMBOL vmlinux 0x42e0f24b xp_alloc +EXPORT_SYMBOL vmlinux 0x42e406af tcp_seq_start +EXPORT_SYMBOL vmlinux 0x42eac349 acpi_dev_hid_uid_match +EXPORT_SYMBOL vmlinux 0x42f1b900 fb_pad_unaligned_buffer +EXPORT_SYMBOL vmlinux 0x4302d0eb free_pages +EXPORT_SYMBOL vmlinux 0x4307c8e5 blk_sync_queue +EXPORT_SYMBOL vmlinux 0x432bd877 vme_irq_handler +EXPORT_SYMBOL vmlinux 0x432eb103 pneigh_lookup +EXPORT_SYMBOL vmlinux 0x43361c86 flow_indr_dev_unregister +EXPORT_SYMBOL vmlinux 0x4336fcca ucs2_as_utf8 +EXPORT_SYMBOL vmlinux 0x433cabfb acpi_decode_pld_buffer +EXPORT_SYMBOL vmlinux 0x433cb0e5 get_tree_single_reconf +EXPORT_SYMBOL vmlinux 0x43402610 wake_up_process +EXPORT_SYMBOL vmlinux 0x43463e34 mipi_dsi_dcs_exit_sleep_mode +EXPORT_SYMBOL vmlinux 0x4351577a fb_parse_edid +EXPORT_SYMBOL vmlinux 0x437a0d6d __sock_tx_timestamp +EXPORT_SYMBOL vmlinux 0x437a8c91 i2c_get_adapter +EXPORT_SYMBOL vmlinux 0x4384633e register_md_cluster_operations +EXPORT_SYMBOL vmlinux 0x438610bd security_tun_dev_alloc_security +EXPORT_SYMBOL vmlinux 0x43863e49 blk_post_runtime_resume +EXPORT_SYMBOL vmlinux 0x438f61ee tcp_openreq_init_rwin +EXPORT_SYMBOL vmlinux 0x43a2297e pnp_unregister_driver +EXPORT_SYMBOL vmlinux 0x43b945ac napi_build_skb +EXPORT_SYMBOL vmlinux 0x43babd19 sg_init_one +EXPORT_SYMBOL vmlinux 0x43d03868 vfs_llseek +EXPORT_SYMBOL vmlinux 0x43d22fb9 groups_alloc +EXPORT_SYMBOL vmlinux 0x43d4561e tcp_md5_do_add +EXPORT_SYMBOL vmlinux 0x43e05b84 netdev_rx_csum_fault +EXPORT_SYMBOL vmlinux 0x43e5fc18 elv_rb_del +EXPORT_SYMBOL vmlinux 0x43e77162 inet_frags_init +EXPORT_SYMBOL vmlinux 0x43f0358e lock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x43f9232a mmc_alloc_host +EXPORT_SYMBOL vmlinux 0x43f9ebc8 slhc_remember +EXPORT_SYMBOL vmlinux 0x43fcae1b dev_mc_sync_multiple +EXPORT_SYMBOL vmlinux 0x440e1343 security_sctp_sk_clone +EXPORT_SYMBOL vmlinux 0x441283ad pcim_iomap_regions +EXPORT_SYMBOL vmlinux 0x441df04f genl_register_family +EXPORT_SYMBOL vmlinux 0x44359500 submit_bio_wait +EXPORT_SYMBOL vmlinux 0x4436bc93 inet6_add_offload +EXPORT_SYMBOL vmlinux 0x44414ff2 iosf_mbi_unblock_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x4445c670 dcb_ieee_delapp +EXPORT_SYMBOL vmlinux 0x44469a76 crc_ccitt_false_table +EXPORT_SYMBOL vmlinux 0x44623137 dm_kcopyd_copy +EXPORT_SYMBOL vmlinux 0x4462d35e cpufreq_get_hw_max_freq +EXPORT_SYMBOL vmlinux 0x44714939 rproc_report_crash +EXPORT_SYMBOL vmlinux 0x447aa40a dma_map_resource +EXPORT_SYMBOL vmlinux 0x4482aea1 __sk_backlog_rcv +EXPORT_SYMBOL vmlinux 0x44874917 xfrm_register_type_offload +EXPORT_SYMBOL vmlinux 0x448d02f0 max8998_bulk_read +EXPORT_SYMBOL vmlinux 0x44902cff acpi_enable_event +EXPORT_SYMBOL vmlinux 0x4496c444 flow_rule_match_ports_range +EXPORT_SYMBOL vmlinux 0x449ad0a7 memcmp +EXPORT_SYMBOL vmlinux 0x44aaf30f tsc_khz +EXPORT_SYMBOL vmlinux 0x44b8af26 dma_sync_single_for_device +EXPORT_SYMBOL vmlinux 0x44e9a829 match_token +EXPORT_SYMBOL vmlinux 0x44eb8c51 mfd_remove_devices_late +EXPORT_SYMBOL vmlinux 0x44ff46b4 bdi_set_max_ratio +EXPORT_SYMBOL vmlinux 0x45006cee default_red +EXPORT_SYMBOL vmlinux 0x450639ab sg_last +EXPORT_SYMBOL vmlinux 0x45081703 ec_get_handle +EXPORT_SYMBOL vmlinux 0x45106ef0 __blk_mq_alloc_disk +EXPORT_SYMBOL vmlinux 0x452ba683 ipv6_ext_hdr +EXPORT_SYMBOL vmlinux 0x453211ff skb_mac_gso_segment +EXPORT_SYMBOL vmlinux 0x453c8403 pci_msi_enabled +EXPORT_SYMBOL vmlinux 0x45535485 xxh32_update +EXPORT_SYMBOL vmlinux 0x45674d00 inet_get_local_port_range +EXPORT_SYMBOL vmlinux 0x456e4598 pci_scan_slot +EXPORT_SYMBOL vmlinux 0x4578f528 __kfifo_to_user +EXPORT_SYMBOL vmlinux 0x458ac57e tcp_seq_next +EXPORT_SYMBOL vmlinux 0x45a7a1c7 csum_and_copy_from_iter +EXPORT_SYMBOL vmlinux 0x45bff97e tty_port_lower_dtr_rts +EXPORT_SYMBOL vmlinux 0x45c6fdda sock_queue_rcv_skb_reason +EXPORT_SYMBOL vmlinux 0x45d0edb6 tcf_idr_check_alloc +EXPORT_SYMBOL vmlinux 0x45d246da node_to_cpumask_map +EXPORT_SYMBOL vmlinux 0x45e8d7b5 native_write_cr0 +EXPORT_SYMBOL vmlinux 0x45eca1ed eth_gro_receive +EXPORT_SYMBOL vmlinux 0x45f0d2d2 inet6_del_protocol +EXPORT_SYMBOL vmlinux 0x45f76273 fs_param_is_enum +EXPORT_SYMBOL vmlinux 0x45fc19d2 retbleed_untrain_ret +EXPORT_SYMBOL vmlinux 0x460f4a34 flow_hash_from_keys +EXPORT_SYMBOL vmlinux 0x463b9baf md_wakeup_thread +EXPORT_SYMBOL vmlinux 0x46451cee zstd_get_frame_header +EXPORT_SYMBOL vmlinux 0x464e23a1 pci_iomap_range +EXPORT_SYMBOL vmlinux 0x4650f56c mmc_wait_for_req +EXPORT_SYMBOL vmlinux 0x46572cf9 netdev_set_num_tc +EXPORT_SYMBOL vmlinux 0x465e24ff ucs2_utf8size +EXPORT_SYMBOL vmlinux 0x466c14a7 __delay +EXPORT_SYMBOL vmlinux 0x467ac428 dquot_load_quota_inode +EXPORT_SYMBOL vmlinux 0x467df16d netdev_rss_key_fill +EXPORT_SYMBOL vmlinux 0x469a6ec7 tcp_parse_md5sig_option +EXPORT_SYMBOL vmlinux 0x46a5aa93 pci_bus_add_devices +EXPORT_SYMBOL vmlinux 0x46ab96d8 pcie_get_mps +EXPORT_SYMBOL vmlinux 0x46bd5d6e video_get_options +EXPORT_SYMBOL vmlinux 0x46c47fb6 __node_distance +EXPORT_SYMBOL vmlinux 0x46c69a14 pci_unmap_rom +EXPORT_SYMBOL vmlinux 0x46cf10eb cachemode2protval +EXPORT_SYMBOL vmlinux 0x46d14a90 seq_file_path +EXPORT_SYMBOL vmlinux 0x4715a909 acpi_load_table +EXPORT_SYMBOL vmlinux 0x47160b25 pci_enable_ptm +EXPORT_SYMBOL vmlinux 0x4723dca2 tcf_qevent_destroy +EXPORT_SYMBOL vmlinux 0x473348aa bdi_register +EXPORT_SYMBOL vmlinux 0x4740b3bc xen_arch_unregister_cpu +EXPORT_SYMBOL vmlinux 0x474ab249 end_page_writeback +EXPORT_SYMBOL vmlinux 0x4759173b mipi_dsi_dcs_set_display_on +EXPORT_SYMBOL vmlinux 0x4763b366 alloc_anon_inode +EXPORT_SYMBOL vmlinux 0x47657e0b devfreq_resume_device +EXPORT_SYMBOL vmlinux 0x4766a378 gro_cells_init +EXPORT_SYMBOL vmlinux 0x47709e42 free_anon_bdev +EXPORT_SYMBOL vmlinux 0x47973dcd rps_may_expire_flow +EXPORT_SYMBOL vmlinux 0x47a66615 icmp6_send +EXPORT_SYMBOL vmlinux 0x47b143ac pipe_unlock +EXPORT_SYMBOL vmlinux 0x47b8e2b8 tcp_sock_set_syncnt +EXPORT_SYMBOL vmlinux 0x47c1cee1 fs_param_is_bool +EXPORT_SYMBOL vmlinux 0x47c20f8a refcount_dec_not_one +EXPORT_SYMBOL vmlinux 0x47c65bfc unregister_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0x47c71cc6 tcp_v4_conn_request +EXPORT_SYMBOL vmlinux 0x47cfd825 kstrtouint_from_user +EXPORT_SYMBOL vmlinux 0x47d8d301 __cond_resched_rwlock_read +EXPORT_SYMBOL vmlinux 0x47f2d367 devm_register_reboot_notifier +EXPORT_SYMBOL vmlinux 0x480facbe neigh_update +EXPORT_SYMBOL vmlinux 0x48112d76 _raw_read_lock_irq +EXPORT_SYMBOL vmlinux 0x48171240 param_set_copystring +EXPORT_SYMBOL vmlinux 0x481814c4 mb_cache_entry_find_next +EXPORT_SYMBOL vmlinux 0x48193639 acpi_lid_open +EXPORT_SYMBOL vmlinux 0x48234268 fib_default_rule_add +EXPORT_SYMBOL vmlinux 0x48248dce pin_user_pages_remote +EXPORT_SYMBOL vmlinux 0x4829cf6b fscrypt_enqueue_decrypt_work +EXPORT_SYMBOL vmlinux 0x482b88a8 blk_queue_max_hw_sectors +EXPORT_SYMBOL vmlinux 0x48388772 submit_bh +EXPORT_SYMBOL vmlinux 0x4841bdee strnchr +EXPORT_SYMBOL vmlinux 0x4848cfb1 phy_mipi_dphy_get_default_config +EXPORT_SYMBOL vmlinux 0x484f6edf ktime_get_coarse_real_ts64 +EXPORT_SYMBOL vmlinux 0x4859b8bb rtc_year_days +EXPORT_SYMBOL vmlinux 0x486075c8 gen_pool_dma_alloc +EXPORT_SYMBOL vmlinux 0x4866e44d uart_suspend_port +EXPORT_SYMBOL vmlinux 0x486d716c __alloc_skb +EXPORT_SYMBOL vmlinux 0x4871ebd4 tcp_sock_set_nodelay +EXPORT_SYMBOL vmlinux 0x4880caa4 send_sig_mceerr +EXPORT_SYMBOL vmlinux 0x4887968c xp_dma_sync_for_cpu_slow +EXPORT_SYMBOL vmlinux 0x489685b6 dev_uc_add +EXPORT_SYMBOL vmlinux 0x489f6e0b rdma_dim +EXPORT_SYMBOL vmlinux 0x48a91171 string_get_size +EXPORT_SYMBOL vmlinux 0x48aac818 clean_bdev_aliases +EXPORT_SYMBOL vmlinux 0x48ae4e37 pci_claim_resource +EXPORT_SYMBOL vmlinux 0x48af8d39 xfrm_state_unregister_afinfo +EXPORT_SYMBOL vmlinux 0x48b22bb3 lookup_one_positive_unlocked +EXPORT_SYMBOL vmlinux 0x48b99a13 vme_lm_free +EXPORT_SYMBOL vmlinux 0x48c093fb _atomic_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0x48d27375 __bitmap_intersects +EXPORT_SYMBOL vmlinux 0x48d3fa27 kmalloc_large_node +EXPORT_SYMBOL vmlinux 0x48d50e79 amd_iommu_register_ppr_notifier +EXPORT_SYMBOL vmlinux 0x48d70514 mmc_add_host +EXPORT_SYMBOL vmlinux 0x48e46a9b max8998_update_reg +EXPORT_SYMBOL vmlinux 0x48ffbb87 mtree_alloc_range +EXPORT_SYMBOL vmlinux 0x49045426 icmp_err_convert +EXPORT_SYMBOL vmlinux 0x4909a790 dma_fence_get_status +EXPORT_SYMBOL vmlinux 0x491c43dc file_open_root +EXPORT_SYMBOL vmlinux 0x494e3393 vm_get_page_prot +EXPORT_SYMBOL vmlinux 0x49504c4f kill_anon_super +EXPORT_SYMBOL vmlinux 0x4952d93c filemap_write_and_wait_range +EXPORT_SYMBOL vmlinux 0x495e378d __pv_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0x4967e79f radix_tree_iter_resume +EXPORT_SYMBOL vmlinux 0x496f173c __SCK__tp_func_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x4977c498 stack_depot_get_extra_bits +EXPORT_SYMBOL vmlinux 0x497d2b6f devfreq_update_target +EXPORT_SYMBOL vmlinux 0x497f3b83 xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0x49887319 key_validate +EXPORT_SYMBOL vmlinux 0x499ee22b inet_csk_clear_xmit_timers +EXPORT_SYMBOL vmlinux 0x499f0ecf nd_sb_checksum +EXPORT_SYMBOL vmlinux 0x49a7988e phy_modify_paged_changed +EXPORT_SYMBOL vmlinux 0x49a904c7 iov_iter_get_pages_alloc2 +EXPORT_SYMBOL vmlinux 0x49adea5d __mdiobus_write +EXPORT_SYMBOL vmlinux 0x49ae73ac bpf_map_get +EXPORT_SYMBOL vmlinux 0x49b163b8 acpi_bus_scan +EXPORT_SYMBOL vmlinux 0x49c07227 fscrypt_decrypt_bio +EXPORT_SYMBOL vmlinux 0x49c37c8d get_cached_acl +EXPORT_SYMBOL vmlinux 0x49c9b74b amd_iommu_domain_enable_v2 +EXPORT_SYMBOL vmlinux 0x49cec428 insert_inode_locked4 +EXPORT_SYMBOL vmlinux 0x49db5f5d pci_bus_read_config_word +EXPORT_SYMBOL vmlinux 0x49e0dd5f clear_page_dirty_for_io +EXPORT_SYMBOL vmlinux 0x49e97418 vfs_fsync +EXPORT_SYMBOL vmlinux 0x49f3bf46 kmalloc_trace +EXPORT_SYMBOL vmlinux 0x49fd2625 devm_memremap +EXPORT_SYMBOL vmlinux 0x4a01a101 unpin_user_pages +EXPORT_SYMBOL vmlinux 0x4a118fe4 pps_unregister_source +EXPORT_SYMBOL vmlinux 0x4a3ad70e wait_for_completion_timeout +EXPORT_SYMBOL vmlinux 0x4a3db820 deactivate_locked_super +EXPORT_SYMBOL vmlinux 0x4a453f53 iowrite32 +EXPORT_SYMBOL vmlinux 0x4a5828c4 security_path_rename +EXPORT_SYMBOL vmlinux 0x4a58329d vga_switcheroo_register_client +EXPORT_SYMBOL vmlinux 0x4a5eae51 pci_unregister_driver +EXPORT_SYMBOL vmlinux 0x4a7e4ebc set_disk_ro +EXPORT_SYMBOL vmlinux 0x4a96a8eb xxh32_digest +EXPORT_SYMBOL vmlinux 0x4a991a4d pcie_get_width_cap +EXPORT_SYMBOL vmlinux 0x4aab3691 blk_queue_max_segments +EXPORT_SYMBOL vmlinux 0x4ac921a0 dev_getfirstbyhwtype +EXPORT_SYMBOL vmlinux 0x4ad2728e __neigh_create +EXPORT_SYMBOL vmlinux 0x4adfda4b arp_xmit +EXPORT_SYMBOL vmlinux 0x4ae0ab9c nd_dev_to_uuid +EXPORT_SYMBOL vmlinux 0x4ae90d8e hdmi_avi_infoframe_check +EXPORT_SYMBOL vmlinux 0x4aea463f crc32_le_shift +EXPORT_SYMBOL vmlinux 0x4aed4faf xfrm_dst_ifdown +EXPORT_SYMBOL vmlinux 0x4af6ddf0 kstrtou16 +EXPORT_SYMBOL vmlinux 0x4afb2238 add_wait_queue +EXPORT_SYMBOL vmlinux 0x4b085dbf agp3_generic_configure +EXPORT_SYMBOL vmlinux 0x4b0b3edb skb_queue_purge +EXPORT_SYMBOL vmlinux 0x4b19dddd dquot_drop +EXPORT_SYMBOL vmlinux 0x4b243008 init_special_inode +EXPORT_SYMBOL vmlinux 0x4b2d01a2 timestamp_truncate +EXPORT_SYMBOL vmlinux 0x4b3a9bef kernel_sock_ip_overhead +EXPORT_SYMBOL vmlinux 0x4b401817 iwe_stream_add_value +EXPORT_SYMBOL vmlinux 0x4b4f898b nd_pfn_probe +EXPORT_SYMBOL vmlinux 0x4b557708 tcp_v4_syn_recv_sock +EXPORT_SYMBOL vmlinux 0x4b5684cc param_set_int +EXPORT_SYMBOL vmlinux 0x4b5e3a47 __get_user_nocheck_1 +EXPORT_SYMBOL vmlinux 0x4b63c815 pm8606_osc_disable +EXPORT_SYMBOL vmlinux 0x4b6df007 acpi_evaluate_reg +EXPORT_SYMBOL vmlinux 0x4b8fcaf7 pnp_request_card_device +EXPORT_SYMBOL vmlinux 0x4b93d83c xfrm_if_register_cb +EXPORT_SYMBOL vmlinux 0x4b97e999 scsi_rescan_device +EXPORT_SYMBOL vmlinux 0x4b9eb73b dm_kcopyd_zero +EXPORT_SYMBOL vmlinux 0x4ba584d2 skb_flow_dissect_hash +EXPORT_SYMBOL vmlinux 0x4baea030 d_find_alias +EXPORT_SYMBOL vmlinux 0x4bb0998a sk_send_sigurg +EXPORT_SYMBOL vmlinux 0x4bb118cf devm_of_find_backlight +EXPORT_SYMBOL vmlinux 0x4bc9999b __skb_checksum_complete_head +EXPORT_SYMBOL vmlinux 0x4bcc2662 mempool_init_node +EXPORT_SYMBOL vmlinux 0x4be1e34e kmem_cache_alloc_node +EXPORT_SYMBOL vmlinux 0x4bef1c67 empty_name +EXPORT_SYMBOL vmlinux 0x4bfe416f genphy_loopback +EXPORT_SYMBOL vmlinux 0x4c0277fb dquot_set_dqinfo +EXPORT_SYMBOL vmlinux 0x4c02cb6f tcf_get_next_chain +EXPORT_SYMBOL vmlinux 0x4c07a7e0 acpi_processor_unregister_performance +EXPORT_SYMBOL vmlinux 0x4c1497b5 component_match_add_release +EXPORT_SYMBOL vmlinux 0x4c236f6f __x86_indirect_thunk_r15 +EXPORT_SYMBOL vmlinux 0x4c416eb9 LZ4_decompress_fast +EXPORT_SYMBOL vmlinux 0x4c57bb39 flow_rule_match_icmp +EXPORT_SYMBOL vmlinux 0x4c68f8fb fwnode_mdio_find_device +EXPORT_SYMBOL vmlinux 0x4c84285a locks_delete_block +EXPORT_SYMBOL vmlinux 0x4c88f6f2 seg6_hmac_info_add +EXPORT_SYMBOL vmlinux 0x4c9d28b0 phys_base +EXPORT_SYMBOL vmlinux 0x4cb0d028 pci_scan_root_bus_bridge +EXPORT_SYMBOL vmlinux 0x4cc1c443 gnet_stats_start_copy +EXPORT_SYMBOL vmlinux 0x4cd5bc5e rdmsr_safe_regs +EXPORT_SYMBOL vmlinux 0x4d02da2e ip6_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x4d065318 i2c_get_adapter_by_fwnode +EXPORT_SYMBOL vmlinux 0x4d2c7133 acpi_info +EXPORT_SYMBOL vmlinux 0x4d345f27 sock_alloc +EXPORT_SYMBOL vmlinux 0x4d360864 serio_open +EXPORT_SYMBOL vmlinux 0x4d5afa6c xp_dma_unmap +EXPORT_SYMBOL vmlinux 0x4d5efb43 filemap_fdatawrite_range +EXPORT_SYMBOL vmlinux 0x4d690ff7 rtnetlink_put_metrics +EXPORT_SYMBOL vmlinux 0x4d75c108 skb_vlan_untag +EXPORT_SYMBOL vmlinux 0x4d908097 sock_no_shutdown +EXPORT_SYMBOL vmlinux 0x4d924f20 memremap +EXPORT_SYMBOL vmlinux 0x4d9b652b rb_erase +EXPORT_SYMBOL vmlinux 0x4da278d9 cpu_rmap_put +EXPORT_SYMBOL vmlinux 0x4dbb2339 pm860x_reg_read +EXPORT_SYMBOL vmlinux 0x4dc4f93c mipi_dsi_dcs_get_power_mode +EXPORT_SYMBOL vmlinux 0x4dce082b register_mii_tstamp_controller +EXPORT_SYMBOL vmlinux 0x4dd0b3b3 inet_csk_reset_keepalive_timer +EXPORT_SYMBOL vmlinux 0x4dd95689 handshake_req_submit +EXPORT_SYMBOL vmlinux 0x4de995ec gen_pool_dma_alloc_algo +EXPORT_SYMBOL vmlinux 0x4df02057 crc32_be +EXPORT_SYMBOL vmlinux 0x4df2ea84 gen_estimator_read +EXPORT_SYMBOL vmlinux 0x4dfa8d4b mutex_lock +EXPORT_SYMBOL vmlinux 0x4e07daa6 skb_add_rx_frag +EXPORT_SYMBOL vmlinux 0x4e13fe79 netdev_info +EXPORT_SYMBOL vmlinux 0x4e20bcf8 radix_tree_tag_set +EXPORT_SYMBOL vmlinux 0x4e29d4d0 register_quota_format +EXPORT_SYMBOL vmlinux 0x4e3567f7 match_int +EXPORT_SYMBOL vmlinux 0x4e36cdc4 __ubsan_handle_divrem_overflow +EXPORT_SYMBOL vmlinux 0x4e3ec815 unregister_nexthop_notifier +EXPORT_SYMBOL vmlinux 0x4e547048 __kmalloc_node_track_caller +EXPORT_SYMBOL vmlinux 0x4e68e9be rb_next_postorder +EXPORT_SYMBOL vmlinux 0x4e6e4b41 radix_tree_delete +EXPORT_SYMBOL vmlinux 0x4e6e8ea7 fg_console +EXPORT_SYMBOL vmlinux 0x4e718986 __nd_driver_register +EXPORT_SYMBOL vmlinux 0x4e73361e crypto_kdf108_ctr_generate +EXPORT_SYMBOL vmlinux 0x4e9437ca drop_nlink +EXPORT_SYMBOL vmlinux 0x4e9713f3 lease_get_mtime +EXPORT_SYMBOL vmlinux 0x4ea25709 dql_reset +EXPORT_SYMBOL vmlinux 0x4ea78bab __x86_indirect_call_thunk_r15 +EXPORT_SYMBOL vmlinux 0x4eada8f7 security_secid_to_secctx +EXPORT_SYMBOL vmlinux 0x4eb2b066 hdmi_avi_infoframe_init +EXPORT_SYMBOL vmlinux 0x4eb65145 skb_orphan_partial +EXPORT_SYMBOL vmlinux 0x4ec41bb4 tcp_md5_key_copy +EXPORT_SYMBOL vmlinux 0x4ec49c40 folio_create_empty_buffers +EXPORT_SYMBOL vmlinux 0x4ec54e78 bitmap_to_arr32 +EXPORT_SYMBOL vmlinux 0x4ef4e165 tcf_classify +EXPORT_SYMBOL vmlinux 0x4f01a4a1 pci_pme_active +EXPORT_SYMBOL vmlinux 0x4f1cd128 security_tun_dev_create +EXPORT_SYMBOL vmlinux 0x4f1ff4f1 fd_install +EXPORT_SYMBOL vmlinux 0x4f20d80b zstd_min_clevel +EXPORT_SYMBOL vmlinux 0x4f2250ba rtc_tm_to_time64 +EXPORT_SYMBOL vmlinux 0x4f55166f acpi_set_current_resources +EXPORT_SYMBOL vmlinux 0x4f58472a single_release +EXPORT_SYMBOL vmlinux 0x4f711f84 intel_scu_ipc_dev_iowrite8 +EXPORT_SYMBOL vmlinux 0x4f798ca5 key_revoke +EXPORT_SYMBOL vmlinux 0x4f7a306d bioset_init +EXPORT_SYMBOL vmlinux 0x4fa6ee40 zero_fill_bio +EXPORT_SYMBOL vmlinux 0x4fb2f16a scsi_scan_host +EXPORT_SYMBOL vmlinux 0x4fc89c98 tty_do_resize +EXPORT_SYMBOL vmlinux 0x4fdee897 i8042_command +EXPORT_SYMBOL vmlinux 0x4ffc7d55 tcp_ld_RTO_revert +EXPORT_SYMBOL vmlinux 0x50097088 security_tun_dev_free_security +EXPORT_SYMBOL vmlinux 0x5009c71d glob_match +EXPORT_SYMBOL vmlinux 0x5021bd81 _raw_write_lock_irqsave +EXPORT_SYMBOL vmlinux 0x5027bde2 acpi_acquire_mutex +EXPORT_SYMBOL vmlinux 0x5028bcf3 xfrm_policy_delete +EXPORT_SYMBOL vmlinux 0x502f5001 xfrm_state_walk +EXPORT_SYMBOL vmlinux 0x503da70b mipi_dsi_dcs_set_tear_off +EXPORT_SYMBOL vmlinux 0x5041238f generic_fadvise +EXPORT_SYMBOL vmlinux 0x504830c6 build_skb +EXPORT_SYMBOL vmlinux 0x5056a1ea copy_page_to_iter_nofault +EXPORT_SYMBOL vmlinux 0x505a9c29 mdio_driver_unregister +EXPORT_SYMBOL vmlinux 0x505b14a8 inet6_del_offload +EXPORT_SYMBOL vmlinux 0x50624917 sha1_init +EXPORT_SYMBOL vmlinux 0x506dff1a __genradix_free +EXPORT_SYMBOL vmlinux 0x5089f45f ip_send_check +EXPORT_SYMBOL vmlinux 0x5092e84e __read_overflow2_field +EXPORT_SYMBOL vmlinux 0x5093182c copy_page_from_iter +EXPORT_SYMBOL vmlinux 0x50944630 seq_list_start_head_rcu +EXPORT_SYMBOL vmlinux 0x509b64ea acpi_has_method +EXPORT_SYMBOL vmlinux 0x509ed667 mroute6_is_socket +EXPORT_SYMBOL vmlinux 0x50a4698c fb_videomode_to_modelist +EXPORT_SYMBOL vmlinux 0x50b73ce2 rfkill_find_type +EXPORT_SYMBOL vmlinux 0x50b80992 mb_cache_entry_find_first +EXPORT_SYMBOL vmlinux 0x50be748d security_ib_free_security +EXPORT_SYMBOL vmlinux 0x50cf7585 hex2bin +EXPORT_SYMBOL vmlinux 0x50d035c2 vsscanf +EXPORT_SYMBOL vmlinux 0x50d68377 arch_phys_wc_del +EXPORT_SYMBOL vmlinux 0x50eaa16d padata_alloc +EXPORT_SYMBOL vmlinux 0x50eed630 ps2_end_command +EXPORT_SYMBOL vmlinux 0x50f91491 __genradix_ptr +EXPORT_SYMBOL vmlinux 0x5102a30b do_wait_intr_irq +EXPORT_SYMBOL vmlinux 0x5102d2fb d_genocide +EXPORT_SYMBOL vmlinux 0x51142c54 xen_free_unpopulated_pages +EXPORT_SYMBOL vmlinux 0x511fd9e3 acpi_device_hid +EXPORT_SYMBOL vmlinux 0x5136f640 __SCK__tp_func_mmap_lock_released +EXPORT_SYMBOL vmlinux 0x513b28f4 first_ec +EXPORT_SYMBOL vmlinux 0x513e1c14 param_set_uint +EXPORT_SYMBOL vmlinux 0x51454833 xfrm_unregister_type_offload +EXPORT_SYMBOL vmlinux 0x515083bf acpi_release_mutex +EXPORT_SYMBOL vmlinux 0x51641162 opal_unlock_from_suspend +EXPORT_SYMBOL vmlinux 0x5169ac7c page_cache_prev_miss +EXPORT_SYMBOL vmlinux 0x516e1de8 pci_release_regions +EXPORT_SYMBOL vmlinux 0x51798001 __invalidate_device +EXPORT_SYMBOL vmlinux 0x51a511eb _raw_write_lock_bh +EXPORT_SYMBOL vmlinux 0x51bd1934 flow_rule_match_l2tpv3 +EXPORT_SYMBOL vmlinux 0x51c73d5e dev_addr_add +EXPORT_SYMBOL vmlinux 0x51d12d4e acpi_pci_disabled +EXPORT_SYMBOL vmlinux 0x51d3a449 tcp_v4_connect +EXPORT_SYMBOL vmlinux 0x51d59b1a ip_defrag +EXPORT_SYMBOL vmlinux 0x51db3d03 dmaengine_get_unmap_data +EXPORT_SYMBOL vmlinux 0x51e21dd0 tty_port_carrier_raised +EXPORT_SYMBOL vmlinux 0x51eb02ef read_cache_page_gfp +EXPORT_SYMBOL vmlinux 0x51ed76a3 qdisc_offload_dump_helper +EXPORT_SYMBOL vmlinux 0x51f298e0 intel_scu_ipc_dev_ioread8 +EXPORT_SYMBOL vmlinux 0x520b4b52 vlan_for_each +EXPORT_SYMBOL vmlinux 0x520e97c4 proc_dostring +EXPORT_SYMBOL vmlinux 0x5210cc21 sock_i_ino +EXPORT_SYMBOL vmlinux 0x5231ff87 iterate_supers_type +EXPORT_SYMBOL vmlinux 0x526130df posix_acl_chmod +EXPORT_SYMBOL vmlinux 0x526e4ad2 security_sb_clone_mnt_opts +EXPORT_SYMBOL vmlinux 0x526eef2c hdmi_vendor_infoframe_pack +EXPORT_SYMBOL vmlinux 0x52983a4f vme_master_write +EXPORT_SYMBOL vmlinux 0x529b1636 devm_ioremap_resource +EXPORT_SYMBOL vmlinux 0x52d717da xz_dec_init +EXPORT_SYMBOL vmlinux 0x52eb6d54 __dec_node_page_state +EXPORT_SYMBOL vmlinux 0x52ec1b68 migrate_vma_pages +EXPORT_SYMBOL vmlinux 0x52ecbc75 crc_ccitt +EXPORT_SYMBOL vmlinux 0x52f1d013 tcf_exts_destroy +EXPORT_SYMBOL vmlinux 0x530f38ea mmc_run_bkops +EXPORT_SYMBOL vmlinux 0x53126ecc __percpu_counter_sum +EXPORT_SYMBOL vmlinux 0x531b604e __virt_addr_valid +EXPORT_SYMBOL vmlinux 0x5322663e acpi_get_handle +EXPORT_SYMBOL vmlinux 0x532fcbe4 __nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x53317aff phy_suspend +EXPORT_SYMBOL vmlinux 0x5338184f ethtool_sprintf +EXPORT_SYMBOL vmlinux 0x534cf6a1 uart_unregister_driver +EXPORT_SYMBOL vmlinux 0x534f2aa4 blk_stack_limits +EXPORT_SYMBOL vmlinux 0x53569707 this_cpu_off +EXPORT_SYMBOL vmlinux 0x53589348 hash_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x53680756 kthread_create_worker +EXPORT_SYMBOL vmlinux 0x538c5372 ethtool_rx_flow_rule_destroy +EXPORT_SYMBOL vmlinux 0x53959208 phy_connect_direct +EXPORT_SYMBOL vmlinux 0x53a1e8d9 _find_next_bit +EXPORT_SYMBOL vmlinux 0x53b954a2 up_read +EXPORT_SYMBOL vmlinux 0x53d4e36e blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0x53dd89e4 sk_stop_timer_sync +EXPORT_SYMBOL vmlinux 0x53ed64bf __fib6_flush_trees +EXPORT_SYMBOL vmlinux 0x53f8ced7 page_pool_ethtool_stats_get_strings +EXPORT_SYMBOL vmlinux 0x5400ba15 dquot_commit +EXPORT_SYMBOL vmlinux 0x54064a34 scsi_eh_finish_cmd +EXPORT_SYMBOL vmlinux 0x54175c5f acpi_read_bit_register +EXPORT_SYMBOL vmlinux 0x543ef284 seq_hlist_start +EXPORT_SYMBOL vmlinux 0x544ed7a6 security_sb_remount +EXPORT_SYMBOL vmlinux 0x545e34c3 load_nls +EXPORT_SYMBOL vmlinux 0x5471a19b ip_generic_getfrag +EXPORT_SYMBOL vmlinux 0x54727b1c param_set_charp +EXPORT_SYMBOL vmlinux 0x5474a562 ipv6_chk_addr_and_flags +EXPORT_SYMBOL vmlinux 0x547e3344 acpi_disable +EXPORT_SYMBOL vmlinux 0x548142a9 generic_perform_write +EXPORT_SYMBOL vmlinux 0x5481707b configfs_unregister_default_group +EXPORT_SYMBOL vmlinux 0x549fabee empty_aops +EXPORT_SYMBOL vmlinux 0x54b1fac6 __ubsan_handle_load_invalid_value +EXPORT_SYMBOL vmlinux 0x54b22bb1 __SCT__tp_func_mmap_lock_acquire_returned +EXPORT_SYMBOL vmlinux 0x54b23e67 sg_pcopy_to_buffer +EXPORT_SYMBOL vmlinux 0x54b7cafd flow_rule_match_enc_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x54c1f792 dcb_ieee_getapp_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x54c87fdd dma_mmap_attrs +EXPORT_SYMBOL vmlinux 0x54cfacd5 __ctzdi2 +EXPORT_SYMBOL vmlinux 0x54d025a7 nf_log_packet +EXPORT_SYMBOL vmlinux 0x54e6fcdd net_enable_timestamp +EXPORT_SYMBOL vmlinux 0x54ea6dfe xen_start_flags +EXPORT_SYMBOL vmlinux 0x5506b8f7 netlbl_bitmap_setbit +EXPORT_SYMBOL vmlinux 0x5516b106 __devm_release_region +EXPORT_SYMBOL vmlinux 0x551a50e8 qdisc_watchdog_cancel +EXPORT_SYMBOL vmlinux 0x551bd071 __rb_erase_color +EXPORT_SYMBOL vmlinux 0x5526265e dquot_resume +EXPORT_SYMBOL vmlinux 0x552d275e ipv6_push_frag_opts +EXPORT_SYMBOL vmlinux 0x55385e2e __x86_indirect_thunk_r14 +EXPORT_SYMBOL vmlinux 0x554ae3a4 irq_poll_sched +EXPORT_SYMBOL vmlinux 0x555209da clk_hw_register_clkdev +EXPORT_SYMBOL vmlinux 0x556422b3 ioremap_cache +EXPORT_SYMBOL vmlinux 0x556cca46 x86_apple_machine +EXPORT_SYMBOL vmlinux 0x558636a5 audit_log_start +EXPORT_SYMBOL vmlinux 0x558b281d aes_expandkey +EXPORT_SYMBOL vmlinux 0x55931cd3 pin_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x55bfbd61 vfs_iocb_iter_write +EXPORT_SYMBOL vmlinux 0x55cb3ca5 pci_bus_type +EXPORT_SYMBOL vmlinux 0x55e31703 ethtool_convert_link_mode_to_legacy_u32 +EXPORT_SYMBOL vmlinux 0x55f6161d rawv6_mh_filter_register +EXPORT_SYMBOL vmlinux 0x55f7e7a7 ethtool_virtdev_set_link_ksettings +EXPORT_SYMBOL vmlinux 0x55f95e07 ioremap_prot +EXPORT_SYMBOL vmlinux 0x5601be3f md_bitmap_startwrite +EXPORT_SYMBOL vmlinux 0x560bfaf1 scsi_device_get +EXPORT_SYMBOL vmlinux 0x5635a60a vmalloc_user +EXPORT_SYMBOL vmlinux 0x563a8bf5 netdev_lower_state_changed +EXPORT_SYMBOL vmlinux 0x563e0e92 mmc_erase +EXPORT_SYMBOL vmlinux 0x56470118 __warn_printk +EXPORT_SYMBOL vmlinux 0x564f7608 acpi_reconfig_notifier_register +EXPORT_SYMBOL vmlinux 0x5654275c __seq_open_private +EXPORT_SYMBOL vmlinux 0x565caca8 abort_creds +EXPORT_SYMBOL vmlinux 0x56620e5b sock_alloc_send_pskb +EXPORT_SYMBOL vmlinux 0x567ebbd6 vm_mmap +EXPORT_SYMBOL vmlinux 0x56802ae8 rps_cpu_mask +EXPORT_SYMBOL vmlinux 0x56a00f67 sock_recv_errqueue +EXPORT_SYMBOL vmlinux 0x56b0de37 mipi_dsi_compression_mode +EXPORT_SYMBOL vmlinux 0x56b35e5a scsi_remove_host +EXPORT_SYMBOL vmlinux 0x56c152c6 in_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x56c8799d scsi_kunmap_atomic_sg +EXPORT_SYMBOL vmlinux 0x56d5da47 uart_write_wakeup +EXPORT_SYMBOL vmlinux 0x572d61ba unix_destruct_scm +EXPORT_SYMBOL vmlinux 0x573f2162 give_up_console +EXPORT_SYMBOL vmlinux 0x57407207 scsi_register_driver +EXPORT_SYMBOL vmlinux 0x574c2e74 bitmap_release_region +EXPORT_SYMBOL vmlinux 0x57575f08 dmaengine_put +EXPORT_SYMBOL vmlinux 0x57590cf5 folio_redirty_for_writepage +EXPORT_SYMBOL vmlinux 0x57607d2d jbd2_journal_clear_features +EXPORT_SYMBOL vmlinux 0x5763a1c0 twl6040_set_pll +EXPORT_SYMBOL vmlinux 0x576567f8 putname +EXPORT_SYMBOL vmlinux 0x57689789 acpi_device_set_power +EXPORT_SYMBOL vmlinux 0x57693acd phy_ethtool_get_strings +EXPORT_SYMBOL vmlinux 0x5775fd8e amd_iommu_flush_page +EXPORT_SYMBOL vmlinux 0x57864df5 __SCK__tp_func_kmalloc +EXPORT_SYMBOL vmlinux 0x5789b4d8 __SCK__tp_func_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0x578b664f ipv6_dev_find +EXPORT_SYMBOL vmlinux 0x578d3c75 i2c_smbus_read_byte +EXPORT_SYMBOL vmlinux 0x57900416 gen_pool_fixed_alloc +EXPORT_SYMBOL vmlinux 0x5792f848 strlcpy +EXPORT_SYMBOL vmlinux 0x57ab42f8 simple_rename +EXPORT_SYMBOL vmlinux 0x57bc19d2 down_write +EXPORT_SYMBOL vmlinux 0x57bcbaea __x86_indirect_call_thunk_r14 +EXPORT_SYMBOL vmlinux 0x57c8cf1d sock_create +EXPORT_SYMBOL vmlinux 0x57db8fd6 utf8_normalize +EXPORT_SYMBOL vmlinux 0x580ddddd security_inode_copy_up +EXPORT_SYMBOL vmlinux 0x580e3d99 __neigh_for_each_release +EXPORT_SYMBOL vmlinux 0x5818fe3c posix_acl_from_mode +EXPORT_SYMBOL vmlinux 0x581f98da zlib_inflate +EXPORT_SYMBOL vmlinux 0x582b6275 xfrm_if_unregister_cb +EXPORT_SYMBOL vmlinux 0x5838f6c9 rtc_valid_tm +EXPORT_SYMBOL vmlinux 0x5849f541 tcf_block_get_ext +EXPORT_SYMBOL vmlinux 0x5850b716 mmc_gpio_set_cd_isr +EXPORT_SYMBOL vmlinux 0x585cdd4d sync_blockdev +EXPORT_SYMBOL vmlinux 0x58610f10 ptp_cancel_worker_sync +EXPORT_SYMBOL vmlinux 0x586c690f set_posix_acl +EXPORT_SYMBOL vmlinux 0x587b0954 kvasprintf +EXPORT_SYMBOL vmlinux 0x587d0a97 mipi_dsi_set_maximum_return_packet_size +EXPORT_SYMBOL vmlinux 0x587f22d7 devmap_managed_key +EXPORT_SYMBOL vmlinux 0x58860f08 md_bitmap_free +EXPORT_SYMBOL vmlinux 0x5897a680 __find_nth_and_andnot_bit +EXPORT_SYMBOL vmlinux 0x589e20e1 unlock_two_nondirectories +EXPORT_SYMBOL vmlinux 0x589f4bab rw_verify_area +EXPORT_SYMBOL vmlinux 0x58a78409 mmc_gpio_set_cd_wake +EXPORT_SYMBOL vmlinux 0x58acf24b mdiobus_register_board_info +EXPORT_SYMBOL vmlinux 0x58b4645c dev_close_many +EXPORT_SYMBOL vmlinux 0x58b73bc7 match_wildcard +EXPORT_SYMBOL vmlinux 0x58bfccb4 max8925_reg_read +EXPORT_SYMBOL vmlinux 0x58d57713 mmc_card_is_blockaddr +EXPORT_SYMBOL vmlinux 0x58dec8fb proc_create_data +EXPORT_SYMBOL vmlinux 0x58e3306d bit_wait_io +EXPORT_SYMBOL vmlinux 0x58e53d36 page_pool_alloc_pages +EXPORT_SYMBOL vmlinux 0x58e81c3e xfrm_state_update +EXPORT_SYMBOL vmlinux 0x59028fd5 block_commit_write +EXPORT_SYMBOL vmlinux 0x59138fb9 ndo_dflt_fdb_dump +EXPORT_SYMBOL vmlinux 0x591cee56 drop_super +EXPORT_SYMBOL vmlinux 0x59292d5b blkdev_put +EXPORT_SYMBOL vmlinux 0x592a928f mmc_can_discard +EXPORT_SYMBOL vmlinux 0x593a4427 vga_switcheroo_unregister_client +EXPORT_SYMBOL vmlinux 0x593ca070 __mod_zone_page_state +EXPORT_SYMBOL vmlinux 0x593edc4b cpu_tlbstate_shared +EXPORT_SYMBOL vmlinux 0x59412f24 writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x59428240 __ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x594b7456 seg6_hmac_info_lookup +EXPORT_SYMBOL vmlinux 0x594bf15b ioport_map +EXPORT_SYMBOL vmlinux 0x5954d48f shrink_dcache_parent +EXPORT_SYMBOL vmlinux 0x5968dc6d proc_doulongvec_ms_jiffies_minmax +EXPORT_SYMBOL vmlinux 0x5969f992 page_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x599fb41c kvmalloc_node +EXPORT_SYMBOL vmlinux 0x59a2f0ee packing +EXPORT_SYMBOL vmlinux 0x59b4ac3e tcp_memory_allocated +EXPORT_SYMBOL vmlinux 0x59d72481 xsk_tx_completed +EXPORT_SYMBOL vmlinux 0x59de7fb1 fb_pan_display +EXPORT_SYMBOL vmlinux 0x59ec0a82 napi_disable +EXPORT_SYMBOL vmlinux 0x59f86ead pm860x_reg_write +EXPORT_SYMBOL vmlinux 0x5a019a7a phy_do_ioctl +EXPORT_SYMBOL vmlinux 0x5a02f63b __pci_register_driver +EXPORT_SYMBOL vmlinux 0x5a0ab2cd generic_update_time +EXPORT_SYMBOL vmlinux 0x5a0b73d0 zlib_deflateInit2 +EXPORT_SYMBOL vmlinux 0x5a0ec716 tty_hangup +EXPORT_SYMBOL vmlinux 0x5a20ed32 d_set_d_op +EXPORT_SYMBOL vmlinux 0x5a27167b elevator_alloc +EXPORT_SYMBOL vmlinux 0x5a290250 hdmi_drm_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x5a3500cb bio_alloc_clone +EXPORT_SYMBOL vmlinux 0x5a44f8cb __crypto_memneq +EXPORT_SYMBOL vmlinux 0x5a4896a8 __put_user_2 +EXPORT_SYMBOL vmlinux 0x5a4d313e gf128mul_4k_lle +EXPORT_SYMBOL vmlinux 0x5a5a2271 __cpu_online_mask +EXPORT_SYMBOL vmlinux 0x5a7b1bdb fscrypt_encrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0x5a90220e rproc_coredump_using_sections +EXPORT_SYMBOL vmlinux 0x5a921311 strncmp +EXPORT_SYMBOL vmlinux 0x5a94b69b pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x5a99a0d7 flow_get_u32_dst +EXPORT_SYMBOL vmlinux 0x5aa56c93 gnet_stats_copy_queue +EXPORT_SYMBOL vmlinux 0x5aa90ab6 seq_release_private +EXPORT_SYMBOL vmlinux 0x5aaa6aad xp_alloc_batch +EXPORT_SYMBOL vmlinux 0x5ac01b95 acpi_resource_to_address64 +EXPORT_SYMBOL vmlinux 0x5aca89bb mmc_unregister_driver +EXPORT_SYMBOL vmlinux 0x5ad564de tcf_exts_dump_stats +EXPORT_SYMBOL vmlinux 0x5adace84 copy_splice_read +EXPORT_SYMBOL vmlinux 0x5ae1154b __traceiter_kfree +EXPORT_SYMBOL vmlinux 0x5ae1f82f pci_bus_read_config_dword +EXPORT_SYMBOL vmlinux 0x5affe503 scsi_host_busy +EXPORT_SYMBOL vmlinux 0x5b2f27fb do_wait_intr +EXPORT_SYMBOL vmlinux 0x5b34d9ab sdev_disable_disk_events +EXPORT_SYMBOL vmlinux 0x5b3e282f xa_store +EXPORT_SYMBOL vmlinux 0x5b46fa94 mpage_readahead +EXPORT_SYMBOL vmlinux 0x5b4813dd hid_bpf_ops +EXPORT_SYMBOL vmlinux 0x5b52c25a sock_set_sndtimeo +EXPORT_SYMBOL vmlinux 0x5b56860c vm_munmap +EXPORT_SYMBOL vmlinux 0x5b5de63b __tty_insert_flip_char +EXPORT_SYMBOL vmlinux 0x5b640895 netdev_name_in_use +EXPORT_SYMBOL vmlinux 0x5b641283 arch_phys_wc_add +EXPORT_SYMBOL vmlinux 0x5b6a1284 mipi_dsi_device_register_full +EXPORT_SYMBOL vmlinux 0x5b7bcd69 insert_inode_locked +EXPORT_SYMBOL vmlinux 0x5b8239ca __x86_return_thunk +EXPORT_SYMBOL vmlinux 0x5b89ff64 simple_symlink_inode_operations +EXPORT_SYMBOL vmlinux 0x5bbe8654 is_nvdimm_bus_locked +EXPORT_SYMBOL vmlinux 0x5bc8b6db cfb_fillrect +EXPORT_SYMBOL vmlinux 0x5bc8bf57 acpi_notifier_call_chain +EXPORT_SYMBOL vmlinux 0x5bcea5f1 sgl_free_n_order +EXPORT_SYMBOL vmlinux 0x5bd4ff88 flow_action_cookie_create +EXPORT_SYMBOL vmlinux 0x5bdb3c38 __napi_alloc_skb +EXPORT_SYMBOL vmlinux 0x5bdb7603 sock_copy_user_timeval +EXPORT_SYMBOL vmlinux 0x5be63c5b crc32c_csum_stub +EXPORT_SYMBOL vmlinux 0x5bf66bc6 skb_copy_datagram_from_iter +EXPORT_SYMBOL vmlinux 0x5c26a53b wait_for_completion_io_timeout +EXPORT_SYMBOL vmlinux 0x5c35ca4f ipmr_rule_default +EXPORT_SYMBOL vmlinux 0x5c3c7387 kstrtoull +EXPORT_SYMBOL vmlinux 0x5c48d9d5 super_setup_bdi +EXPORT_SYMBOL vmlinux 0x5c4e9334 __break_lease +EXPORT_SYMBOL vmlinux 0x5c97b0c7 flow_rule_match_basic +EXPORT_SYMBOL vmlinux 0x5cad3c23 pci_find_resource +EXPORT_SYMBOL vmlinux 0x5caea11a bio_chain +EXPORT_SYMBOL vmlinux 0x5cd2ddf3 ethtool_intersect_link_masks +EXPORT_SYMBOL vmlinux 0x5cd715a9 vfs_fadvise +EXPORT_SYMBOL vmlinux 0x5ce0a65d nd_region_release_lane +EXPORT_SYMBOL vmlinux 0x5ced6673 alloc_fcdev +EXPORT_SYMBOL vmlinux 0x5cf53ce2 input_free_minor +EXPORT_SYMBOL vmlinux 0x5cf9e89c blk_execute_rq +EXPORT_SYMBOL vmlinux 0x5cfb26a0 acpi_enter_sleep_state +EXPORT_SYMBOL vmlinux 0x5d032e36 msi_desc_to_pci_dev +EXPORT_SYMBOL vmlinux 0x5d0821d3 gnet_stats_copy_basic_hw +EXPORT_SYMBOL vmlinux 0x5d0a291f input_event +EXPORT_SYMBOL vmlinux 0x5d133bce simple_dentry_operations +EXPORT_SYMBOL vmlinux 0x5d35a1d2 tcf_block_get +EXPORT_SYMBOL vmlinux 0x5d49aabc init_wait_var_entry +EXPORT_SYMBOL vmlinux 0x5d5b72bb ipv6_chk_prefix +EXPORT_SYMBOL vmlinux 0x5d6b9e4a d_drop +EXPORT_SYMBOL vmlinux 0x5d7ed06b i2c_smbus_write_byte +EXPORT_SYMBOL vmlinux 0x5da935bd eth_header_cache_update +EXPORT_SYMBOL vmlinux 0x5dc6038c devm_ioremap +EXPORT_SYMBOL vmlinux 0x5e02c78b tcp_read_skb +EXPORT_SYMBOL vmlinux 0x5e066a3b misc_register +EXPORT_SYMBOL vmlinux 0x5e06bc5c refcount_dec_and_lock +EXPORT_SYMBOL vmlinux 0x5e071451 nf_log_bind_pf +EXPORT_SYMBOL vmlinux 0x5e0ccb9f sha1_transform +EXPORT_SYMBOL vmlinux 0x5e1e5ae2 param_set_ushort +EXPORT_SYMBOL vmlinux 0x5e24957c blkdev_get_by_path +EXPORT_SYMBOL vmlinux 0x5e332b52 __var_waitqueue +EXPORT_SYMBOL vmlinux 0x5e373fb4 gf128mul_64k_bbe +EXPORT_SYMBOL vmlinux 0x5e382c98 fb_get_mode +EXPORT_SYMBOL vmlinux 0x5e453dd3 skb_flow_dissect_meta +EXPORT_SYMBOL vmlinux 0x5e4652e7 __sync_dirty_buffer +EXPORT_SYMBOL vmlinux 0x5e504103 phy_loopback +EXPORT_SYMBOL vmlinux 0x5e52d39f generic_ro_fops +EXPORT_SYMBOL vmlinux 0x5e61b883 input_set_abs_params +EXPORT_SYMBOL vmlinux 0x5e698551 jbd2_journal_dirty_metadata +EXPORT_SYMBOL vmlinux 0x5e753937 __register_nls +EXPORT_SYMBOL vmlinux 0x5e77a2a4 udp6_set_csum +EXPORT_SYMBOL vmlinux 0x5e7c7a14 skb_coalesce_rx_frag +EXPORT_SYMBOL vmlinux 0x5e855e56 gen_pool_first_fit_align +EXPORT_SYMBOL vmlinux 0x5e934fc7 sgl_alloc +EXPORT_SYMBOL vmlinux 0x5e95b1cd current_umask +EXPORT_SYMBOL vmlinux 0x5e978534 watchdog_unregister_governor +EXPORT_SYMBOL vmlinux 0x5e9a01ce gen_new_estimator +EXPORT_SYMBOL vmlinux 0x5ea93e6b eth_commit_mac_addr_change +EXPORT_SYMBOL vmlinux 0x5ec4aee6 put_sg_io_hdr +EXPORT_SYMBOL vmlinux 0x5ecc06ae rproc_resource_cleanup +EXPORT_SYMBOL vmlinux 0x5ecfc4e7 tcf_qevent_validate_change +EXPORT_SYMBOL vmlinux 0x5ed040b0 pm_set_vt_switch +EXPORT_SYMBOL vmlinux 0x5ed90adc int_to_scsilun +EXPORT_SYMBOL vmlinux 0x5ef3b9f3 param_get_invbool +EXPORT_SYMBOL vmlinux 0x5ef6a672 gen_pool_for_each_chunk +EXPORT_SYMBOL vmlinux 0x5f098b2a in6addr_interfacelocal_allrouters +EXPORT_SYMBOL vmlinux 0x5f2ba55e security_req_classify_flow +EXPORT_SYMBOL vmlinux 0x5f41e22b input_register_handle +EXPORT_SYMBOL vmlinux 0x5f5441c8 __ubsan_handle_alignment_assumption +EXPORT_SYMBOL vmlinux 0x5f56663b rdmsrl_on_cpu +EXPORT_SYMBOL vmlinux 0x5f6b889c rproc_va_to_pa +EXPORT_SYMBOL vmlinux 0x5f93525c acpi_extract_package +EXPORT_SYMBOL vmlinux 0x5f99383a ioread64_hi_lo +EXPORT_SYMBOL vmlinux 0x5fbc4553 pcim_iomap +EXPORT_SYMBOL vmlinux 0x5fbc668f __skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x5fc67252 ioread16_rep +EXPORT_SYMBOL vmlinux 0x5fc71331 jbd2_wait_inode_data +EXPORT_SYMBOL vmlinux 0x5fc72f0e alloc_pages_exact +EXPORT_SYMBOL vmlinux 0x5fcabf6a d_invalidate +EXPORT_SYMBOL vmlinux 0x5fe13529 __SCT__tp_func_spi_transfer_start +EXPORT_SYMBOL vmlinux 0x5ff9eb0e lockref_mark_dead +EXPORT_SYMBOL vmlinux 0x6005c351 zpool_has_pool +EXPORT_SYMBOL vmlinux 0x600683d3 do_unblank_screen +EXPORT_SYMBOL vmlinux 0x6008689f kthread_complete_and_exit +EXPORT_SYMBOL vmlinux 0x601f665f dm_io_client_create +EXPORT_SYMBOL vmlinux 0x6033466f __do_once_sleepable_done +EXPORT_SYMBOL vmlinux 0x60352082 register_inet6addr_notifier +EXPORT_SYMBOL vmlinux 0x604bea26 dquot_initialize_needed +EXPORT_SYMBOL vmlinux 0x605790dc fiemap_fill_next_extent +EXPORT_SYMBOL vmlinux 0x605898a1 neigh_sysctl_unregister +EXPORT_SYMBOL vmlinux 0x605be5ec tcp_ioctl +EXPORT_SYMBOL vmlinux 0x60621bc9 inet6_protos +EXPORT_SYMBOL vmlinux 0x6063736f remove_watch_from_object +EXPORT_SYMBOL vmlinux 0x606a5fc2 pcie_ptm_enabled +EXPORT_SYMBOL vmlinux 0x607e39f8 locks_init_lock +EXPORT_SYMBOL vmlinux 0x608614ea __neigh_set_probe_once +EXPORT_SYMBOL vmlinux 0x608741b5 __init_swait_queue_head +EXPORT_SYMBOL vmlinux 0x608d0267 zstd_get_error_code +EXPORT_SYMBOL vmlinux 0x6091b333 unregister_chrdev_region +EXPORT_SYMBOL vmlinux 0x609bcd98 in6_pton +EXPORT_SYMBOL vmlinux 0x609d5a68 generic_file_mmap +EXPORT_SYMBOL vmlinux 0x609f1c7e synchronize_net +EXPORT_SYMBOL vmlinux 0x60a32ea9 pm_power_off +EXPORT_SYMBOL vmlinux 0x60af4f61 pnp_register_driver +EXPORT_SYMBOL vmlinux 0x60bbb124 dma_fence_signal_locked +EXPORT_SYMBOL vmlinux 0x60c79f63 kmem_cache_alloc_bulk +EXPORT_SYMBOL vmlinux 0x60ca1c98 __check_sticky +EXPORT_SYMBOL vmlinux 0x60d8ab30 vme_lm_get +EXPORT_SYMBOL vmlinux 0x60ee29b0 netlink_set_err +EXPORT_SYMBOL vmlinux 0x60f46631 input_copy_abs +EXPORT_SYMBOL vmlinux 0x60f549e9 blk_queue_alignment_offset +EXPORT_SYMBOL vmlinux 0x60f9f4e9 udp_sk_rx_dst_set +EXPORT_SYMBOL vmlinux 0x61032243 touchscreen_report_pos +EXPORT_SYMBOL vmlinux 0x61073e4a acpi_os_map_generic_address +EXPORT_SYMBOL vmlinux 0x610756b8 __x86_indirect_call_thunk_rdx +EXPORT_SYMBOL vmlinux 0x6109d712 __skb_flow_dissect +EXPORT_SYMBOL vmlinux 0x6115ea16 mod_node_page_state +EXPORT_SYMBOL vmlinux 0x6117b119 migrate_folio +EXPORT_SYMBOL vmlinux 0x6120d071 inet_getname +EXPORT_SYMBOL vmlinux 0x61228961 vlan_vids_add_by_dev +EXPORT_SYMBOL vmlinux 0x6128b5fc __printk_ratelimit +EXPORT_SYMBOL vmlinux 0x613270b1 acpi_bus_unregister_driver +EXPORT_SYMBOL vmlinux 0x61347034 mb_cache_entry_delete_or_get +EXPORT_SYMBOL vmlinux 0x615911d7 __bitmap_set +EXPORT_SYMBOL vmlinux 0x6178d48e reuseport_detach_sock +EXPORT_SYMBOL vmlinux 0x617c452b queued_read_lock_slowpath +EXPORT_SYMBOL vmlinux 0x6180eab7 page_pool_return_skb_page +EXPORT_SYMBOL vmlinux 0x6185b747 radix_tree_gang_lookup_tag +EXPORT_SYMBOL vmlinux 0x618911fc numa_node +EXPORT_SYMBOL vmlinux 0x618bcd35 fget_raw +EXPORT_SYMBOL vmlinux 0x619371e9 sockopt_release_sock +EXPORT_SYMBOL vmlinux 0x619cb7dd simple_read_from_buffer +EXPORT_SYMBOL vmlinux 0x619dfcdc intel_scu_ipc_dev_readv +EXPORT_SYMBOL vmlinux 0x61b1160c skb_queue_head +EXPORT_SYMBOL vmlinux 0x61b7b126 simple_strtoull +EXPORT_SYMBOL vmlinux 0x61b843f0 scsi_report_bus_reset +EXPORT_SYMBOL vmlinux 0x61c77750 kmem_cache_alloc_lru +EXPORT_SYMBOL vmlinux 0x61cbec46 mipi_dsi_dcs_nop +EXPORT_SYMBOL vmlinux 0x61d24533 generic_copy_file_range +EXPORT_SYMBOL vmlinux 0x61e272c9 sha256_final +EXPORT_SYMBOL vmlinux 0x61ea189b fb_pad_aligned_buffer +EXPORT_SYMBOL vmlinux 0x61f35bb4 rproc_elf_load_segments +EXPORT_SYMBOL vmlinux 0x61f656bf flow_rule_match_tcp +EXPORT_SYMBOL vmlinux 0x6214aef2 cpufreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x62175a43 xfrm_dev_state_flush +EXPORT_SYMBOL vmlinux 0x6217aebb simple_nosetlease +EXPORT_SYMBOL vmlinux 0x6226b9fa machine_to_phys_mapping +EXPORT_SYMBOL vmlinux 0x62276bb7 flow_rule_match_enc_ipv4_addrs +EXPORT_SYMBOL vmlinux 0x6228c21f smp_call_function_single +EXPORT_SYMBOL vmlinux 0x62329462 simple_getattr +EXPORT_SYMBOL vmlinux 0x6235d848 serial8250_register_8250_port +EXPORT_SYMBOL vmlinux 0x623c4785 dquot_get_state +EXPORT_SYMBOL vmlinux 0x62737e1d sock_unregister +EXPORT_SYMBOL vmlinux 0x6276af56 migrate_device_range +EXPORT_SYMBOL vmlinux 0x628361c1 cpufreq_generic_suspend +EXPORT_SYMBOL vmlinux 0x62849ac7 dev_valid_name +EXPORT_SYMBOL vmlinux 0x628c0f8f dma_fence_add_callback +EXPORT_SYMBOL vmlinux 0x62a7286b param_get_string +EXPORT_SYMBOL vmlinux 0x62ce7b3b page_symlink +EXPORT_SYMBOL vmlinux 0x62f7e207 down_read_killable +EXPORT_SYMBOL vmlinux 0x62ffdc7e __SCK__tp_func_rdpmc +EXPORT_SYMBOL vmlinux 0x63007b1d submit_bio +EXPORT_SYMBOL vmlinux 0x6315c42c zstd_get_params +EXPORT_SYMBOL vmlinux 0x636257f7 get_ibs_caps +EXPORT_SYMBOL vmlinux 0x6383b27c __x86_indirect_thunk_rdx +EXPORT_SYMBOL vmlinux 0x639e75cd I_BDEV +EXPORT_SYMBOL vmlinux 0x63a046b4 dcb_getrewr_prio_dscp_mask_map +EXPORT_SYMBOL vmlinux 0x63a58370 flow_action_cookie_destroy +EXPORT_SYMBOL vmlinux 0x63a7c28c bitmap_find_free_region +EXPORT_SYMBOL vmlinux 0x63a81d5f mmc_gpiod_request_ro +EXPORT_SYMBOL vmlinux 0x63d36163 add_watch_to_object +EXPORT_SYMBOL vmlinux 0x63d4dc96 gro_find_complete_by_type +EXPORT_SYMBOL vmlinux 0x63eb9355 panic_blink +EXPORT_SYMBOL vmlinux 0x63f835ba on_each_cpu_cond_mask +EXPORT_SYMBOL vmlinux 0x64001b50 do_SAK +EXPORT_SYMBOL vmlinux 0x64085995 mipi_dsi_dcs_read +EXPORT_SYMBOL vmlinux 0x64127b67 bitmap_find_next_zero_area_off +EXPORT_SYMBOL vmlinux 0x64145bcf from_kprojid_munged +EXPORT_SYMBOL vmlinux 0x64204136 vme_init_bridge +EXPORT_SYMBOL vmlinux 0x642eb5c6 xen_poll_irq_timeout +EXPORT_SYMBOL vmlinux 0x642ec1f9 jbd2_journal_free_reserved +EXPORT_SYMBOL vmlinux 0x6430fdf6 phy_attached_info +EXPORT_SYMBOL vmlinux 0x64313881 tty_port_init +EXPORT_SYMBOL vmlinux 0x64436ae0 phy_ethtool_get_wol +EXPORT_SYMBOL vmlinux 0x6448403d __x86_indirect_call_thunk_rcx +EXPORT_SYMBOL vmlinux 0x644e53bf ip_tunnel_header_ops +EXPORT_SYMBOL vmlinux 0x6455298a security_xfrm_policy_free +EXPORT_SYMBOL vmlinux 0x6481ffe0 hsiphash_1u32 +EXPORT_SYMBOL vmlinux 0x648280f2 dm_get_device +EXPORT_SYMBOL vmlinux 0x6482ce4e md_bitmap_sync_with_cluster +EXPORT_SYMBOL vmlinux 0x648c0cab rproc_del +EXPORT_SYMBOL vmlinux 0x648c2e12 fault_in_iov_iter_writeable +EXPORT_SYMBOL vmlinux 0x648eb59d gc_inflight_list +EXPORT_SYMBOL vmlinux 0x64a9c928 default_blu +EXPORT_SYMBOL vmlinux 0x64bbc288 string_unescape +EXPORT_SYMBOL vmlinux 0x64c53b71 i2c_del_driver +EXPORT_SYMBOL vmlinux 0x64c58601 d_instantiate_new +EXPORT_SYMBOL vmlinux 0x64d11af1 dma_fence_wait_timeout +EXPORT_SYMBOL vmlinux 0x64ee3ac9 devm_ioport_unmap +EXPORT_SYMBOL vmlinux 0x64f6429e nosteal_pipe_buf_ops +EXPORT_SYMBOL vmlinux 0x6513a3fa fb_get_color_depth +EXPORT_SYMBOL vmlinux 0x6514c1e6 flow_get_u32_src +EXPORT_SYMBOL vmlinux 0x651866b6 skb_pull_data +EXPORT_SYMBOL vmlinux 0x651948c5 finish_open +EXPORT_SYMBOL vmlinux 0x651a4139 test_taint +EXPORT_SYMBOL vmlinux 0x652032cb mac_pton +EXPORT_SYMBOL vmlinux 0x652ce9aa nla_memcmp +EXPORT_SYMBOL vmlinux 0x65408378 zlib_inflate_blob +EXPORT_SYMBOL vmlinux 0x65487097 __x86_indirect_thunk_rax +EXPORT_SYMBOL vmlinux 0x655a9b4d unregister_framebuffer +EXPORT_SYMBOL vmlinux 0x655b66c4 __phy_read_mmd +EXPORT_SYMBOL vmlinux 0x656a483e phy_start_aneg +EXPORT_SYMBOL vmlinux 0x656c1a0e string_escape_mem +EXPORT_SYMBOL vmlinux 0x656e4a6e snprintf +EXPORT_SYMBOL vmlinux 0x658a2a0a __x86_indirect_call_thunk_rbx +EXPORT_SYMBOL vmlinux 0x658ae82f blk_queue_dma_alignment +EXPORT_SYMBOL vmlinux 0x658be0b3 __tty_alloc_driver +EXPORT_SYMBOL vmlinux 0x658ce1a8 xxh64_reset +EXPORT_SYMBOL vmlinux 0x65929cae ns_to_timespec64 +EXPORT_SYMBOL vmlinux 0x659ded26 xfrm_flush_gc +EXPORT_SYMBOL vmlinux 0x65b0e595 md_bitmap_end_sync +EXPORT_SYMBOL vmlinux 0x65b992ac xen_alloc_p2m_entry +EXPORT_SYMBOL vmlinux 0x65bcd48f register_qdisc +EXPORT_SYMBOL vmlinux 0x65d1bab2 acpi_bios_warning +EXPORT_SYMBOL vmlinux 0x65d9e877 cpufreq_register_notifier +EXPORT_SYMBOL vmlinux 0x65dccf13 xz_dec_end +EXPORT_SYMBOL vmlinux 0x65df35ca __put_user_nocheck_2 +EXPORT_SYMBOL vmlinux 0x65e0d6d7 memory_read_from_buffer +EXPORT_SYMBOL vmlinux 0x65eea4be arp_send +EXPORT_SYMBOL vmlinux 0x65ef6d0f inet6_add_protocol +EXPORT_SYMBOL vmlinux 0x65fb03b9 simple_pin_fs +EXPORT_SYMBOL vmlinux 0x6603f32b to_nd_pfn +EXPORT_SYMBOL vmlinux 0x660a4a66 inet_del_offload +EXPORT_SYMBOL vmlinux 0x6626afca down +EXPORT_SYMBOL vmlinux 0x663182c9 acpi_get_gpe_status +EXPORT_SYMBOL vmlinux 0x6635a470 fscrypt_ioctl_get_policy +EXPORT_SYMBOL vmlinux 0x6636c4c7 __SCK__tp_func_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x663ccbe2 phy_mac_interrupt +EXPORT_SYMBOL vmlinux 0x66453ad9 nla_reserve +EXPORT_SYMBOL vmlinux 0x665e2513 zstd_max_clevel +EXPORT_SYMBOL vmlinux 0x66628bf3 ip_tunnel_metadata_cnt +EXPORT_SYMBOL vmlinux 0x666c14c0 __traceiter_dma_fence_emit +EXPORT_SYMBOL vmlinux 0x6670ecb8 t10_pi_type1_ip +EXPORT_SYMBOL vmlinux 0x6673f96d xxh32_reset +EXPORT_SYMBOL vmlinux 0x668a6503 unlock_new_inode +EXPORT_SYMBOL vmlinux 0x668b19a1 down_read +EXPORT_SYMBOL vmlinux 0x669c191b dm_consume_args +EXPORT_SYMBOL vmlinux 0x66ae9727 vme_slot_num +EXPORT_SYMBOL vmlinux 0x66af1fd1 lockref_put_or_lock +EXPORT_SYMBOL vmlinux 0x66b1d662 pcie_get_readrq +EXPORT_SYMBOL vmlinux 0x66b39cad padata_do_serial +EXPORT_SYMBOL vmlinux 0x66b4cc41 kmemdup +EXPORT_SYMBOL vmlinux 0x66cca4f9 __x86_indirect_thunk_rcx +EXPORT_SYMBOL vmlinux 0x66df19ae bdev_start_io_acct +EXPORT_SYMBOL vmlinux 0x66edfc78 _find_next_or_bit +EXPORT_SYMBOL vmlinux 0x6707797e mipi_dsi_turn_on_peripheral +EXPORT_SYMBOL vmlinux 0x670cbd70 sock_no_recvmsg +EXPORT_SYMBOL vmlinux 0x670ecece __x86_indirect_thunk_rbx +EXPORT_SYMBOL vmlinux 0x6713a8d2 netdev_get_xmit_slave +EXPORT_SYMBOL vmlinux 0x671b9fe0 devm_devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x6729d3df __get_user_4 +EXPORT_SYMBOL vmlinux 0x672d9c45 param_ops_invbool +EXPORT_SYMBOL vmlinux 0x6737cf1b get_user_pages_unlocked +EXPORT_SYMBOL vmlinux 0x673f815e agp_bridges +EXPORT_SYMBOL vmlinux 0x6749d53f hdmi_vendor_infoframe_init +EXPORT_SYMBOL vmlinux 0x6759f5c7 input_mt_get_slot_by_key +EXPORT_SYMBOL vmlinux 0x676a1593 vga_con +EXPORT_SYMBOL vmlinux 0x677c7c18 fscrypt_has_permitted_context +EXPORT_SYMBOL vmlinux 0x677fd6d1 bdi_unregister +EXPORT_SYMBOL vmlinux 0x678b96ec dma_pool_alloc +EXPORT_SYMBOL vmlinux 0x6797d568 intel_gmch_gtt_get +EXPORT_SYMBOL vmlinux 0x67b27ec1 tty_std_termios +EXPORT_SYMBOL vmlinux 0x67b78eb3 seq_hlist_next_rcu +EXPORT_SYMBOL vmlinux 0x67c13ea0 acpi_read +EXPORT_SYMBOL vmlinux 0x67cc9453 __x86_indirect_call_thunk_rax +EXPORT_SYMBOL vmlinux 0x67e39999 configfs_depend_item +EXPORT_SYMBOL vmlinux 0x67e76243 inet_addr_type_dev_table +EXPORT_SYMBOL vmlinux 0x67f95e30 __module_put_and_kthread_exit +EXPORT_SYMBOL vmlinux 0x6822d558 __dst_destroy_metrics_generic +EXPORT_SYMBOL vmlinux 0x682e591f sg_miter_skip +EXPORT_SYMBOL vmlinux 0x6843b14e phy_ethtool_get_stats +EXPORT_SYMBOL vmlinux 0x6851664e wrmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x687119ec __tracepoint_read_msr +EXPORT_SYMBOL vmlinux 0x687b6a16 kdbgetsymval +EXPORT_SYMBOL vmlinux 0x689067dd dma_fence_chain_ops +EXPORT_SYMBOL vmlinux 0x68a12ab8 rep_movs_alternative +EXPORT_SYMBOL vmlinux 0x68af3c43 fs_context_for_mount +EXPORT_SYMBOL vmlinux 0x68bd3cb4 keyring_clear +EXPORT_SYMBOL vmlinux 0x68d9620a migrate_vma_finalize +EXPORT_SYMBOL vmlinux 0x68ea8c14 dma_resv_iter_first_unlocked +EXPORT_SYMBOL vmlinux 0x68f3d59c param_ops_charp +EXPORT_SYMBOL vmlinux 0x69049cd2 radix_tree_replace_slot +EXPORT_SYMBOL vmlinux 0x69094b61 param_ops_long +EXPORT_SYMBOL vmlinux 0x69120ccc skb_copy_and_csum_bits +EXPORT_SYMBOL vmlinux 0x69668826 netdev_increment_features +EXPORT_SYMBOL vmlinux 0x696df14c genphy_soft_reset +EXPORT_SYMBOL vmlinux 0x696e5a0e ip6_output +EXPORT_SYMBOL vmlinux 0x6971447a rtc_month_days +EXPORT_SYMBOL vmlinux 0x6972e413 __bitmap_weight_and +EXPORT_SYMBOL vmlinux 0x697ed5f0 memcpy_and_pad +EXPORT_SYMBOL vmlinux 0x6988b7e5 vme_register_bridge +EXPORT_SYMBOL vmlinux 0x6988d0ca cpu_dr7 +EXPORT_SYMBOL vmlinux 0x69acdf38 memcpy +EXPORT_SYMBOL vmlinux 0x69d5d554 flow_rule_match_ipv6_addrs +EXPORT_SYMBOL vmlinux 0x69d666ba fwnode_irq_get +EXPORT_SYMBOL vmlinux 0x69dd3b5b crc32_le +EXPORT_SYMBOL vmlinux 0x69de8757 vme_check_window +EXPORT_SYMBOL vmlinux 0x69fe611b pci_disable_msi +EXPORT_SYMBOL vmlinux 0x6a037cf1 mempool_kfree +EXPORT_SYMBOL vmlinux 0x6a16f561 vmf_insert_pfn_prot +EXPORT_SYMBOL vmlinux 0x6a297767 __register_binfmt +EXPORT_SYMBOL vmlinux 0x6a49026f pci_read_config_word +EXPORT_SYMBOL vmlinux 0x6a497f09 input_free_device +EXPORT_SYMBOL vmlinux 0x6a5b6ebd vfs_create_mount +EXPORT_SYMBOL vmlinux 0x6a5cb5ee __get_free_pages +EXPORT_SYMBOL vmlinux 0x6a5ecb18 unregister_module_notifier +EXPORT_SYMBOL vmlinux 0x6a5fa363 sigprocmask +EXPORT_SYMBOL vmlinux 0x6a6e05bf kstrtou8 +EXPORT_SYMBOL vmlinux 0x6a806f18 scsi_target_resume +EXPORT_SYMBOL vmlinux 0x6a8d72c5 netdev_has_any_upper_dev +EXPORT_SYMBOL vmlinux 0x6a959012 sdev_prefix_printk +EXPORT_SYMBOL vmlinux 0x6a9eb5b8 jbd2_journal_put_journal_head +EXPORT_SYMBOL vmlinux 0x6a9edfd4 ip_cmsg_recv_offset +EXPORT_SYMBOL vmlinux 0x6aa8fed9 tcp_peek_len +EXPORT_SYMBOL vmlinux 0x6aaa6ace tc_setup_cb_replace +EXPORT_SYMBOL vmlinux 0x6abaf228 xfrm_policy_insert +EXPORT_SYMBOL vmlinux 0x6ad1eb10 generic_buffers_fsync +EXPORT_SYMBOL vmlinux 0x6ad9ffa2 neigh_parms_alloc +EXPORT_SYMBOL vmlinux 0x6add5c9a dmi_find_device +EXPORT_SYMBOL vmlinux 0x6aeefac4 zlib_deflateReset +EXPORT_SYMBOL vmlinux 0x6af980a9 from_kprojid +EXPORT_SYMBOL vmlinux 0x6b10bee1 _copy_to_user +EXPORT_SYMBOL vmlinux 0x6b1d749a __tcf_em_tree_match +EXPORT_SYMBOL vmlinux 0x6b27729b radix_tree_gang_lookup +EXPORT_SYMBOL vmlinux 0x6b2dc060 dump_stack +EXPORT_SYMBOL vmlinux 0x6b30c032 kernel_getpeername +EXPORT_SYMBOL vmlinux 0x6b39db08 path_put +EXPORT_SYMBOL vmlinux 0x6b5182f4 request_partial_firmware_into_buf +EXPORT_SYMBOL vmlinux 0x6b55acd0 rtnl_lock_killable +EXPORT_SYMBOL vmlinux 0x6b627328 inet_frag_destroy +EXPORT_SYMBOL vmlinux 0x6b80d61b dm_table_event +EXPORT_SYMBOL vmlinux 0x6b853d06 ns_to_kernel_old_timeval +EXPORT_SYMBOL vmlinux 0x6b8bf149 netif_receive_skb_list +EXPORT_SYMBOL vmlinux 0x6b981fd1 km_policy_expired +EXPORT_SYMBOL vmlinux 0x6ba7958e mmc_can_gpio_ro +EXPORT_SYMBOL vmlinux 0x6bc3fbc0 __unregister_chrdev +EXPORT_SYMBOL vmlinux 0x6bc5d944 sched_autogroup_create_attach +EXPORT_SYMBOL vmlinux 0x6bd0e573 down_interruptible +EXPORT_SYMBOL vmlinux 0x6be1c1f8 acpi_install_method +EXPORT_SYMBOL vmlinux 0x6be960ee skb_dequeue_tail +EXPORT_SYMBOL vmlinux 0x6bf0c014 generic_file_llseek_size +EXPORT_SYMBOL vmlinux 0x6bf87016 mark_buffer_write_io_error +EXPORT_SYMBOL vmlinux 0x6bfa704b generic_fillattr +EXPORT_SYMBOL vmlinux 0x6bfadef2 tty_write_room +EXPORT_SYMBOL vmlinux 0x6bff5116 crypto_sha512_update +EXPORT_SYMBOL vmlinux 0x6c129a44 __sock_queue_rcv_skb +EXPORT_SYMBOL vmlinux 0x6c224cda gen_pool_destroy +EXPORT_SYMBOL vmlinux 0x6c343814 nf_unregister_net_hook +EXPORT_SYMBOL vmlinux 0x6c52ee0e ip_local_deliver +EXPORT_SYMBOL vmlinux 0x6c551244 vfs_mknod +EXPORT_SYMBOL vmlinux 0x6c566983 simple_transaction_release +EXPORT_SYMBOL vmlinux 0x6c61ce70 num_registered_fb +EXPORT_SYMBOL vmlinux 0x6c67ee66 sg_miter_start +EXPORT_SYMBOL vmlinux 0x6c6ab77a sock_common_setsockopt +EXPORT_SYMBOL vmlinux 0x6c6bbe49 tso_build_data +EXPORT_SYMBOL vmlinux 0x6c8fb365 netlink_broadcast +EXPORT_SYMBOL vmlinux 0x6c940de9 handshake_req_private +EXPORT_SYMBOL vmlinux 0x6c9d850f mipi_dsi_host_register +EXPORT_SYMBOL vmlinux 0x6c9d9190 configfs_register_subsystem +EXPORT_SYMBOL vmlinux 0x6cb46525 netlbl_catmap_walk +EXPORT_SYMBOL vmlinux 0x6cc09945 ioread32_rep +EXPORT_SYMBOL vmlinux 0x6cccaefb bdi_put +EXPORT_SYMBOL vmlinux 0x6cf390f0 phy_ethtool_ksettings_get +EXPORT_SYMBOL vmlinux 0x6d16c104 mutex_lock_killable +EXPORT_SYMBOL vmlinux 0x6d1b3262 mr_vif_seq_next +EXPORT_SYMBOL vmlinux 0x6d294e43 clock_t_to_jiffies +EXPORT_SYMBOL vmlinux 0x6d334118 __get_user_8 +EXPORT_SYMBOL vmlinux 0x6d43e4bb pskb_extract +EXPORT_SYMBOL vmlinux 0x6d44b2a8 sock_no_listen +EXPORT_SYMBOL vmlinux 0x6d58a4d9 skb_checksum_setup +EXPORT_SYMBOL vmlinux 0x6d58f69e agp3_generic_sizes +EXPORT_SYMBOL vmlinux 0x6d5b503e param_get_ulong +EXPORT_SYMBOL vmlinux 0x6d5f47c7 __netlink_kernel_create +EXPORT_SYMBOL vmlinux 0x6d5f5b91 radix_tree_tagged +EXPORT_SYMBOL vmlinux 0x6d5fb4a5 __x86_indirect_jump_thunk_rsp +EXPORT_SYMBOL vmlinux 0x6d717ee5 ps2_init +EXPORT_SYMBOL vmlinux 0x6d7bca31 vma_set_file +EXPORT_SYMBOL vmlinux 0x6d7c7dcc bitmap_cut +EXPORT_SYMBOL vmlinux 0x6d809398 ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x6d9603f8 __dynamic_ibdev_dbg +EXPORT_SYMBOL vmlinux 0x6da954aa param_get_bool +EXPORT_SYMBOL vmlinux 0x6dba9051 xz_dec_microlzma_end +EXPORT_SYMBOL vmlinux 0x6dc35b25 radix_tree_iter_delete +EXPORT_SYMBOL vmlinux 0x6dcb519e kfree_skb_reason +EXPORT_SYMBOL vmlinux 0x6dcf857f uuid_null +EXPORT_SYMBOL vmlinux 0x6dd17e7b acpi_get_table_header +EXPORT_SYMBOL vmlinux 0x6ddfd09c unregister_sysctl_table +EXPORT_SYMBOL vmlinux 0x6de99ee7 pci_write_config_byte +EXPORT_SYMBOL vmlinux 0x6deac688 blk_start_plug +EXPORT_SYMBOL vmlinux 0x6df1aaf1 kernel_sigaction +EXPORT_SYMBOL vmlinux 0x6df31390 intel_gmch_gtt_clear_range +EXPORT_SYMBOL vmlinux 0x6df956d2 dev_pm_opp_unregister_notifier +EXPORT_SYMBOL vmlinux 0x6e145aaf clocksource_unregister +EXPORT_SYMBOL vmlinux 0x6e302ccf __mmc_claim_host +EXPORT_SYMBOL vmlinux 0x6e32fe52 end_buffer_read_sync +EXPORT_SYMBOL vmlinux 0x6e3dd3ee eth_header_parse_protocol +EXPORT_SYMBOL vmlinux 0x6e3fba53 xp_dma_map +EXPORT_SYMBOL vmlinux 0x6e457bf7 skb_append +EXPORT_SYMBOL vmlinux 0x6e55da12 jbd2_journal_start_commit +EXPORT_SYMBOL vmlinux 0x6e5928ab of_find_mipi_dsi_device_by_node +EXPORT_SYMBOL vmlinux 0x6e5b8651 xz_dec_run +EXPORT_SYMBOL vmlinux 0x6e6a5b78 param_ops_int +EXPORT_SYMBOL vmlinux 0x6e720ff2 rtnl_unlock +EXPORT_SYMBOL vmlinux 0x6e74a7f8 mpage_writepages +EXPORT_SYMBOL vmlinux 0x6e87dac8 xfrm_find_acq +EXPORT_SYMBOL vmlinux 0x6e9dd606 __symbol_put +EXPORT_SYMBOL vmlinux 0x6ea7575d acpi_dispatch_gpe +EXPORT_SYMBOL vmlinux 0x6ea9363b force_sig +EXPORT_SYMBOL vmlinux 0x6ecc6571 input_mt_drop_unused +EXPORT_SYMBOL vmlinux 0x6eecfaf4 sg_copy_buffer +EXPORT_SYMBOL vmlinux 0x6ef5b67c netdev_next_lower_dev_rcu +EXPORT_SYMBOL vmlinux 0x6efb3f8b skb_seq_read +EXPORT_SYMBOL vmlinux 0x6f04f556 dquot_acquire +EXPORT_SYMBOL vmlinux 0x6f13b184 blk_mq_unique_tag +EXPORT_SYMBOL vmlinux 0x6f14e9db console_list_lock +EXPORT_SYMBOL vmlinux 0x6f2510fe d_rehash +EXPORT_SYMBOL vmlinux 0x6f3efbf7 sk_alloc +EXPORT_SYMBOL vmlinux 0x6f41a428 acpi_get_vendor_resource +EXPORT_SYMBOL vmlinux 0x6f41a639 irq_cpu_rmap_remove +EXPORT_SYMBOL vmlinux 0x6f42ed20 folio_wait_bit_killable +EXPORT_SYMBOL vmlinux 0x6f4a59e4 sort_r +EXPORT_SYMBOL vmlinux 0x6f55f6e6 phy_device_create +EXPORT_SYMBOL vmlinux 0x6f5ab52f acpi_get_local_address +EXPORT_SYMBOL vmlinux 0x6f76e763 vc_resize +EXPORT_SYMBOL vmlinux 0x6f7793a5 skb_flow_dissector_init +EXPORT_SYMBOL vmlinux 0x6f8c6e3f scsi_is_host_device +EXPORT_SYMBOL vmlinux 0x6f915a45 dqstats +EXPORT_SYMBOL vmlinux 0x6fa79ac3 vfs_getattr +EXPORT_SYMBOL vmlinux 0x6fb49676 queue_rcu_work +EXPORT_SYMBOL vmlinux 0x6fbc6a00 radix_tree_insert +EXPORT_SYMBOL vmlinux 0x6fbef58e pci_scan_single_device +EXPORT_SYMBOL vmlinux 0x6fc1d2a0 folio_clear_dirty_for_io +EXPORT_SYMBOL vmlinux 0x6fcb87a1 touch_softlockup_watchdog +EXPORT_SYMBOL vmlinux 0x6ff19169 __SCK__tp_func_module_get +EXPORT_SYMBOL vmlinux 0x6ff1f0fc fscrypt_ioctl_set_policy +EXPORT_SYMBOL vmlinux 0x6ff988f5 pci_clear_master +EXPORT_SYMBOL vmlinux 0x70002fe8 siphash_1u32 +EXPORT_SYMBOL vmlinux 0x700c6c17 key_create +EXPORT_SYMBOL vmlinux 0x70120fbf kernel_sock_shutdown +EXPORT_SYMBOL vmlinux 0x701d0a4e follow_down +EXPORT_SYMBOL vmlinux 0x7021819e init_pseudo +EXPORT_SYMBOL vmlinux 0x7023bea8 unregister_acpi_notifier +EXPORT_SYMBOL vmlinux 0x702946da ucs2_strlen +EXPORT_SYMBOL vmlinux 0x702ed85d seq_put_decimal_ull +EXPORT_SYMBOL vmlinux 0x703e4954 mini_qdisc_pair_swap +EXPORT_SYMBOL vmlinux 0x7040fff9 rtc_lock +EXPORT_SYMBOL vmlinux 0x7054a3e4 request_dma +EXPORT_SYMBOL vmlinux 0x7060d475 kern_sys_bpf +EXPORT_SYMBOL vmlinux 0x706715cf xsk_tx_release +EXPORT_SYMBOL vmlinux 0x70ab4a88 device_get_ethdev_address +EXPORT_SYMBOL vmlinux 0x70ac2c1a blk_limits_io_min +EXPORT_SYMBOL vmlinux 0x70ad75fb radix_tree_lookup +EXPORT_SYMBOL vmlinux 0x70bad697 tcf_register_action +EXPORT_SYMBOL vmlinux 0x70bb7de2 __x86_indirect_jump_thunk_rbp +EXPORT_SYMBOL vmlinux 0x70c5cb4d phy_attach_direct +EXPORT_SYMBOL vmlinux 0x70da70ab neigh_seq_start +EXPORT_SYMBOL vmlinux 0x70daa11e dma_fence_remove_callback +EXPORT_SYMBOL vmlinux 0x70ddbcc6 simple_setattr +EXPORT_SYMBOL vmlinux 0x70e9d52a pci_map_biosrom +EXPORT_SYMBOL vmlinux 0x70efe66c mdiobus_write +EXPORT_SYMBOL vmlinux 0x7106361f unregister_netdevice_notifier_dev_net +EXPORT_SYMBOL vmlinux 0x7109140a pci_get_subsys +EXPORT_SYMBOL vmlinux 0x711c7917 d_alloc_parallel +EXPORT_SYMBOL vmlinux 0x7129e5f8 hex_asc +EXPORT_SYMBOL vmlinux 0x713a113e device_get_mac_address +EXPORT_SYMBOL vmlinux 0x7154e29a vga_put +EXPORT_SYMBOL vmlinux 0x7155bcf8 sync_file_get_fence +EXPORT_SYMBOL vmlinux 0x715a5ed0 vprintk +EXPORT_SYMBOL vmlinux 0x7171121c overflowgid +EXPORT_SYMBOL vmlinux 0x71759be9 ata_std_end_eh +EXPORT_SYMBOL vmlinux 0x717d1f96 hdmi_infoframe_check +EXPORT_SYMBOL vmlinux 0x718398b6 inet6_unregister_protosw +EXPORT_SYMBOL vmlinux 0x718a4693 __SCT__tp_func_mmap_lock_start_locking +EXPORT_SYMBOL vmlinux 0x71989bda __SetPageMovable +EXPORT_SYMBOL vmlinux 0x71a672ef dmam_pool_destroy +EXPORT_SYMBOL vmlinux 0x71a9cfa6 bio_kmalloc +EXPORT_SYMBOL vmlinux 0x71bcd5e0 nla_put_nohdr +EXPORT_SYMBOL vmlinux 0x71c392d8 netif_set_real_num_queues +EXPORT_SYMBOL vmlinux 0x71fb6892 dma_fence_array_next +EXPORT_SYMBOL vmlinux 0x71ffb0d9 devm_devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0x720a27a7 __register_blkdev +EXPORT_SYMBOL vmlinux 0x72130ae2 mipi_dsi_shutdown_peripheral +EXPORT_SYMBOL vmlinux 0x723e7796 rproc_boot +EXPORT_SYMBOL vmlinux 0x7242d5aa cdrom_ioctl +EXPORT_SYMBOL vmlinux 0x72494920 nf_hook_slow +EXPORT_SYMBOL vmlinux 0x7257bad8 mr_vif_seq_idx +EXPORT_SYMBOL vmlinux 0x7267e25d inet_add_offload +EXPORT_SYMBOL vmlinux 0x726bc3c7 wait_for_completion_killable_timeout +EXPORT_SYMBOL vmlinux 0x729776de gnet_stats_copy_basic +EXPORT_SYMBOL vmlinux 0x729d7a18 xfrm_state_lookup_byspi +EXPORT_SYMBOL vmlinux 0x72b243d4 free_dma +EXPORT_SYMBOL vmlinux 0x72b9d287 default_grn +EXPORT_SYMBOL vmlinux 0x72cc696d padata_alloc_shell +EXPORT_SYMBOL vmlinux 0x72d79d83 pgdir_shift +EXPORT_SYMBOL vmlinux 0x72e8b275 pps_lookup_dev +EXPORT_SYMBOL vmlinux 0x72ea7b2d scsi_device_type +EXPORT_SYMBOL vmlinux 0x72f1367c max8925_reg_write +EXPORT_SYMBOL vmlinux 0x72f14ff7 acpi_get_object_info +EXPORT_SYMBOL vmlinux 0x72fcf56d dev_close +EXPORT_SYMBOL vmlinux 0x73102d7a vfs_get_tree +EXPORT_SYMBOL vmlinux 0x7313f3a7 clk_add_alias +EXPORT_SYMBOL vmlinux 0x7315a4e9 twl6030_mmc_card_detect_config +EXPORT_SYMBOL vmlinux 0x7317a835 page_pool_update_nid +EXPORT_SYMBOL vmlinux 0x732dd326 groups_free +EXPORT_SYMBOL vmlinux 0x73332b56 vlan_dev_vlan_id +EXPORT_SYMBOL vmlinux 0x735a0bd5 native_io_delay +EXPORT_SYMBOL vmlinux 0x735e6a81 acpi_evaluate_integer +EXPORT_SYMBOL vmlinux 0x7366c5be kern_unmount_array +EXPORT_SYMBOL vmlinux 0x737c3d69 sock_register +EXPORT_SYMBOL vmlinux 0x7380dffa argv_split +EXPORT_SYMBOL vmlinux 0x738cc0fd show_init_ipc_ns +EXPORT_SYMBOL vmlinux 0x739cdae6 __skb_try_recv_datagram +EXPORT_SYMBOL vmlinux 0x739df3aa km_state_expired +EXPORT_SYMBOL vmlinux 0x73abb180 alloc_contig_range +EXPORT_SYMBOL vmlinux 0x73b5e1ee freezing_slow_path +EXPORT_SYMBOL vmlinux 0x73cd0f6f console_start +EXPORT_SYMBOL vmlinux 0x73dac48c xsk_tx_peek_release_desc_batch +EXPORT_SYMBOL vmlinux 0x73dd54eb irq_fpu_usable +EXPORT_SYMBOL vmlinux 0x73e118fa pmem_sector_size +EXPORT_SYMBOL vmlinux 0x73e182a9 rawv6_mh_filter_unregister +EXPORT_SYMBOL vmlinux 0x73fabce5 pin_user_pages +EXPORT_SYMBOL vmlinux 0x74033187 _dev_printk +EXPORT_SYMBOL vmlinux 0x740a1b95 reserve_evntsel_nmi +EXPORT_SYMBOL vmlinux 0x740cfa36 iov_iter_discard +EXPORT_SYMBOL vmlinux 0x7410aba2 strreplace +EXPORT_SYMBOL vmlinux 0x7412ed5b kvfree_sensitive +EXPORT_SYMBOL vmlinux 0x7413793a EISA_bus +EXPORT_SYMBOL vmlinux 0x741adf5a remove_arg_zero +EXPORT_SYMBOL vmlinux 0x741e99e3 set_create_files_as +EXPORT_SYMBOL vmlinux 0x742578a5 wait_for_random_bytes +EXPORT_SYMBOL vmlinux 0x7429e20c kstrtos8 +EXPORT_SYMBOL vmlinux 0x742d5e64 module_put +EXPORT_SYMBOL vmlinux 0x743ff4af _dev_info +EXPORT_SYMBOL vmlinux 0x7442232d sock_no_sendmsg_locked +EXPORT_SYMBOL vmlinux 0x744c22fa nf_hook_slow_list +EXPORT_SYMBOL vmlinux 0x7453d3e8 security_release_secctx +EXPORT_SYMBOL vmlinux 0x74652874 jbd2_journal_inode_ranged_wait +EXPORT_SYMBOL vmlinux 0x74754435 acpi_bus_generate_netlink_event +EXPORT_SYMBOL vmlinux 0x7483dc59 pci_dev_present +EXPORT_SYMBOL vmlinux 0x749ef58d generic_delete_inode +EXPORT_SYMBOL vmlinux 0x74ae8e19 scsi_eh_prep_cmnd +EXPORT_SYMBOL vmlinux 0x74b2291c dma_sync_single_for_cpu +EXPORT_SYMBOL vmlinux 0x74b8e674 slhc_toss +EXPORT_SYMBOL vmlinux 0x74be5e5f __scm_send +EXPORT_SYMBOL vmlinux 0x74c134b9 __sw_hweight32 +EXPORT_SYMBOL vmlinux 0x74c3ba53 tty_register_driver +EXPORT_SYMBOL vmlinux 0x74d42956 blk_queue_virt_boundary +EXPORT_SYMBOL vmlinux 0x74da064a set_security_override +EXPORT_SYMBOL vmlinux 0x74dd9e0b dma_fence_wait_any_timeout +EXPORT_SYMBOL vmlinux 0x74e5ff1a udpv6_encap_enable +EXPORT_SYMBOL vmlinux 0x74f537d8 netif_tx_wake_queue +EXPORT_SYMBOL vmlinux 0x7507f34b pcie_capability_read_word +EXPORT_SYMBOL vmlinux 0x751ef950 dev_get_by_index_rcu +EXPORT_SYMBOL vmlinux 0x7520d3d2 ipv6_chk_addr +EXPORT_SYMBOL vmlinux 0x7525b623 vme_irq_request +EXPORT_SYMBOL vmlinux 0x752aaec3 sk_mc_loop +EXPORT_SYMBOL vmlinux 0x7530bb0c __SCT__tp_func_write_msr +EXPORT_SYMBOL vmlinux 0x7535aeff tty_insert_flip_string_fixed_flag +EXPORT_SYMBOL vmlinux 0x7538b132 agp_off +EXPORT_SYMBOL vmlinux 0x753b8ab6 sock_queue_err_skb +EXPORT_SYMBOL vmlinux 0x754d539c strlen +EXPORT_SYMBOL vmlinux 0x755f4ba3 blake2s_compress_generic +EXPORT_SYMBOL vmlinux 0x7564873d skb_eth_push +EXPORT_SYMBOL vmlinux 0x756ff586 tc_setup_cb_call +EXPORT_SYMBOL vmlinux 0x75710120 vm_event_states +EXPORT_SYMBOL vmlinux 0x75729d37 dev_uc_sync_multiple +EXPORT_SYMBOL vmlinux 0x75871f5e acpi_get_next_object +EXPORT_SYMBOL vmlinux 0x7590c32f gnet_stats_finish_copy +EXPORT_SYMBOL vmlinux 0x75943e25 i8253_lock +EXPORT_SYMBOL vmlinux 0x759f5e7f neigh_destroy +EXPORT_SYMBOL vmlinux 0x75a1daba devm_pci_alloc_host_bridge +EXPORT_SYMBOL vmlinux 0x75a7f273 textsearch_find_continuous +EXPORT_SYMBOL vmlinux 0x75bda77a seq_hlist_next +EXPORT_SYMBOL vmlinux 0x75cc466c mmc_free_host +EXPORT_SYMBOL vmlinux 0x75d0deb9 nsecs_to_jiffies64 +EXPORT_SYMBOL vmlinux 0x75d499dd vmcore_add_device_dump +EXPORT_SYMBOL vmlinux 0x75d5ced3 pci_find_next_bus +EXPORT_SYMBOL vmlinux 0x75e16aaa pci_enable_device_io +EXPORT_SYMBOL vmlinux 0x75eadde0 nd_device_unregister +EXPORT_SYMBOL vmlinux 0x7609686b set_pages_wb +EXPORT_SYMBOL vmlinux 0x760a0f4f yield +EXPORT_SYMBOL vmlinux 0x7622322b kset_unregister +EXPORT_SYMBOL vmlinux 0x7624249e dim_park_tired +EXPORT_SYMBOL vmlinux 0x7647726c handle_sysrq +EXPORT_SYMBOL vmlinux 0x7651e4d3 xfrm_policy_register_afinfo +EXPORT_SYMBOL vmlinux 0x765ff474 crc_t10dif_generic +EXPORT_SYMBOL vmlinux 0x766a0927 mempool_alloc_pages +EXPORT_SYMBOL vmlinux 0x766b79b9 deactivate_super +EXPORT_SYMBOL vmlinux 0x767dce4b acpi_disable_all_gpes +EXPORT_SYMBOL vmlinux 0x767ddb02 set_memory_wc +EXPORT_SYMBOL vmlinux 0x7682ba4e __copy_overflow +EXPORT_SYMBOL vmlinux 0x76894af0 forget_cached_acl +EXPORT_SYMBOL vmlinux 0x768ee329 call_usermodehelper_exec +EXPORT_SYMBOL vmlinux 0x769eff00 __ip4_datagram_connect +EXPORT_SYMBOL vmlinux 0x769f6e64 errseq_check +EXPORT_SYMBOL vmlinux 0x76ad461a security_d_instantiate +EXPORT_SYMBOL vmlinux 0x76c3affa begin_new_exec +EXPORT_SYMBOL vmlinux 0x76cc5cde sock_efree +EXPORT_SYMBOL vmlinux 0x76ccd7d7 default_llseek +EXPORT_SYMBOL vmlinux 0x76d3cd60 laptop_mode +EXPORT_SYMBOL vmlinux 0x76efc249 _atomic_dec_and_raw_lock_irqsave +EXPORT_SYMBOL vmlinux 0x76fb08a7 amd_iommu_unregister_ppr_notifier +EXPORT_SYMBOL vmlinux 0x77084810 netdev_features_change +EXPORT_SYMBOL vmlinux 0x7711bd66 user_path_create +EXPORT_SYMBOL vmlinux 0x77135333 netdev_update_features +EXPORT_SYMBOL vmlinux 0x773257fe ip_mc_inc_group +EXPORT_SYMBOL vmlinux 0x77358855 iomem_resource +EXPORT_SYMBOL vmlinux 0x773fa409 __kfifo_dma_in_finish_r +EXPORT_SYMBOL vmlinux 0x77451886 sock_no_ioctl +EXPORT_SYMBOL vmlinux 0x77456e0a acpi_root_dir +EXPORT_SYMBOL vmlinux 0x7749b9af input_mt_init_slots +EXPORT_SYMBOL vmlinux 0x7756178f brioctl_set +EXPORT_SYMBOL vmlinux 0x77694470 vme_bus_error_handler +EXPORT_SYMBOL vmlinux 0x776b8720 dev_mc_init +EXPORT_SYMBOL vmlinux 0x776ca93a __clzdi2 +EXPORT_SYMBOL vmlinux 0x77707369 ip6_frag_next +EXPORT_SYMBOL vmlinux 0x777e829f kfree_skb_partial +EXPORT_SYMBOL vmlinux 0x7790a51a security_sock_graft +EXPORT_SYMBOL vmlinux 0x779bcb2d d_alloc_name +EXPORT_SYMBOL vmlinux 0x779d75d7 tcp_sock_set_cork +EXPORT_SYMBOL vmlinux 0x77b14d87 phy_init_hw +EXPORT_SYMBOL vmlinux 0x77bc13a0 strim +EXPORT_SYMBOL vmlinux 0x77c44fd2 pci_reenable_device +EXPORT_SYMBOL vmlinux 0x77c4d5df mapping_read_folio_gfp +EXPORT_SYMBOL vmlinux 0x77c5f325 pci_scan_bridge +EXPORT_SYMBOL vmlinux 0x77ce9b87 ps2_begin_command +EXPORT_SYMBOL vmlinux 0x77d6b264 scsi_device_lookup +EXPORT_SYMBOL vmlinux 0x77e56c2d param_get_dyndbg_classes +EXPORT_SYMBOL vmlinux 0x77e9eb37 aes_encrypt +EXPORT_SYMBOL vmlinux 0x77f109c1 tcp_md5_hash_key +EXPORT_SYMBOL vmlinux 0x77f2f276 iterate_dir +EXPORT_SYMBOL vmlinux 0x77f5f004 set_pages_array_wc +EXPORT_SYMBOL vmlinux 0x7807f0f8 schedule_timeout_idle +EXPORT_SYMBOL vmlinux 0x780b1ef9 nf_register_net_hook +EXPORT_SYMBOL vmlinux 0x780c22b9 dma_sync_sg_for_cpu +EXPORT_SYMBOL vmlinux 0x78161f39 call_usermodehelper_setup +EXPORT_SYMBOL vmlinux 0x782f2828 d_path +EXPORT_SYMBOL vmlinux 0x7846af3e __kfifo_len_r +EXPORT_SYMBOL vmlinux 0x78599c25 from_kgid_munged +EXPORT_SYMBOL vmlinux 0x786c177f fb_get_buffer_offset +EXPORT_SYMBOL vmlinux 0x786e595b crypto_sha3_init +EXPORT_SYMBOL vmlinux 0x789bdfd4 tty_driver_kref_put +EXPORT_SYMBOL vmlinux 0x78a16f48 aes_decrypt +EXPORT_SYMBOL vmlinux 0x78ae5764 generic_setlease +EXPORT_SYMBOL vmlinux 0x78aff17d ptp_clock_event +EXPORT_SYMBOL vmlinux 0x78b887ed vsprintf +EXPORT_SYMBOL vmlinux 0x78bb27e7 __blk_mq_end_request +EXPORT_SYMBOL vmlinux 0x78d5752c reuseport_stop_listen_sock +EXPORT_SYMBOL vmlinux 0x78da2b10 mmc_request_done +EXPORT_SYMBOL vmlinux 0x78df6bd7 no_pci_devices +EXPORT_SYMBOL vmlinux 0x78f738b6 i2c_transfer +EXPORT_SYMBOL vmlinux 0x78fbfdef __ip_options_compile +EXPORT_SYMBOL vmlinux 0x79134bb1 dm_table_get_mode +EXPORT_SYMBOL vmlinux 0x7919b383 alloc_cpu_rmap +EXPORT_SYMBOL vmlinux 0x7925a5c2 page_pool_create +EXPORT_SYMBOL vmlinux 0x792641c5 vma_alloc_folio +EXPORT_SYMBOL vmlinux 0x793cf0a1 dma_get_sgtable_attrs +EXPORT_SYMBOL vmlinux 0x793d8b98 sk_stream_wait_close +EXPORT_SYMBOL vmlinux 0x7941c4ce inet_sock_destruct +EXPORT_SYMBOL vmlinux 0x7944f454 tcp_conn_request +EXPORT_SYMBOL vmlinux 0x7952ca3b scsi_device_set_state +EXPORT_SYMBOL vmlinux 0x79577285 flow_indr_dev_register +EXPORT_SYMBOL vmlinux 0x7959f5d6 mount_subtree +EXPORT_SYMBOL vmlinux 0x79627494 dev_mc_del_global +EXPORT_SYMBOL vmlinux 0x79786bbf kernel_getsockname +EXPORT_SYMBOL vmlinux 0x7984eefc key_update +EXPORT_SYMBOL vmlinux 0x79892bc4 security_unix_may_send +EXPORT_SYMBOL vmlinux 0x798a4814 ethtool_aggregate_phy_stats +EXPORT_SYMBOL vmlinux 0x79a33f85 vme_get_size +EXPORT_SYMBOL vmlinux 0x79df9633 ioremap_encrypted +EXPORT_SYMBOL vmlinux 0x79e4cbe8 override_creds +EXPORT_SYMBOL vmlinux 0x79ee4640 nd_btt_probe +EXPORT_SYMBOL vmlinux 0x79f290dd iget_locked +EXPORT_SYMBOL vmlinux 0x7a1bcd59 gf128mul_x8_ble +EXPORT_SYMBOL vmlinux 0x7a2ff57e security_current_getsecid_subj +EXPORT_SYMBOL vmlinux 0x7a346f2f scsi_register_interface +EXPORT_SYMBOL vmlinux 0x7a4fa587 kmem_cache_create_usercopy +EXPORT_SYMBOL vmlinux 0x7a53a06d flow_indr_dev_exists +EXPORT_SYMBOL vmlinux 0x7a72a3ff proc_create_single_data +EXPORT_SYMBOL vmlinux 0x7a77af2e nexthop_res_grp_activity_update +EXPORT_SYMBOL vmlinux 0x7a88da87 iosf_mbi_write +EXPORT_SYMBOL vmlinux 0x7a95e5ae do_settimeofday64 +EXPORT_SYMBOL vmlinux 0x7a9b10a2 dev_get_by_napi_id +EXPORT_SYMBOL vmlinux 0x7a9fde14 dquot_free_inode +EXPORT_SYMBOL vmlinux 0x7aa1756e kvfree +EXPORT_SYMBOL vmlinux 0x7aa86847 get_phy_device +EXPORT_SYMBOL vmlinux 0x7ac10a48 xfrm_input_resume +EXPORT_SYMBOL vmlinux 0x7aca8b9f klp_sched_try_switch_key +EXPORT_SYMBOL vmlinux 0x7acc153c mmc_command_done +EXPORT_SYMBOL vmlinux 0x7acd906e pnp_start_dev +EXPORT_SYMBOL vmlinux 0x7ad050b9 qid_lt +EXPORT_SYMBOL vmlinux 0x7adc0fbf rb_replace_node_rcu +EXPORT_SYMBOL vmlinux 0x7af4145f agp_collect_device_status +EXPORT_SYMBOL vmlinux 0x7aff77a3 __cpu_present_mask +EXPORT_SYMBOL vmlinux 0x7b0f1d0a mtree_store +EXPORT_SYMBOL vmlinux 0x7b2cccf2 seq_puts +EXPORT_SYMBOL vmlinux 0x7b37d4a7 _find_first_zero_bit +EXPORT_SYMBOL vmlinux 0x7b4da6ff __init_rwsem +EXPORT_SYMBOL vmlinux 0x7b54f270 posix_acl_valid +EXPORT_SYMBOL vmlinux 0x7b5b8f31 sha256_update +EXPORT_SYMBOL vmlinux 0x7b66dd1a redraw_screen +EXPORT_SYMBOL vmlinux 0x7b6bacee sg_alloc_append_table_from_pages +EXPORT_SYMBOL vmlinux 0x7b82b9a1 idr_replace +EXPORT_SYMBOL vmlinux 0x7b831f8b __starget_for_each_device +EXPORT_SYMBOL vmlinux 0x7b89b64f inc_nlink +EXPORT_SYMBOL vmlinux 0x7b8a7465 __sk_receive_skb +EXPORT_SYMBOL vmlinux 0x7b8ef51c __vfs_getxattr +EXPORT_SYMBOL vmlinux 0x7ba17fad proc_mkdir_mode +EXPORT_SYMBOL vmlinux 0x7bae3ef2 sk_error_report +EXPORT_SYMBOL vmlinux 0x7bb50b88 acpi_write +EXPORT_SYMBOL vmlinux 0x7bbccd05 nr_node_ids +EXPORT_SYMBOL vmlinux 0x7bdfb1f4 tcp_md5_hash_skb_data +EXPORT_SYMBOL vmlinux 0x7bf98491 _dev_emerg +EXPORT_SYMBOL vmlinux 0x7c0cd469 backlight_device_unregister +EXPORT_SYMBOL vmlinux 0x7c173634 __bitmap_complement +EXPORT_SYMBOL vmlinux 0x7c1e4ba1 bio_copy_data_iter +EXPORT_SYMBOL vmlinux 0x7c26a3c5 __tracepoint_rdpmc +EXPORT_SYMBOL vmlinux 0x7c2d03a6 dma_fence_enable_sw_signaling +EXPORT_SYMBOL vmlinux 0x7c3bc25a cookie_timestamp_decode +EXPORT_SYMBOL vmlinux 0x7c411456 param_ops_ullong +EXPORT_SYMBOL vmlinux 0x7c46233a cpufreq_quick_get +EXPORT_SYMBOL vmlinux 0x7c47f4e9 unpin_user_page_range_dirty_lock +EXPORT_SYMBOL vmlinux 0x7c4aaa2e __scm_destroy +EXPORT_SYMBOL vmlinux 0x7c55fff6 skb_find_text +EXPORT_SYMBOL vmlinux 0x7c5af898 set_capacity +EXPORT_SYMBOL vmlinux 0x7c693ff7 devm_devfreq_unregister_notifier +EXPORT_SYMBOL vmlinux 0x7c6c37d3 phy_do_ioctl_running +EXPORT_SYMBOL vmlinux 0x7c71e10f bio_add_pc_page +EXPORT_SYMBOL vmlinux 0x7c783dc4 genl_unregister_family +EXPORT_SYMBOL vmlinux 0x7c890d89 tcf_idr_create +EXPORT_SYMBOL vmlinux 0x7c9fcb35 get_watch_queue +EXPORT_SYMBOL vmlinux 0x7cbe0cd2 drop_reasons_by_subsys +EXPORT_SYMBOL vmlinux 0x7cbed7e5 iov_iter_single_seg_count +EXPORT_SYMBOL vmlinux 0x7cbfb2b1 ps2_command +EXPORT_SYMBOL vmlinux 0x7cc18181 set_security_override_from_ctx +EXPORT_SYMBOL vmlinux 0x7ccf7add iommu_put_resv_regions +EXPORT_SYMBOL vmlinux 0x7cd8d75e page_offset_base +EXPORT_SYMBOL vmlinux 0x7cd9fd0a migrate_device_pages +EXPORT_SYMBOL vmlinux 0x7cdc7116 mipi_dsi_dcs_set_column_address +EXPORT_SYMBOL vmlinux 0x7cdf315d alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x7ce18c9f from_kqid +EXPORT_SYMBOL vmlinux 0x7ce58981 kvrealloc +EXPORT_SYMBOL vmlinux 0x7cf35220 vme_master_free +EXPORT_SYMBOL vmlinux 0x7cfe368d net_dim_get_def_tx_moderation +EXPORT_SYMBOL vmlinux 0x7d03bd67 generic_file_open +EXPORT_SYMBOL vmlinux 0x7d0637d0 xfrm_state_insert +EXPORT_SYMBOL vmlinux 0x7d08368e simple_lookup +EXPORT_SYMBOL vmlinux 0x7d0ba682 gen_pool_virt_to_phys +EXPORT_SYMBOL vmlinux 0x7d0db45c jiffies_to_clock_t +EXPORT_SYMBOL vmlinux 0x7d12d76d acpi_get_parent +EXPORT_SYMBOL vmlinux 0x7d27e504 dm_shift_arg +EXPORT_SYMBOL vmlinux 0x7d4b176a netlbl_catmap_setbit +EXPORT_SYMBOL vmlinux 0x7d4de0b4 con_is_bound +EXPORT_SYMBOL vmlinux 0x7d510fdf reuseport_alloc +EXPORT_SYMBOL vmlinux 0x7d5e1008 __crc32c_le_shift +EXPORT_SYMBOL vmlinux 0x7d628444 memcpy_fromio +EXPORT_SYMBOL vmlinux 0x7d65d049 nla_put_64bit +EXPORT_SYMBOL vmlinux 0x7d6e0c74 pci_dev_driver +EXPORT_SYMBOL vmlinux 0x7d6f3c14 dev_pre_changeaddr_notify +EXPORT_SYMBOL vmlinux 0x7d74d522 kstrtoull_from_user +EXPORT_SYMBOL vmlinux 0x7d8fac6f netif_carrier_on +EXPORT_SYMBOL vmlinux 0x7d933a62 rproc_alloc +EXPORT_SYMBOL vmlinux 0x7da3ebf6 inode_newsize_ok +EXPORT_SYMBOL vmlinux 0x7da4c462 wireless_send_event +EXPORT_SYMBOL vmlinux 0x7daece67 quota_send_warning +EXPORT_SYMBOL vmlinux 0x7db7e372 ppp_register_compressor +EXPORT_SYMBOL vmlinux 0x7db98b2f _dev_crit +EXPORT_SYMBOL vmlinux 0x7dc5270b __dquot_transfer +EXPORT_SYMBOL vmlinux 0x7dc5ffa7 tc_skb_ext_tc_disable +EXPORT_SYMBOL vmlinux 0x7dcf4135 __xa_insert +EXPORT_SYMBOL vmlinux 0x7dd554fc unregister_kmmio_probe +EXPORT_SYMBOL vmlinux 0x7df2cabb prepare_kernel_cred +EXPORT_SYMBOL vmlinux 0x7e015201 blk_rq_map_user_io +EXPORT_SYMBOL vmlinux 0x7e0799c4 unmap_mapping_range +EXPORT_SYMBOL vmlinux 0x7e0b255f hdmi_audio_infoframe_pack_for_dp +EXPORT_SYMBOL vmlinux 0x7e24bbd1 genphy_read_lpa +EXPORT_SYMBOL vmlinux 0x7e3191f6 try_to_del_timer_sync +EXPORT_SYMBOL vmlinux 0x7e47e94a proc_set_user +EXPORT_SYMBOL vmlinux 0x7e558068 dev_set_alias +EXPORT_SYMBOL vmlinux 0x7e5c9cbd migrate_device_finalize +EXPORT_SYMBOL vmlinux 0x7e7bcf26 acpi_map_cpu +EXPORT_SYMBOL vmlinux 0x7e925e43 ata_scsi_cmd_error_handler +EXPORT_SYMBOL vmlinux 0x7ea71544 skb_abort_seq_read +EXPORT_SYMBOL vmlinux 0x7eaad3f6 ip6_find_1stfragopt +EXPORT_SYMBOL vmlinux 0x7eb2bb93 block_page_mkwrite +EXPORT_SYMBOL vmlinux 0x7ec36409 devfreq_get_freq_range +EXPORT_SYMBOL vmlinux 0x7ec9ebb6 nd_region_acquire_lane +EXPORT_SYMBOL vmlinux 0x7ee0bd3b security_path_mkdir +EXPORT_SYMBOL vmlinux 0x7ef4bddc __sg_page_iter_next +EXPORT_SYMBOL vmlinux 0x7f02188f __msecs_to_jiffies +EXPORT_SYMBOL vmlinux 0x7f03b6a9 crc_ccitt_table +EXPORT_SYMBOL vmlinux 0x7f045ac4 phy_attach +EXPORT_SYMBOL vmlinux 0x7f0990d2 param_set_ulong +EXPORT_SYMBOL vmlinux 0x7f126171 nd_region_to_nstype +EXPORT_SYMBOL vmlinux 0x7f1c12a5 netdev_refcnt_read +EXPORT_SYMBOL vmlinux 0x7f24de73 jiffies_to_usecs +EXPORT_SYMBOL vmlinux 0x7f325c4e no_seek_end_llseek_size +EXPORT_SYMBOL vmlinux 0x7f35a8cf param_get_long +EXPORT_SYMBOL vmlinux 0x7f50e121 xp_can_alloc +EXPORT_SYMBOL vmlinux 0x7f52071a net_dim +EXPORT_SYMBOL vmlinux 0x7f62eaa4 sgl_free +EXPORT_SYMBOL vmlinux 0x7f7f7bb4 irq_poll_disable +EXPORT_SYMBOL vmlinux 0x7f8cdd74 try_to_writeback_inodes_sb +EXPORT_SYMBOL vmlinux 0x7f9401fe cros_ec_get_host_event +EXPORT_SYMBOL vmlinux 0x7fb529f0 devm_mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x7fde1fbc acpi_walk_resource_buffer +EXPORT_SYMBOL vmlinux 0x7fe32873 rb_replace_node +EXPORT_SYMBOL vmlinux 0x7feaaa33 is_bad_inode +EXPORT_SYMBOL vmlinux 0x7feed7d0 tcp_simple_retransmit +EXPORT_SYMBOL vmlinux 0x80001497 mem_cgroup_from_task +EXPORT_SYMBOL vmlinux 0x80005076 agp_generic_create_gatt_table +EXPORT_SYMBOL vmlinux 0x800f425b input_mt_report_slot_state +EXPORT_SYMBOL vmlinux 0x80246de8 pcie_capability_write_dword +EXPORT_SYMBOL vmlinux 0x8025102e config_group_find_item +EXPORT_SYMBOL vmlinux 0x803ddbb6 __posix_acl_create +EXPORT_SYMBOL vmlinux 0x8041d948 __cpuhp_remove_state +EXPORT_SYMBOL vmlinux 0x804af87c wrmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0x80621da6 mmc_gpio_get_cd +EXPORT_SYMBOL vmlinux 0x80704cf8 __generic_file_write_iter +EXPORT_SYMBOL vmlinux 0x80762048 _atomic_dec_and_raw_lock +EXPORT_SYMBOL vmlinux 0x80816f26 get_user_ifreq +EXPORT_SYMBOL vmlinux 0x80a717a8 __percpu_counter_compare +EXPORT_SYMBOL vmlinux 0x80b6ef81 ipmi_platform_add +EXPORT_SYMBOL vmlinux 0x80ca5026 _bin2bcd +EXPORT_SYMBOL vmlinux 0x80ccb967 param_ops_byte +EXPORT_SYMBOL vmlinux 0x80d68d3e fb_register_client +EXPORT_SYMBOL vmlinux 0x80dda348 i2c_smbus_write_block_data +EXPORT_SYMBOL vmlinux 0x80e5f86f fscrypt_fname_alloc_buffer +EXPORT_SYMBOL vmlinux 0x80e86dca generic_file_llseek +EXPORT_SYMBOL vmlinux 0x80fef5d4 __hw_addr_unsync_dev +EXPORT_SYMBOL vmlinux 0x8112b3d2 scsi_build_sense_buffer +EXPORT_SYMBOL vmlinux 0x81172764 fs_param_is_s32 +EXPORT_SYMBOL vmlinux 0x81188c30 match_string +EXPORT_SYMBOL vmlinux 0x8125ab9f dev_disable_lro +EXPORT_SYMBOL vmlinux 0x813d139f module_refcount +EXPORT_SYMBOL vmlinux 0x81491054 security_binder_transaction +EXPORT_SYMBOL vmlinux 0x814da621 kiocb_set_cancel_fn +EXPORT_SYMBOL vmlinux 0x81533963 sysfs_format_mac +EXPORT_SYMBOL vmlinux 0x815b5dd4 match_octal +EXPORT_SYMBOL vmlinux 0x815f2897 empty_zero_page +EXPORT_SYMBOL vmlinux 0x816347c6 agp_device_command +EXPORT_SYMBOL vmlinux 0x8171486c filemap_invalidate_lock_two +EXPORT_SYMBOL vmlinux 0x818416e1 scsi_set_sense_information +EXPORT_SYMBOL vmlinux 0x819682c8 locks_copy_conflock +EXPORT_SYMBOL vmlinux 0x81a1eb59 utf8_unload +EXPORT_SYMBOL vmlinux 0x81ac5e33 trace_print_hex_dump_seq +EXPORT_SYMBOL vmlinux 0x81adc39f folio_migrate_flags +EXPORT_SYMBOL vmlinux 0x81c51d19 irq_cpu_rmap_add +EXPORT_SYMBOL vmlinux 0x81ce9941 intel_scu_ipc_dev_writev +EXPORT_SYMBOL vmlinux 0x81cf7af5 md_check_no_bitmap +EXPORT_SYMBOL vmlinux 0x81d6c28b acpi_buffer_to_resource +EXPORT_SYMBOL vmlinux 0x81da154b dst_cow_metrics_generic +EXPORT_SYMBOL vmlinux 0x81db6ebb xz_dec_reset +EXPORT_SYMBOL vmlinux 0x81e6b37f dmi_get_system_info +EXPORT_SYMBOL vmlinux 0x8202b5b9 crypto_sha512_finup +EXPORT_SYMBOL vmlinux 0x82203a34 dma_resv_fini +EXPORT_SYMBOL vmlinux 0x8228568c tcp_sync_mss +EXPORT_SYMBOL vmlinux 0x822c5a09 rproc_detach +EXPORT_SYMBOL vmlinux 0x822e8f0e tcp_rcv_state_process +EXPORT_SYMBOL vmlinux 0x823538ce rproc_coredump_set_elf_info +EXPORT_SYMBOL vmlinux 0x823c19ea iosf_mbi_unregister_pmic_bus_access_notifier_unlocked +EXPORT_SYMBOL vmlinux 0x8242bef1 vme_dma_request +EXPORT_SYMBOL vmlinux 0x825971ad phy_mipi_dphy_get_default_config_for_hsclk +EXPORT_SYMBOL vmlinux 0x826ccd72 fwnode_mdiobus_register_phy +EXPORT_SYMBOL vmlinux 0x827625b5 dev_driver_string +EXPORT_SYMBOL vmlinux 0x827bc568 lock_rename_child +EXPORT_SYMBOL vmlinux 0x827f3725 tcf_action_exec +EXPORT_SYMBOL vmlinux 0x828d099a pci_disable_device +EXPORT_SYMBOL vmlinux 0x82955c17 dev_graft_qdisc +EXPORT_SYMBOL vmlinux 0x82a63583 security_path_mknod +EXPORT_SYMBOL vmlinux 0x82bc2719 scsi_vpd_tpg_id +EXPORT_SYMBOL vmlinux 0x82c06083 cdrom_dummy_generic_packet +EXPORT_SYMBOL vmlinux 0x82c1dc4d inet_recvmsg +EXPORT_SYMBOL vmlinux 0x82c3416a security_sk_classify_flow +EXPORT_SYMBOL vmlinux 0x82c535e7 kernel_bind +EXPORT_SYMBOL vmlinux 0x82c87ad5 nr_online_nodes +EXPORT_SYMBOL vmlinux 0x82ee90dc timer_delete_sync +EXPORT_SYMBOL vmlinux 0x82f0b74c ethtool_get_phc_vclocks +EXPORT_SYMBOL vmlinux 0x82fcfccc km_state_notify +EXPORT_SYMBOL vmlinux 0x83081706 dquot_quota_sync +EXPORT_SYMBOL vmlinux 0x831c9323 netdev_port_same_parent_id +EXPORT_SYMBOL vmlinux 0x8328e1a6 tcp_stream_memory_free +EXPORT_SYMBOL vmlinux 0x8342fcea cdev_del +EXPORT_SYMBOL vmlinux 0x83558539 tty_check_change +EXPORT_SYMBOL vmlinux 0x83581089 gf128mul_init_4k_lle +EXPORT_SYMBOL vmlinux 0x835c0338 devm_clk_put +EXPORT_SYMBOL vmlinux 0x8363d882 iw_handler_set_thrspy +EXPORT_SYMBOL vmlinux 0x83802812 __bread_gfp +EXPORT_SYMBOL vmlinux 0x838c52c9 d_lookup +EXPORT_SYMBOL vmlinux 0x838d2bc8 siphash_3u32 +EXPORT_SYMBOL vmlinux 0x83a4b984 mdiobus_alloc_size +EXPORT_SYMBOL vmlinux 0x83b144b3 netif_device_attach +EXPORT_SYMBOL vmlinux 0x83b7e3e9 tcf_block_put_ext +EXPORT_SYMBOL vmlinux 0x83ef9e92 inetdev_by_index +EXPORT_SYMBOL vmlinux 0x83f8ceb0 devfreq_unregister_opp_notifier +EXPORT_SYMBOL vmlinux 0x83fdea3c vfs_create +EXPORT_SYMBOL vmlinux 0x8427cc7b _raw_spin_lock_irq +EXPORT_SYMBOL vmlinux 0x842c8e9d ioread16 +EXPORT_SYMBOL vmlinux 0x842f477b inode_insert5 +EXPORT_SYMBOL vmlinux 0x8432ef63 sock_no_socketpair +EXPORT_SYMBOL vmlinux 0x844511ed iptun_encaps +EXPORT_SYMBOL vmlinux 0x845e223c netif_stacked_transfer_operstate +EXPORT_SYMBOL vmlinux 0x84708e54 vfs_clone_file_range +EXPORT_SYMBOL vmlinux 0x847ce6cb mt_find_after +EXPORT_SYMBOL vmlinux 0x84823cf3 nla_strscpy +EXPORT_SYMBOL vmlinux 0x84856b58 jbd2_journal_try_to_free_buffers +EXPORT_SYMBOL vmlinux 0x848d372e iowrite8 +EXPORT_SYMBOL vmlinux 0x84914079 __kfifo_dma_out_prepare +EXPORT_SYMBOL vmlinux 0x849535b7 netdev_lower_get_first_private_rcu +EXPORT_SYMBOL vmlinux 0x849ec962 jbd2_transaction_committed +EXPORT_SYMBOL vmlinux 0x84a0ca4d bitmap_zalloc_node +EXPORT_SYMBOL vmlinux 0x84b3b3fc skb_vlan_pop +EXPORT_SYMBOL vmlinux 0x84baf325 phy_start_cable_test_tdr +EXPORT_SYMBOL vmlinux 0x84ebecb0 udp_sendmsg +EXPORT_SYMBOL vmlinux 0x84ff8aac scsi_track_queue_full +EXPORT_SYMBOL vmlinux 0x84fff756 blk_mq_alloc_tag_set +EXPORT_SYMBOL vmlinux 0x850783d6 gnet_stats_copy_rate_est +EXPORT_SYMBOL vmlinux 0x850dc1ef blk_queue_physical_block_size +EXPORT_SYMBOL vmlinux 0x85146153 __SCK__tp_func_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x8518a4a6 _raw_spin_trylock_bh +EXPORT_SYMBOL vmlinux 0x8522d6bc strncpy_from_user +EXPORT_SYMBOL vmlinux 0x8529b8c1 devm_backlight_device_register +EXPORT_SYMBOL vmlinux 0x852f6460 genphy_c37_config_aneg +EXPORT_SYMBOL vmlinux 0x853f3fdc tcp_syn_ack_timeout +EXPORT_SYMBOL vmlinux 0x85416d23 getname_kernel +EXPORT_SYMBOL vmlinux 0x854e766c blk_mq_run_hw_queue +EXPORT_SYMBOL vmlinux 0x8556d410 i8042_install_filter +EXPORT_SYMBOL vmlinux 0x85670f1d rtnl_is_locked +EXPORT_SYMBOL vmlinux 0x8568fc2d max8925_bulk_write +EXPORT_SYMBOL vmlinux 0x85800ed9 reuseport_add_sock +EXPORT_SYMBOL vmlinux 0x8591d7d5 ledtrig_mtd_activity +EXPORT_SYMBOL vmlinux 0x859488c8 genphy_handle_interrupt_no_ack +EXPORT_SYMBOL vmlinux 0x85b5e625 rfkill_set_states +EXPORT_SYMBOL vmlinux 0x85bd1608 __request_region +EXPORT_SYMBOL vmlinux 0x85c52144 kmalloc_node_trace +EXPORT_SYMBOL vmlinux 0x85df9b6c strsep +EXPORT_SYMBOL vmlinux 0x85e489e9 get_mem_cgroup_from_mm +EXPORT_SYMBOL vmlinux 0x85efc7e0 zero_pfn +EXPORT_SYMBOL vmlinux 0x85f4f245 tso_build_hdr +EXPORT_SYMBOL vmlinux 0x85f596a4 neigh_proc_dointvec +EXPORT_SYMBOL vmlinux 0x86219e01 vlan_vids_del_by_dev +EXPORT_SYMBOL vmlinux 0x862c8035 bitmap_alloc_node +EXPORT_SYMBOL vmlinux 0x863a276a color_table +EXPORT_SYMBOL vmlinux 0x866a62b2 gnet_stats_basic_sync_init +EXPORT_SYMBOL vmlinux 0x86751489 tcp_v4_destroy_sock +EXPORT_SYMBOL vmlinux 0x867c618c vga_switcheroo_init_domain_pm_ops +EXPORT_SYMBOL vmlinux 0x868acba5 get_options +EXPORT_SYMBOL vmlinux 0x86aff4cd posix_test_lock +EXPORT_SYMBOL vmlinux 0x86c7272b iosf_mbi_read +EXPORT_SYMBOL vmlinux 0x86d52ba5 lookup_constant +EXPORT_SYMBOL vmlinux 0x86dd708d tc_skb_ext_tc_enable +EXPORT_SYMBOL vmlinux 0x86f27420 iosf_mbi_block_punit_i2c_access +EXPORT_SYMBOL vmlinux 0x86fb9b05 bitmap_parse_user +EXPORT_SYMBOL vmlinux 0x87335a8d mptcp_subflow_reqsk_alloc +EXPORT_SYMBOL vmlinux 0x87592cdd xfrm_input_register_afinfo +EXPORT_SYMBOL vmlinux 0x8761c87b rps_needed +EXPORT_SYMBOL vmlinux 0x8764ac8c in6_dev_finish_destroy +EXPORT_SYMBOL vmlinux 0x87706d4e __put_user_nocheck_8 +EXPORT_SYMBOL vmlinux 0x87809aeb put_user_ifreq +EXPORT_SYMBOL vmlinux 0x8781567a acpi_match_device_ids +EXPORT_SYMBOL vmlinux 0x878d43cd ipv6_dev_mc_inc +EXPORT_SYMBOL vmlinux 0x87977121 __acpi_mdiobus_register +EXPORT_SYMBOL vmlinux 0x87a21cb3 __ubsan_handle_out_of_bounds +EXPORT_SYMBOL vmlinux 0x87c8c92f dma_fence_match_context +EXPORT_SYMBOL vmlinux 0x87c95dff __nla_put +EXPORT_SYMBOL vmlinux 0x87ce6c49 pcim_enable_device +EXPORT_SYMBOL vmlinux 0x87fe5160 elv_rb_latter_request +EXPORT_SYMBOL vmlinux 0x88077699 tcp_make_synack +EXPORT_SYMBOL vmlinux 0x8810754a _find_first_bit +EXPORT_SYMBOL vmlinux 0x881bad5e phy_mipi_dphy_config_validate +EXPORT_SYMBOL vmlinux 0x881c4413 gen_pool_first_fit +EXPORT_SYMBOL vmlinux 0x8823ef75 intel_gmch_gtt_insert_page +EXPORT_SYMBOL vmlinux 0x885fb827 dev_uc_del +EXPORT_SYMBOL vmlinux 0x8869ae74 md_bitmap_unplug_async +EXPORT_SYMBOL vmlinux 0x88822d38 unregister_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0x8888f1fe xxh32 +EXPORT_SYMBOL vmlinux 0x8899aa05 agp_bridge +EXPORT_SYMBOL vmlinux 0x889b1370 _raw_read_trylock +EXPORT_SYMBOL vmlinux 0x88a2eaac pci_free_irq_vectors +EXPORT_SYMBOL vmlinux 0x88a3dfba tcp_initialize_rcv_mss +EXPORT_SYMBOL vmlinux 0x88cf7eaa freeze_bdev +EXPORT_SYMBOL vmlinux 0x88d420d3 configfs_register_default_group +EXPORT_SYMBOL vmlinux 0x88db9f48 __check_object_size +EXPORT_SYMBOL vmlinux 0x88dbb873 prepare_to_swait_exclusive +EXPORT_SYMBOL vmlinux 0x88e1d0f0 page_frag_free +EXPORT_SYMBOL vmlinux 0x88e3ff43 inet_stream_connect +EXPORT_SYMBOL vmlinux 0x890a24af mdiobus_c45_write +EXPORT_SYMBOL vmlinux 0x8911fa82 blk_queue_max_discard_sectors +EXPORT_SYMBOL vmlinux 0x891957d9 slab_build_skb +EXPORT_SYMBOL vmlinux 0x891dbb8f sgl_free_order +EXPORT_SYMBOL vmlinux 0x891e2069 phy_modify_paged +EXPORT_SYMBOL vmlinux 0x89248395 seg6_hmac_validate_skb +EXPORT_SYMBOL vmlinux 0x894004c0 ndisc_ns_create +EXPORT_SYMBOL vmlinux 0x894111bb sock_sendmsg +EXPORT_SYMBOL vmlinux 0x89434b4b radix_tree_tag_clear +EXPORT_SYMBOL vmlinux 0x8947edb4 input_inject_event +EXPORT_SYMBOL vmlinux 0x894e61f4 acpi_get_hp_hw_control_from_firmware +EXPORT_SYMBOL vmlinux 0x894f0593 sock_no_bind +EXPORT_SYMBOL vmlinux 0x897a7a5f devfreq_remove_governor +EXPORT_SYMBOL vmlinux 0x89853a17 dev_add_offload +EXPORT_SYMBOL vmlinux 0x89867386 __tcp_md5_do_lookup +EXPORT_SYMBOL vmlinux 0x89940875 mutex_lock_interruptible +EXPORT_SYMBOL vmlinux 0x899cdeda inet_offloads +EXPORT_SYMBOL vmlinux 0x89c5b47b dquot_set_dqblk +EXPORT_SYMBOL vmlinux 0x89ca12b0 nexthop_bucket_set_hw_flags +EXPORT_SYMBOL vmlinux 0x89df4e76 devm_extcon_register_notifier +EXPORT_SYMBOL vmlinux 0x89ebd730 blk_rq_count_integrity_sg +EXPORT_SYMBOL vmlinux 0x8a0ae079 unload_nls +EXPORT_SYMBOL vmlinux 0x8a35b432 sme_me_mask +EXPORT_SYMBOL vmlinux 0x8a47043d LZ4_decompress_safe_continue +EXPORT_SYMBOL vmlinux 0x8a490c90 rfkill_set_sw_state +EXPORT_SYMBOL vmlinux 0x8a4e5512 blk_mq_start_stopped_hw_queues +EXPORT_SYMBOL vmlinux 0x8a4ec26d pci_release_region +EXPORT_SYMBOL vmlinux 0x8a531f23 dec_node_page_state +EXPORT_SYMBOL vmlinux 0x8a54670a __x86_indirect_jump_thunk_r14 +EXPORT_SYMBOL vmlinux 0x8a5e5e25 devm_request_resource +EXPORT_SYMBOL vmlinux 0x8a5eff0f filemap_page_mkwrite +EXPORT_SYMBOL vmlinux 0x8a6c7139 acpi_mask_gpe +EXPORT_SYMBOL vmlinux 0x8a7094ba vm_brk_flags +EXPORT_SYMBOL vmlinux 0x8a7d1c31 high_memory +EXPORT_SYMBOL vmlinux 0x8a833583 dma_fence_array_ops +EXPORT_SYMBOL vmlinux 0x8a8e1fdb i2c_smbus_read_i2c_block_data_or_emulated +EXPORT_SYMBOL vmlinux 0x8a966e5d rproc_of_resm_mem_entry_init +EXPORT_SYMBOL vmlinux 0x8a99a016 mempool_free_slab +EXPORT_SYMBOL vmlinux 0x8aaecd60 __put_cred +EXPORT_SYMBOL vmlinux 0x8aaf23ce input_handler_for_each_handle +EXPORT_SYMBOL vmlinux 0x8ab6c364 jbd2_journal_get_write_access +EXPORT_SYMBOL vmlinux 0x8ac3334b net_dim_get_def_rx_moderation +EXPORT_SYMBOL vmlinux 0x8ad68011 bio_init +EXPORT_SYMBOL vmlinux 0x8aef79ed tls_server_hello_psk +EXPORT_SYMBOL vmlinux 0x8af126ad scm_fp_dup +EXPORT_SYMBOL vmlinux 0x8af56197 nonseekable_open +EXPORT_SYMBOL vmlinux 0x8b0088d1 LZ4_decompress_safe_usingDict +EXPORT_SYMBOL vmlinux 0x8b28e098 csum_and_copy_to_iter +EXPORT_SYMBOL vmlinux 0x8b2a2ee7 generic_buffers_fsync_noflush +EXPORT_SYMBOL vmlinux 0x8b2aa725 neigh_parms_release +EXPORT_SYMBOL vmlinux 0x8b320638 blk_rq_map_integrity_sg +EXPORT_SYMBOL vmlinux 0x8b379e6e dev_pick_tx_zero +EXPORT_SYMBOL vmlinux 0x8b5ae952 netpoll_print_options +EXPORT_SYMBOL vmlinux 0x8b618d08 overflowuid +EXPORT_SYMBOL vmlinux 0x8b6785d0 ip_frag_init +EXPORT_SYMBOL vmlinux 0x8b6fbb14 do_splice_direct +EXPORT_SYMBOL vmlinux 0x8b8059bd in_group_p +EXPORT_SYMBOL vmlinux 0x8b910be2 errseq_sample +EXPORT_SYMBOL vmlinux 0x8b95ea81 sb_min_blocksize +EXPORT_SYMBOL vmlinux 0x8b966b63 sn_rtc_cycles_per_second +EXPORT_SYMBOL vmlinux 0x8b989cf9 acpi_bus_can_wakeup +EXPORT_SYMBOL vmlinux 0x8b9e6f76 jbd2_journal_force_commit_nested +EXPORT_SYMBOL vmlinux 0x8ba1a277 qdisc_offload_graft_helper +EXPORT_SYMBOL vmlinux 0x8bab5750 send_sig_info +EXPORT_SYMBOL vmlinux 0x8bbe06fb netdev_state_change +EXPORT_SYMBOL vmlinux 0x8bbf4dea unregister_md_personality +EXPORT_SYMBOL vmlinux 0x8bccc6c8 km_report +EXPORT_SYMBOL vmlinux 0x8bd577d0 acpi_ut_exit +EXPORT_SYMBOL vmlinux 0x8bdfc47c __mb_cache_entry_free +EXPORT_SYMBOL vmlinux 0x8be808af jbd2_journal_extend +EXPORT_SYMBOL vmlinux 0x8c1ac389 vga_set_legacy_decoding +EXPORT_SYMBOL vmlinux 0x8c26d495 prepare_to_wait_event +EXPORT_SYMBOL vmlinux 0x8c30bf67 zstd_dctx_workspace_bound +EXPORT_SYMBOL vmlinux 0x8c38f6b9 mmc_wait_for_cmd +EXPORT_SYMBOL vmlinux 0x8c545d24 netdev_reset_tc +EXPORT_SYMBOL vmlinux 0x8c56333a key_payload_reserve +EXPORT_SYMBOL vmlinux 0x8c62437a audit_log +EXPORT_SYMBOL vmlinux 0x8c671ad7 seq_path +EXPORT_SYMBOL vmlinux 0x8c6d7e20 xfrm_state_walk_done +EXPORT_SYMBOL vmlinux 0x8c8569cb kstrtoint +EXPORT_SYMBOL vmlinux 0x8c95f7e2 pci_write_vpd +EXPORT_SYMBOL vmlinux 0x8c9ac92b thaw_bdev +EXPORT_SYMBOL vmlinux 0x8c9e338f acpi_bios_error +EXPORT_SYMBOL vmlinux 0x8ca3979c param_ops_hexint +EXPORT_SYMBOL vmlinux 0x8caf9305 uuid_is_valid +EXPORT_SYMBOL vmlinux 0x8cbafaf1 dev_get_iflink +EXPORT_SYMBOL vmlinux 0x8cc0482f inet_dev_addr_type +EXPORT_SYMBOL vmlinux 0x8cc79cab iowrite16_rep +EXPORT_SYMBOL vmlinux 0x8cda8029 xen_clear_irq_pending +EXPORT_SYMBOL vmlinux 0x8ce16975 eth_gro_complete +EXPORT_SYMBOL vmlinux 0x8ce6ab59 filemap_splice_read +EXPORT_SYMBOL vmlinux 0x8ceee477 netdev_lower_dev_get_private +EXPORT_SYMBOL vmlinux 0x8cf303e1 dma_sync_sg_for_device +EXPORT_SYMBOL vmlinux 0x8d1ddb11 ip_fraglist_prepare +EXPORT_SYMBOL vmlinux 0x8d33e672 __find_nth_andnot_bit +EXPORT_SYMBOL vmlinux 0x8d3b535a bio_split +EXPORT_SYMBOL vmlinux 0x8d55bb8a qid_eq +EXPORT_SYMBOL vmlinux 0x8d60652c __SCT__tp_func_mmap_lock_released +EXPORT_SYMBOL vmlinux 0x8d6aff89 __put_user_nocheck_4 +EXPORT_SYMBOL vmlinux 0x8d73278e hex_asc_upper +EXPORT_SYMBOL vmlinux 0x8dafaf22 hdmi_avi_infoframe_pack +EXPORT_SYMBOL vmlinux 0x8db22efe acpi_setup_gpe_for_wake +EXPORT_SYMBOL vmlinux 0x8dc36b42 try_lookup_one_len +EXPORT_SYMBOL vmlinux 0x8ddd8aad schedule_timeout +EXPORT_SYMBOL vmlinux 0x8dee722d _raw_read_lock_bh +EXPORT_SYMBOL vmlinux 0x8def3763 filemap_fault +EXPORT_SYMBOL vmlinux 0x8df92f66 memchr_inv +EXPORT_SYMBOL vmlinux 0x8df9dd10 guid_null +EXPORT_SYMBOL vmlinux 0x8e17b3ae idr_destroy +EXPORT_SYMBOL vmlinux 0x8e3e0f7d fault_in_readable +EXPORT_SYMBOL vmlinux 0x8e4ba5e8 dcb_getrewr +EXPORT_SYMBOL vmlinux 0x8e50a5de kernel_param_unlock +EXPORT_SYMBOL vmlinux 0x8e60161f netlink_kernel_release +EXPORT_SYMBOL vmlinux 0x8e666c1e __netdev_alloc_skb +EXPORT_SYMBOL vmlinux 0x8e8672e1 kmalloc_caches +EXPORT_SYMBOL vmlinux 0x8e93bd24 security_secctx_to_secid +EXPORT_SYMBOL vmlinux 0x8e96a3c2 inet_csk_reqsk_queue_add +EXPORT_SYMBOL vmlinux 0x8ea1e843 __sk_mem_schedule +EXPORT_SYMBOL vmlinux 0x8eaeef64 page_readlink +EXPORT_SYMBOL vmlinux 0x8eaf2a5f vga_switcheroo_unregister_handler +EXPORT_SYMBOL vmlinux 0x8ec41ff1 pci_request_regions +EXPORT_SYMBOL vmlinux 0x8ec760b0 cgroup_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0x8ed905e5 mr_table_dump +EXPORT_SYMBOL vmlinux 0x8edbeb9d register_console +EXPORT_SYMBOL vmlinux 0x8ee6f3e8 genphy_suspend +EXPORT_SYMBOL vmlinux 0x8eef33b3 blackhole_netdev +EXPORT_SYMBOL vmlinux 0x8ef39e13 to_ndd +EXPORT_SYMBOL vmlinux 0x8efe0450 pci_get_class +EXPORT_SYMBOL vmlinux 0x8f01afd6 twl6030_interrupt_mask +EXPORT_SYMBOL vmlinux 0x8f1d0d15 dentry_path_raw +EXPORT_SYMBOL vmlinux 0x8f2703b7 wbinvd_on_all_cpus +EXPORT_SYMBOL vmlinux 0x8f29e65c scsi_host_lookup +EXPORT_SYMBOL vmlinux 0x8f4b8b88 tcp_recvmsg +EXPORT_SYMBOL vmlinux 0x8f5d402d netdev_adjacent_change_prepare +EXPORT_SYMBOL vmlinux 0x8f68cf5a alloc_netdev_mqs +EXPORT_SYMBOL vmlinux 0x8f80bf11 acpi_install_gpe_raw_handler +EXPORT_SYMBOL vmlinux 0x8f879e8a __udp_disconnect +EXPORT_SYMBOL vmlinux 0x8f8a1414 iov_iter_kvec +EXPORT_SYMBOL vmlinux 0x8f963bbb gro_cells_receive +EXPORT_SYMBOL vmlinux 0x8f996a30 ethtool_convert_legacy_u32_to_link_mode +EXPORT_SYMBOL vmlinux 0x8f9c199c __get_user_2 +EXPORT_SYMBOL vmlinux 0x8fa25c24 xa_find +EXPORT_SYMBOL vmlinux 0x8fb6b843 netdev_class_create_file_ns +EXPORT_SYMBOL vmlinux 0x8fc85800 tcp_setsockopt +EXPORT_SYMBOL vmlinux 0x8fe8e5d2 pskb_expand_head +EXPORT_SYMBOL vmlinux 0x8ff89ed0 seg6_hmac_exit +EXPORT_SYMBOL vmlinux 0x8ff8e43b crypto_sha1_update +EXPORT_SYMBOL vmlinux 0x8fffd555 sock_set_reuseport +EXPORT_SYMBOL vmlinux 0x90006be6 dm_kcopyd_client_flush +EXPORT_SYMBOL vmlinux 0x900aa09a generic_pipe_buf_release +EXPORT_SYMBOL vmlinux 0x90134c56 __destroy_inode +EXPORT_SYMBOL vmlinux 0x902d8722 vme_slave_get +EXPORT_SYMBOL vmlinux 0x9034a696 mempool_destroy +EXPORT_SYMBOL vmlinux 0x9043965b netdev_printk +EXPORT_SYMBOL vmlinux 0x90576ec4 vmemdup_user +EXPORT_SYMBOL vmlinux 0x9060e3a5 tcp_poll +EXPORT_SYMBOL vmlinux 0x906829f0 fqdir_init +EXPORT_SYMBOL vmlinux 0x906e7509 ipv6_dev_mc_dec +EXPORT_SYMBOL vmlinux 0x907793e1 uart_match_port +EXPORT_SYMBOL vmlinux 0x908a874f sock_init_data_uid +EXPORT_SYMBOL vmlinux 0x9092defd proc_doulongvec_minmax +EXPORT_SYMBOL vmlinux 0x909ec77e remove_proc_entry +EXPORT_SYMBOL vmlinux 0x90a2b5db xen_alloc_ballooned_pages +EXPORT_SYMBOL vmlinux 0x90a97776 __page_frag_cache_drain +EXPORT_SYMBOL vmlinux 0x90aa6e25 nvdimm_namespace_common_probe +EXPORT_SYMBOL vmlinux 0x90ca02ad inet_sk_get_local_port_range +EXPORT_SYMBOL vmlinux 0x90d05de4 __ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0x90f3a469 genphy_c45_eee_is_active +EXPORT_SYMBOL vmlinux 0x910de6e7 security_tun_dev_attach +EXPORT_SYMBOL vmlinux 0x9114b616 __xa_alloc +EXPORT_SYMBOL vmlinux 0x913f2c3f cfb_copyarea +EXPORT_SYMBOL vmlinux 0x9141c600 node_data +EXPORT_SYMBOL vmlinux 0x914893f1 genphy_c37_read_status +EXPORT_SYMBOL vmlinux 0x914aa5d2 reuseport_attach_prog +EXPORT_SYMBOL vmlinux 0x91502352 vga_remove_vgacon +EXPORT_SYMBOL vmlinux 0x915fe5fc scsi_eh_restore_cmnd +EXPORT_SYMBOL vmlinux 0x91607d95 set_memory_wb +EXPORT_SYMBOL vmlinux 0x9166fada strncpy +EXPORT_SYMBOL vmlinux 0x9166fc03 __flush_workqueue +EXPORT_SYMBOL vmlinux 0x916ff403 import_iovec +EXPORT_SYMBOL vmlinux 0x9176145b acpi_install_global_event_handler +EXPORT_SYMBOL vmlinux 0x918b9ed4 seq_read_iter +EXPORT_SYMBOL vmlinux 0x919c58f3 __clzsi2 +EXPORT_SYMBOL vmlinux 0x91a10c61 intel_scu_ipc_dev_simple_command +EXPORT_SYMBOL vmlinux 0x91a488ac __netdev_alloc_frag_align +EXPORT_SYMBOL vmlinux 0x91a7b1da qdisc_class_hash_remove +EXPORT_SYMBOL vmlinux 0x91b15be4 set_anon_super +EXPORT_SYMBOL vmlinux 0x91b7bd29 mark_info_dirty +EXPORT_SYMBOL vmlinux 0x91d57d16 input_mt_destroy_slots +EXPORT_SYMBOL vmlinux 0x91d641eb dm_put_device +EXPORT_SYMBOL vmlinux 0x91e9d943 netif_set_real_num_tx_queues +EXPORT_SYMBOL vmlinux 0x91f44510 idr_alloc_cyclic +EXPORT_SYMBOL vmlinux 0x91f68ea1 __hw_addr_sync +EXPORT_SYMBOL vmlinux 0x91fc4980 request_key_with_auxdata +EXPORT_SYMBOL vmlinux 0x9204bbc3 put_watch_queue +EXPORT_SYMBOL vmlinux 0x9205ac39 ip6_fraglist_init +EXPORT_SYMBOL vmlinux 0x921719f3 call_fib_notifiers +EXPORT_SYMBOL vmlinux 0x922f45a6 __bitmap_clear +EXPORT_SYMBOL vmlinux 0x9231c875 skb_unlink +EXPORT_SYMBOL vmlinux 0x923b1276 dmaengine_get +EXPORT_SYMBOL vmlinux 0x92540fbf finish_wait +EXPORT_SYMBOL vmlinux 0x9258c776 hdmi_vendor_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0x92774cf8 __kfence_pool +EXPORT_SYMBOL vmlinux 0x92897e3d default_idle +EXPORT_SYMBOL vmlinux 0x9291cd3b memdup_user +EXPORT_SYMBOL vmlinux 0x92978709 dump_skip +EXPORT_SYMBOL vmlinux 0x929878b2 posix_acl_to_xattr +EXPORT_SYMBOL vmlinux 0x92a30856 blk_rq_init +EXPORT_SYMBOL vmlinux 0x92a35bab clear_nlink +EXPORT_SYMBOL vmlinux 0x92a40976 __fput_sync +EXPORT_SYMBOL vmlinux 0x92a51e56 acpi_debug_print_raw +EXPORT_SYMBOL vmlinux 0x92b99a33 acpi_put_table +EXPORT_SYMBOL vmlinux 0x92b9b180 slash_name +EXPORT_SYMBOL vmlinux 0x92bdeb4e param_ops_bint +EXPORT_SYMBOL vmlinux 0x92c856a3 iwe_stream_add_event +EXPORT_SYMBOL vmlinux 0x92d5838e request_threaded_irq +EXPORT_SYMBOL vmlinux 0x92dd4ba1 ppp_input_error +EXPORT_SYMBOL vmlinux 0x92e683f5 down_timeout +EXPORT_SYMBOL vmlinux 0x92ec510d jiffies64_to_msecs +EXPORT_SYMBOL vmlinux 0x92eedd98 scsi_done_direct +EXPORT_SYMBOL vmlinux 0x92fa5abb vme_lm_detach +EXPORT_SYMBOL vmlinux 0x93022ba6 __scsi_format_command +EXPORT_SYMBOL vmlinux 0x9305f8e6 cpufreq_get +EXPORT_SYMBOL vmlinux 0x930bba92 alloc_skb_with_frags +EXPORT_SYMBOL vmlinux 0x930be505 __skb_gro_checksum_complete +EXPORT_SYMBOL vmlinux 0x93157405 fsync_bdev +EXPORT_SYMBOL vmlinux 0x93162225 skb_tunnel_check_pmtu +EXPORT_SYMBOL vmlinux 0x932b83c7 pci_clear_mwi +EXPORT_SYMBOL vmlinux 0x9333a265 cdrom_get_last_written +EXPORT_SYMBOL vmlinux 0x934f564b __x86_indirect_jump_thunk_r15 +EXPORT_SYMBOL vmlinux 0x935c2bb9 mipi_dsi_dcs_set_display_off +EXPORT_SYMBOL vmlinux 0x937733e3 qid_valid +EXPORT_SYMBOL vmlinux 0x937a4708 prepare_to_swait_event +EXPORT_SYMBOL vmlinux 0x937f0899 xsk_set_rx_need_wakeup +EXPORT_SYMBOL vmlinux 0x938ae609 netdev_adjacent_change_abort +EXPORT_SYMBOL vmlinux 0x9397bf30 pci_bus_claim_resources +EXPORT_SYMBOL vmlinux 0x93a6e0b2 io_schedule +EXPORT_SYMBOL vmlinux 0x93b3fc74 register_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x93b63e61 config_item_set_name +EXPORT_SYMBOL vmlinux 0x93b8fb87 netlink_ns_capable +EXPORT_SYMBOL vmlinux 0x93d6dd8c complete_all +EXPORT_SYMBOL vmlinux 0x93dd2360 md_register_thread +EXPORT_SYMBOL vmlinux 0x93e165e3 __bh_read_batch +EXPORT_SYMBOL vmlinux 0x93ffbe39 jbd2_submit_inode_data +EXPORT_SYMBOL vmlinux 0x940720f3 skb_try_coalesce +EXPORT_SYMBOL vmlinux 0x941d91ba xsk_set_tx_need_wakeup +EXPORT_SYMBOL vmlinux 0x9428f816 dim_turn +EXPORT_SYMBOL vmlinux 0x942ac71b d_make_root +EXPORT_SYMBOL vmlinux 0x943083fb rtnl_link_get_net +EXPORT_SYMBOL vmlinux 0x94362ea6 pci_ep_cfs_add_epc_group +EXPORT_SYMBOL vmlinux 0x9436ca2d pci_find_capability +EXPORT_SYMBOL vmlinux 0x944375db _totalram_pages +EXPORT_SYMBOL vmlinux 0x944a564d is_console_locked +EXPORT_SYMBOL vmlinux 0x945c8c72 pci_map_rom +EXPORT_SYMBOL vmlinux 0x945cb2eb netdev_emerg +EXPORT_SYMBOL vmlinux 0x946dcf91 folio_wait_bit +EXPORT_SYMBOL vmlinux 0x9493fc86 node_states +EXPORT_SYMBOL vmlinux 0x94961283 vunmap +EXPORT_SYMBOL vmlinux 0x94bb7ec3 gen_pool_dma_zalloc_algo +EXPORT_SYMBOL vmlinux 0x94bf03ca utf8_to_utf32 +EXPORT_SYMBOL vmlinux 0x94bf5008 d_alloc_anon +EXPORT_SYMBOL vmlinux 0x94fb2309 vfs_fileattr_get +EXPORT_SYMBOL vmlinux 0x94fc3975 is_acpi_device_node +EXPORT_SYMBOL vmlinux 0x950058f8 __module_get +EXPORT_SYMBOL vmlinux 0x9507c90f copy_fsxattr_to_user +EXPORT_SYMBOL vmlinux 0x950b0eb2 mr_dump +EXPORT_SYMBOL vmlinux 0x950e6eab posix_acl_update_mode +EXPORT_SYMBOL vmlinux 0x95238e13 inet_csk_complete_hashdance +EXPORT_SYMBOL vmlinux 0x953d2426 utf8_strncmp +EXPORT_SYMBOL vmlinux 0x95443b20 register_key_type +EXPORT_SYMBOL vmlinux 0x954cef6f init_on_alloc +EXPORT_SYMBOL vmlinux 0x954f099c idr_preload +EXPORT_SYMBOL vmlinux 0x957c9ebf neigh_proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0x95a07a62 simple_statfs +EXPORT_SYMBOL vmlinux 0x95a07bb5 acpi_execute_reg_methods +EXPORT_SYMBOL vmlinux 0x95a67b07 udp_table +EXPORT_SYMBOL vmlinux 0x95bda289 jbd2_trans_will_send_data_barrier +EXPORT_SYMBOL vmlinux 0x95efd25b tty_unlock +EXPORT_SYMBOL vmlinux 0x9625695d acpi_install_gpe_block +EXPORT_SYMBOL vmlinux 0x962fc515 __napi_schedule +EXPORT_SYMBOL vmlinux 0x96331832 twl6040_power +EXPORT_SYMBOL vmlinux 0x964a1e0c input_set_max_poll_interval +EXPORT_SYMBOL vmlinux 0x9666f15b dcb_delrewr +EXPORT_SYMBOL vmlinux 0x9667387f xp_raw_get_data +EXPORT_SYMBOL vmlinux 0x967a1727 invalidate_bdev +EXPORT_SYMBOL vmlinux 0x96848186 scnprintf +EXPORT_SYMBOL vmlinux 0x9689f135 blk_pre_runtime_suspend +EXPORT_SYMBOL vmlinux 0x96968b74 nd_integrity_init +EXPORT_SYMBOL vmlinux 0x9697246f pnpacpi_protocol +EXPORT_SYMBOL vmlinux 0x96992fec pci_dev_put +EXPORT_SYMBOL vmlinux 0x96a8d542 mdiobus_write_nested +EXPORT_SYMBOL vmlinux 0x96b1e60a pci_biosrom_size +EXPORT_SYMBOL vmlinux 0x96b29254 strncasecmp +EXPORT_SYMBOL vmlinux 0x96c17136 fb_var_to_videomode +EXPORT_SYMBOL vmlinux 0x96cd2b04 scsi_sense_key_string +EXPORT_SYMBOL vmlinux 0x96d3cc79 dev_uc_flush +EXPORT_SYMBOL vmlinux 0x96dabeeb vme_new_dma_list +EXPORT_SYMBOL vmlinux 0x96e5d30f gen_pool_set_algo +EXPORT_SYMBOL vmlinux 0x96eab78b iosf_mbi_modify +EXPORT_SYMBOL vmlinux 0x96fab350 dim_park_on_top +EXPORT_SYMBOL vmlinux 0x97049164 __traceiter_kmem_cache_free +EXPORT_SYMBOL vmlinux 0x973fa82e register_acpi_notifier +EXPORT_SYMBOL vmlinux 0x9743e62a phy_disconnect +EXPORT_SYMBOL vmlinux 0x97449872 unregister_console +EXPORT_SYMBOL vmlinux 0x974acab8 tcp_release_cb +EXPORT_SYMBOL vmlinux 0x9752fae9 pci_set_master +EXPORT_SYMBOL vmlinux 0x97579af7 param_set_hexint +EXPORT_SYMBOL vmlinux 0x975a23c8 blk_mq_start_hw_queue +EXPORT_SYMBOL vmlinux 0x97635d33 __scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x97651e6c vmemmap_base +EXPORT_SYMBOL vmlinux 0x97796289 vm_node_stat +EXPORT_SYMBOL vmlinux 0x9786929b __ip_queue_xmit +EXPORT_SYMBOL vmlinux 0x97879bcb gpiochip_irq_relres +EXPORT_SYMBOL vmlinux 0x978b202d jbd2_journal_get_create_access +EXPORT_SYMBOL vmlinux 0x9793535e dev_addr_mod +EXPORT_SYMBOL vmlinux 0x979af9cf scsi_device_lookup_by_target +EXPORT_SYMBOL vmlinux 0x97a57333 crc_t10dif_update +EXPORT_SYMBOL vmlinux 0x97adb487 utf8s_to_utf16s +EXPORT_SYMBOL vmlinux 0x97bdfa60 scsi_dev_info_remove_list +EXPORT_SYMBOL vmlinux 0x97c40a0a pci_choose_state +EXPORT_SYMBOL vmlinux 0x97d6da36 pci_set_mwi +EXPORT_SYMBOL vmlinux 0x97d8156e hmm_range_fault +EXPORT_SYMBOL vmlinux 0x97f8eba6 pagecache_get_page +EXPORT_SYMBOL vmlinux 0x98041912 lookup_one +EXPORT_SYMBOL vmlinux 0x98048979 tcp_add_backlog +EXPORT_SYMBOL vmlinux 0x981256bc qdisc_hash_del +EXPORT_SYMBOL vmlinux 0x981ec4e4 phy_write_paged +EXPORT_SYMBOL vmlinux 0x9829fc11 __kfifo_out_peek_r +EXPORT_SYMBOL vmlinux 0x984d9c39 cpumask_next_wrap +EXPORT_SYMBOL vmlinux 0x98555a05 dma_fence_chain_walk +EXPORT_SYMBOL vmlinux 0x9856150c phy_read_mmd +EXPORT_SYMBOL vmlinux 0x9858f364 get_random_u8 +EXPORT_SYMBOL vmlinux 0x989c9b9c input_mt_report_pointer_emulation +EXPORT_SYMBOL vmlinux 0x98ae7e07 get_fs_type +EXPORT_SYMBOL vmlinux 0x98ba7866 pnp_release_card_device +EXPORT_SYMBOL vmlinux 0x98c89ade security_xfrm_state_alloc +EXPORT_SYMBOL vmlinux 0x98c8b858 security_task_getsecid_obj +EXPORT_SYMBOL vmlinux 0x98cb878e proc_dobool +EXPORT_SYMBOL vmlinux 0x98e3280a crypto_kdf108_setkey +EXPORT_SYMBOL vmlinux 0x98e508ef ignore_console_lock_warning +EXPORT_SYMBOL vmlinux 0x98e51e7b __skb_recv_datagram +EXPORT_SYMBOL vmlinux 0x98f16e3b pnp_is_active +EXPORT_SYMBOL vmlinux 0x98ffc9cd ether_setup +EXPORT_SYMBOL vmlinux 0x9903b9d3 put_cmsg +EXPORT_SYMBOL vmlinux 0x99078b39 trace_print_flags_seq +EXPORT_SYMBOL vmlinux 0x9925a1f4 napi_get_frags +EXPORT_SYMBOL vmlinux 0x9939eba0 backlight_unregister_notifier +EXPORT_SYMBOL vmlinux 0x993f7656 handle_edge_irq +EXPORT_SYMBOL vmlinux 0x99416835 pps_event +EXPORT_SYMBOL vmlinux 0x99432168 input_get_keycode +EXPORT_SYMBOL vmlinux 0x99517682 udp_encap_enable +EXPORT_SYMBOL vmlinux 0x99569750 phy_support_asym_pause +EXPORT_SYMBOL vmlinux 0x9961d795 bio_free_pages +EXPORT_SYMBOL vmlinux 0x9978a875 vme_slave_request +EXPORT_SYMBOL vmlinux 0x9979945d devm_alloc_etherdev_mqs +EXPORT_SYMBOL vmlinux 0x997bf58f block_truncate_page +EXPORT_SYMBOL vmlinux 0x9980551f fscrypt_put_encryption_info +EXPORT_SYMBOL vmlinux 0x998943fa netdev_offload_xstats_get +EXPORT_SYMBOL vmlinux 0x998ee9aa netlink_capable +EXPORT_SYMBOL vmlinux 0x99955e8f input_mt_sync_frame +EXPORT_SYMBOL vmlinux 0x999683bd jbd2_journal_release_jbd_inode +EXPORT_SYMBOL vmlinux 0x999e8297 vfree +EXPORT_SYMBOL vmlinux 0x99a88b4b netif_set_tso_max_size +EXPORT_SYMBOL vmlinux 0x99cad753 refresh_frequency_limits +EXPORT_SYMBOL vmlinux 0x99d472b1 net_dim_get_rx_moderation +EXPORT_SYMBOL vmlinux 0x99daa9bf try_offline_node +EXPORT_SYMBOL vmlinux 0x99e9323a devfreq_remove_device +EXPORT_SYMBOL vmlinux 0x99ee8b1c devm_of_iomap +EXPORT_SYMBOL vmlinux 0x99f068d5 x86_cpu_to_node_map +EXPORT_SYMBOL vmlinux 0x99f7371c refcount_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0x99f794c8 __SCK__tp_func_mmap_lock_start_locking +EXPORT_SYMBOL vmlinux 0x99f9638f __napi_alloc_frag_align +EXPORT_SYMBOL vmlinux 0x9a04dc74 i2c_smbus_write_i2c_block_data +EXPORT_SYMBOL vmlinux 0x9a1dfd65 strpbrk +EXPORT_SYMBOL vmlinux 0x9a22391e radix_tree_gang_lookup_tag_slot +EXPORT_SYMBOL vmlinux 0x9a267c3d crypto_sha3_final +EXPORT_SYMBOL vmlinux 0x9a2c088f irq_stat +EXPORT_SYMBOL vmlinux 0x9a39ee14 folio_end_private_2 +EXPORT_SYMBOL vmlinux 0x9a57700d nf_ct_get_tuple_skb +EXPORT_SYMBOL vmlinux 0x9a583306 netlbl_bitmap_walk +EXPORT_SYMBOL vmlinux 0x9a6ef0df i2c_transfer_buffer_flags +EXPORT_SYMBOL vmlinux 0x9a79e8e4 netdev_set_tc_queue +EXPORT_SYMBOL vmlinux 0x9a84e9f2 tcp_v4_mtu_reduced +EXPORT_SYMBOL vmlinux 0x9a98cecb scsi_device_resume +EXPORT_SYMBOL vmlinux 0x9a992f75 xp_set_rxq_info +EXPORT_SYMBOL vmlinux 0x9aaeefce sysctl_nf_log_all_netns +EXPORT_SYMBOL vmlinux 0x9acd3f6f get_cpu_entry_area +EXPORT_SYMBOL vmlinux 0x9ad7a582 iosf_mbi_assert_punit_acquired +EXPORT_SYMBOL vmlinux 0x9ae47436 _find_last_bit +EXPORT_SYMBOL vmlinux 0x9b0a57ce get_tree_bdev +EXPORT_SYMBOL vmlinux 0x9b15eedf sock_recvmsg +EXPORT_SYMBOL vmlinux 0x9b2560b9 gf128mul_init_4k_bbe +EXPORT_SYMBOL vmlinux 0x9b25fd48 posix_lock_file +EXPORT_SYMBOL vmlinux 0x9b2932e8 acpi_processor_notify_smm +EXPORT_SYMBOL vmlinux 0x9b2e1b98 vfs_iocb_iter_read +EXPORT_SYMBOL vmlinux 0x9b33e0d7 unregister_dcbevent_notifier +EXPORT_SYMBOL vmlinux 0x9b41dd19 passthru_features_check +EXPORT_SYMBOL vmlinux 0x9b46ed09 __cgroup_bpf_run_filter_skb +EXPORT_SYMBOL vmlinux 0x9b496b21 posix_acl_alloc +EXPORT_SYMBOL vmlinux 0x9b62fe8b skb_copy_header +EXPORT_SYMBOL vmlinux 0x9b6d5cda kmem_cache_create +EXPORT_SYMBOL vmlinux 0x9b715f44 dev_uc_init +EXPORT_SYMBOL vmlinux 0x9b72478f acpi_unload_parent_table +EXPORT_SYMBOL vmlinux 0x9b739b09 md_check_recovery +EXPORT_SYMBOL vmlinux 0x9b8c3235 nf_register_sockopt +EXPORT_SYMBOL vmlinux 0x9b94f1ed napi_schedule_prep +EXPORT_SYMBOL vmlinux 0x9bb44046 sock_set_keepalive +EXPORT_SYMBOL vmlinux 0x9bb4e317 ioread32be +EXPORT_SYMBOL vmlinux 0x9bb5f120 set_bh_page +EXPORT_SYMBOL vmlinux 0x9bc081a3 rfkill_alloc +EXPORT_SYMBOL vmlinux 0x9bd014f6 __generic_file_fsync +EXPORT_SYMBOL vmlinux 0x9bd01b86 scsi_vpd_lun_id +EXPORT_SYMBOL vmlinux 0x9bd7fe82 flow_rule_match_ip +EXPORT_SYMBOL vmlinux 0x9bddacdb t10_pi_type1_crc +EXPORT_SYMBOL vmlinux 0x9c122bcf mempool_create_node +EXPORT_SYMBOL vmlinux 0x9c3cf179 ethtool_op_get_link +EXPORT_SYMBOL vmlinux 0x9c4698d1 pci_bus_read_dev_vendor_id +EXPORT_SYMBOL vmlinux 0x9c4ca4e2 __napi_schedule_irqoff +EXPORT_SYMBOL vmlinux 0x9c65b78a csum_partial_copy_nocheck +EXPORT_SYMBOL vmlinux 0x9c86b9ab fileattr_fill_flags +EXPORT_SYMBOL vmlinux 0x9c996d84 devm_aperture_acquire_for_platform_device +EXPORT_SYMBOL vmlinux 0x9c9aa3b9 parse_int_array_user +EXPORT_SYMBOL vmlinux 0x9ca4391a cookie_ecn_ok +EXPORT_SYMBOL vmlinux 0x9cab34a6 rfkill_set_led_trigger_name +EXPORT_SYMBOL vmlinux 0x9cb986f2 vmalloc_base +EXPORT_SYMBOL vmlinux 0x9ccf7171 vme_dma_pci_attribute +EXPORT_SYMBOL vmlinux 0x9cd311dd tc_setup_cb_add +EXPORT_SYMBOL vmlinux 0x9cd8db23 acpi_register_debugger +EXPORT_SYMBOL vmlinux 0x9cdeb5f0 filemap_dirty_folio +EXPORT_SYMBOL vmlinux 0x9cdfb3f7 sysctl_fb_tunnels_only_for_init_net +EXPORT_SYMBOL vmlinux 0x9ced41ad __SCT__tp_func_read_msr +EXPORT_SYMBOL vmlinux 0x9cff236e __icmp_send +EXPORT_SYMBOL vmlinux 0x9d099a39 acpi_remove_gpe_handler +EXPORT_SYMBOL vmlinux 0x9d0d6206 unregister_netdevice_notifier +EXPORT_SYMBOL vmlinux 0x9d26675e zstd_cstream_workspace_bound +EXPORT_SYMBOL vmlinux 0x9d2ab8ac __tasklet_schedule +EXPORT_SYMBOL vmlinux 0x9d2e7707 unregister_sysrq_key +EXPORT_SYMBOL vmlinux 0x9d3c7bb4 __skb_checksum_complete +EXPORT_SYMBOL vmlinux 0x9d453f62 fs_context_for_submount +EXPORT_SYMBOL vmlinux 0x9d4ba633 udp_push_pending_frames +EXPORT_SYMBOL vmlinux 0x9d5e1148 rtnl_set_sk_err +EXPORT_SYMBOL vmlinux 0x9d61e994 ucs2_strncmp +EXPORT_SYMBOL vmlinux 0x9d70541a native_save_fl +EXPORT_SYMBOL vmlinux 0x9d71ac38 netpoll_setup +EXPORT_SYMBOL vmlinux 0x9d7b8da9 security_sctp_assoc_request +EXPORT_SYMBOL vmlinux 0x9d82c9e8 __tracepoint_write_msr +EXPORT_SYMBOL vmlinux 0x9d92f3ad __wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0x9da3c91e agp3_generic_tlbflush +EXPORT_SYMBOL vmlinux 0x9da9934a serial8250_set_isa_configurator +EXPORT_SYMBOL vmlinux 0x9db25934 scsi_bios_ptable +EXPORT_SYMBOL vmlinux 0x9db55598 rtnl_offload_xstats_notify +EXPORT_SYMBOL vmlinux 0x9dcb7ff7 kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0x9dd9df13 dm_kcopyd_client_create +EXPORT_SYMBOL vmlinux 0x9df68b39 skb_copy_and_hash_datagram_iter +EXPORT_SYMBOL vmlinux 0x9df995fb stack_depot_set_extra_bits +EXPORT_SYMBOL vmlinux 0x9e0699cc tcf_exts_dump +EXPORT_SYMBOL vmlinux 0x9e0c711d vzalloc_node +EXPORT_SYMBOL vmlinux 0x9e0fa5ae hsiphash_3u32 +EXPORT_SYMBOL vmlinux 0x9e13f6f6 gf128mul_lle +EXPORT_SYMBOL vmlinux 0x9e2737f0 acpi_install_interface_handler +EXPORT_SYMBOL vmlinux 0x9e2ec768 mfd_remove_devices +EXPORT_SYMBOL vmlinux 0x9e3189a4 netdev_crit +EXPORT_SYMBOL vmlinux 0x9e3e9217 dev_lstats_read +EXPORT_SYMBOL vmlinux 0x9e4faeef dm_io_client_destroy +EXPORT_SYMBOL vmlinux 0x9e515ff3 nf_ct_attach +EXPORT_SYMBOL vmlinux 0x9e5e0fa9 __SCK__tp_func_kfree +EXPORT_SYMBOL vmlinux 0x9e61bb05 set_freezable +EXPORT_SYMBOL vmlinux 0x9e64fbfe rtc_cmos_read +EXPORT_SYMBOL vmlinux 0x9e681343 tty_port_tty_get +EXPORT_SYMBOL vmlinux 0x9e682fbf devm_memunmap +EXPORT_SYMBOL vmlinux 0x9e683f75 __cpu_possible_mask +EXPORT_SYMBOL vmlinux 0x9e6f1997 seq_open +EXPORT_SYMBOL vmlinux 0x9e773038 end_buffer_write_sync +EXPORT_SYMBOL vmlinux 0x9e7d6bd0 __udelay +EXPORT_SYMBOL vmlinux 0x9e833cc1 fscrypt_setup_filename +EXPORT_SYMBOL vmlinux 0x9e8b50c6 dev_activate +EXPORT_SYMBOL vmlinux 0x9e9eab95 devcgroup_check_permission +EXPORT_SYMBOL vmlinux 0x9e9fdd9d memunmap +EXPORT_SYMBOL vmlinux 0x9eacf8a5 kstrndup +EXPORT_SYMBOL vmlinux 0x9eadd80c simple_open +EXPORT_SYMBOL vmlinux 0x9ec0e639 twl6030_interrupt_unmask +EXPORT_SYMBOL vmlinux 0x9ec6ca96 ktime_get_real_ts64 +EXPORT_SYMBOL vmlinux 0x9ec73824 vfs_mkdir +EXPORT_SYMBOL vmlinux 0x9ecb58c6 folio_end_writeback +EXPORT_SYMBOL vmlinux 0x9ed12e20 kmalloc_large +EXPORT_SYMBOL vmlinux 0x9ed978de vme_lm_set +EXPORT_SYMBOL vmlinux 0x9ed99b53 framebuffer_release +EXPORT_SYMBOL vmlinux 0x9ef0eee7 __SCT__tp_func_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0x9f0ed5dd blk_queue_max_write_zeroes_sectors +EXPORT_SYMBOL vmlinux 0x9f26f482 register_netdevice +EXPORT_SYMBOL vmlinux 0x9f37915e bioset_exit +EXPORT_SYMBOL vmlinux 0x9f3aa235 scsi_host_alloc +EXPORT_SYMBOL vmlinux 0x9f41875f sock_wmalloc +EXPORT_SYMBOL vmlinux 0x9f46ced8 __sw_hweight64 +EXPORT_SYMBOL vmlinux 0x9f4f2aa3 acpi_gbl_FADT +EXPORT_SYMBOL vmlinux 0x9f50b770 keyring_restrict +EXPORT_SYMBOL vmlinux 0x9f54ead7 gro_cells_destroy +EXPORT_SYMBOL vmlinux 0x9f61e84f bpf_link_put +EXPORT_SYMBOL vmlinux 0x9f984513 strrchr +EXPORT_SYMBOL vmlinux 0x9f99ea11 dcache_dir_lseek +EXPORT_SYMBOL vmlinux 0x9fa7184a cancel_delayed_work_sync +EXPORT_SYMBOL vmlinux 0x9fb41842 netdev_offload_xstats_report_delta +EXPORT_SYMBOL vmlinux 0x9fdecc31 unregister_netdevice_many +EXPORT_SYMBOL vmlinux 0x9fdef342 input_mt_report_finger_count +EXPORT_SYMBOL vmlinux 0x9fe446f9 kthread_create_on_node +EXPORT_SYMBOL vmlinux 0x9fe5bdec __serio_register_driver +EXPORT_SYMBOL vmlinux 0x9feb0820 skb_pull +EXPORT_SYMBOL vmlinux 0x9feb673a mr_mfc_seq_next +EXPORT_SYMBOL vmlinux 0x9feed7ce timer_reduce +EXPORT_SYMBOL vmlinux 0x9ffa3a75 netdev_max_backlog +EXPORT_SYMBOL vmlinux 0xa00aca2a dql_completed +EXPORT_SYMBOL vmlinux 0xa01a0fcf blkdev_issue_flush +EXPORT_SYMBOL vmlinux 0xa01d3df6 font_vga_8x16 +EXPORT_SYMBOL vmlinux 0xa024ae4f dev_mc_sync +EXPORT_SYMBOL vmlinux 0xa029f961 md_set_array_sectors +EXPORT_SYMBOL vmlinux 0xa02aa74a __cond_resched_lock +EXPORT_SYMBOL vmlinux 0xa0334345 mdiobus_is_registered_device +EXPORT_SYMBOL vmlinux 0xa033d747 next_arg +EXPORT_SYMBOL vmlinux 0xa0400e3b dma_resv_init +EXPORT_SYMBOL vmlinux 0xa0436e98 in6addr_linklocal_allnodes +EXPORT_SYMBOL vmlinux 0xa057953f md_error +EXPORT_SYMBOL vmlinux 0xa057df8f twl_set_regcache_bypass +EXPORT_SYMBOL vmlinux 0xa05b6be2 psched_ppscfg_precompute +EXPORT_SYMBOL vmlinux 0xa07525b5 kmem_cache_size +EXPORT_SYMBOL vmlinux 0xa07a37f0 memchr +EXPORT_SYMBOL vmlinux 0xa07b8c9f __skb_checksum +EXPORT_SYMBOL vmlinux 0xa07d1b3c tasklet_setup +EXPORT_SYMBOL vmlinux 0xa084749a __bitmap_or +EXPORT_SYMBOL vmlinux 0xa08d7989 secure_tcpv6_ts_off +EXPORT_SYMBOL vmlinux 0xa095e02e generic_check_addressable +EXPORT_SYMBOL vmlinux 0xa098e7e7 fb_is_primary_device +EXPORT_SYMBOL vmlinux 0xa0a936e5 vfs_get_fsid +EXPORT_SYMBOL vmlinux 0xa0ae1e73 siphash_3u64 +EXPORT_SYMBOL vmlinux 0xa0b04675 vmalloc_32 +EXPORT_SYMBOL vmlinux 0xa0dad88e netdev_adjacent_get_private +EXPORT_SYMBOL vmlinux 0xa0eae826 smp_call_function +EXPORT_SYMBOL vmlinux 0xa0ebd14c sysctl_tcp_mem +EXPORT_SYMBOL vmlinux 0xa0ebd437 hdmi_drm_infoframe_check +EXPORT_SYMBOL vmlinux 0xa0f10085 __sg_free_table +EXPORT_SYMBOL vmlinux 0xa0fbac79 wake_up_bit +EXPORT_SYMBOL vmlinux 0xa108eb4d sysctl_optmem_max +EXPORT_SYMBOL vmlinux 0xa11def68 inet_shutdown +EXPORT_SYMBOL vmlinux 0xa13d541c file_modified +EXPORT_SYMBOL vmlinux 0xa13f27af rproc_add_subdev +EXPORT_SYMBOL vmlinux 0xa167b00c netdev_has_upper_dev_all_rcu +EXPORT_SYMBOL vmlinux 0xa169750a jbd2_journal_set_triggers +EXPORT_SYMBOL vmlinux 0xa16d4c9b pm860x_page_reg_write +EXPORT_SYMBOL vmlinux 0xa18a40f7 tty_port_open +EXPORT_SYMBOL vmlinux 0xa19b34f0 fwnode_mdiobus_phy_device_register +EXPORT_SYMBOL vmlinux 0xa1a2a4dc agp_find_bridge +EXPORT_SYMBOL vmlinux 0xa1bedd72 amd_iommu_pc_get_max_counters +EXPORT_SYMBOL vmlinux 0xa1e51b25 complete_request_key +EXPORT_SYMBOL vmlinux 0xa1e75eaf vfs_rmdir +EXPORT_SYMBOL vmlinux 0xa1f00322 inode_set_flags +EXPORT_SYMBOL vmlinux 0xa1f9dbb1 unregister_fib_notifier +EXPORT_SYMBOL vmlinux 0xa2060911 inet_current_timestamp +EXPORT_SYMBOL vmlinux 0xa2326c49 acpi_remove_table_handler +EXPORT_SYMBOL vmlinux 0xa23ffc04 groups_sort +EXPORT_SYMBOL vmlinux 0xa24f23d8 __request_module +EXPORT_SYMBOL vmlinux 0xa25cf415 jbd2_journal_force_commit +EXPORT_SYMBOL vmlinux 0xa263892b fscrypt_fname_free_buffer +EXPORT_SYMBOL vmlinux 0xa26f9cc4 mr_mfc_find_any_parent +EXPORT_SYMBOL vmlinux 0xa285f7a3 devm_devfreq_add_device +EXPORT_SYMBOL vmlinux 0xa28cfcc0 gen_estimator_active +EXPORT_SYMBOL vmlinux 0xa29a7635 dquot_operations +EXPORT_SYMBOL vmlinux 0xa2a406dd sock_set_rcvbuf +EXPORT_SYMBOL vmlinux 0xa2a5d927 genphy_update_link +EXPORT_SYMBOL vmlinux 0xa2a96c2b __SCK__tp_func_write_msr +EXPORT_SYMBOL vmlinux 0xa2b192f7 tcp_recv_skb +EXPORT_SYMBOL vmlinux 0xa2bc4218 sched_autogroup_detach +EXPORT_SYMBOL vmlinux 0xa2c350f5 dcb_ieee_setapp +EXPORT_SYMBOL vmlinux 0xa2da7b43 vme_register_driver +EXPORT_SYMBOL vmlinux 0xa2fd84f9 inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xa307e569 blk_queue_update_dma_alignment +EXPORT_SYMBOL vmlinux 0xa317c661 serio_interrupt +EXPORT_SYMBOL vmlinux 0xa320b1e5 mmc_of_parse +EXPORT_SYMBOL vmlinux 0xa32d4eb2 xfrm_lookup_with_ifid +EXPORT_SYMBOL vmlinux 0xa333b90e jbd2_journal_stop +EXPORT_SYMBOL vmlinux 0xa354cc28 security_dentry_create_files_as +EXPORT_SYMBOL vmlinux 0xa36ea702 pcie_capability_write_word +EXPORT_SYMBOL vmlinux 0xa3769c3c task_work_add +EXPORT_SYMBOL vmlinux 0xa38311f1 __hw_addr_ref_unsync_dev +EXPORT_SYMBOL vmlinux 0xa388dbaa start_tty +EXPORT_SYMBOL vmlinux 0xa38f21b9 amd_iommu_update_ga +EXPORT_SYMBOL vmlinux 0xa39e58de agp_put_bridge +EXPORT_SYMBOL vmlinux 0xa3a44427 config_group_init +EXPORT_SYMBOL vmlinux 0xa3be8342 __ubsan_handle_type_mismatch +EXPORT_SYMBOL vmlinux 0xa3cefaa0 blake2s_update +EXPORT_SYMBOL vmlinux 0xa3d622aa proto_unregister +EXPORT_SYMBOL vmlinux 0xa3d7869a cdev_device_del +EXPORT_SYMBOL vmlinux 0xa3e4f871 acpi_initialize_debugger +EXPORT_SYMBOL vmlinux 0xa3f7ca32 mmc_card_alternative_gpt_sector +EXPORT_SYMBOL vmlinux 0xa3f87084 follow_up +EXPORT_SYMBOL vmlinux 0xa3fea172 sha224_final +EXPORT_SYMBOL vmlinux 0xa40b9f15 tls_handshake_cancel +EXPORT_SYMBOL vmlinux 0xa40ff01b acpi_dbg_layer +EXPORT_SYMBOL vmlinux 0xa4191c0b memset_io +EXPORT_SYMBOL vmlinux 0xa4293b4e agp_enable +EXPORT_SYMBOL vmlinux 0xa440d121 flow_keys_dissector +EXPORT_SYMBOL vmlinux 0xa441e3d8 copy_page_to_iter +EXPORT_SYMBOL vmlinux 0xa4421c6d netdev_notify_peers +EXPORT_SYMBOL vmlinux 0xa466c1a7 flow_block_cb_incref +EXPORT_SYMBOL vmlinux 0xa47c78b8 fs_param_is_u32 +EXPORT_SYMBOL vmlinux 0xa49f1360 vga_switcheroo_client_probe_defer +EXPORT_SYMBOL vmlinux 0xa4b94fea iowrite8_rep +EXPORT_SYMBOL vmlinux 0xa4bc6bcb sock_rfree +EXPORT_SYMBOL vmlinux 0xa4cf87fb netlink_rcv_skb +EXPORT_SYMBOL vmlinux 0xa4d4f0e6 global_cache_flush +EXPORT_SYMBOL vmlinux 0xa4f9059f pm_vt_switch_unregister +EXPORT_SYMBOL vmlinux 0xa4faf62a acpi_disable_gpe +EXPORT_SYMBOL vmlinux 0xa5028b47 tcp_mmap +EXPORT_SYMBOL vmlinux 0xa507125e acpi_clear_gpe +EXPORT_SYMBOL vmlinux 0xa508d492 __dev_queue_xmit +EXPORT_SYMBOL vmlinux 0xa50bcff0 x86_cpu_to_apicid +EXPORT_SYMBOL vmlinux 0xa50ccc34 md_bitmap_endwrite +EXPORT_SYMBOL vmlinux 0xa523819e qdisc_warn_nonwc +EXPORT_SYMBOL vmlinux 0xa52bedf6 xenbus_dev_request_and_reply +EXPORT_SYMBOL vmlinux 0xa5446e31 cros_ec_get_next_event +EXPORT_SYMBOL vmlinux 0xa54b9063 cpu_rmap_add +EXPORT_SYMBOL vmlinux 0xa5526619 rb_insert_color +EXPORT_SYMBOL vmlinux 0xa55a43fb nla_put +EXPORT_SYMBOL vmlinux 0xa5656144 make_kgid +EXPORT_SYMBOL vmlinux 0xa56e8844 inc_zone_page_state +EXPORT_SYMBOL vmlinux 0xa57ba666 sock_gettstamp +EXPORT_SYMBOL vmlinux 0xa5810b24 devm_release_resource +EXPORT_SYMBOL vmlinux 0xa58869f1 agp_alloc_bridge +EXPORT_SYMBOL vmlinux 0xa5976e4f dev_base_lock +EXPORT_SYMBOL vmlinux 0xa59ba74f dev_get_by_index +EXPORT_SYMBOL vmlinux 0xa59dd3dc pci_disable_link_state +EXPORT_SYMBOL vmlinux 0xa5ad65f0 security_inode_invalidate_secctx +EXPORT_SYMBOL vmlinux 0xa5cf64c9 kthread_create_on_cpu +EXPORT_SYMBOL vmlinux 0xa5d8c870 find_inode_by_ino_rcu +EXPORT_SYMBOL vmlinux 0xa5e55057 rdmsrl_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xa5f2e10f remove_proc_subtree +EXPORT_SYMBOL vmlinux 0xa60513a7 __d_drop +EXPORT_SYMBOL vmlinux 0xa61ced89 qdisc_put_rtab +EXPORT_SYMBOL vmlinux 0xa6257a2f complete +EXPORT_SYMBOL vmlinux 0xa629a8ce scsi_print_command +EXPORT_SYMBOL vmlinux 0xa6301140 write_dirty_buffer +EXPORT_SYMBOL vmlinux 0xa6457c89 hdmi_infoframe_pack +EXPORT_SYMBOL vmlinux 0xa648e561 __ubsan_handle_shift_out_of_bounds +EXPORT_SYMBOL vmlinux 0xa64c7249 __printk_cpu_sync_try_get +EXPORT_SYMBOL vmlinux 0xa652cefd phy_error +EXPORT_SYMBOL vmlinux 0xa6658919 __task_pid_nr_ns +EXPORT_SYMBOL vmlinux 0xa681fe88 generate_random_uuid +EXPORT_SYMBOL vmlinux 0xa6aebac0 sk_stop_timer +EXPORT_SYMBOL vmlinux 0xa6c0b899 inet_frag_kill +EXPORT_SYMBOL vmlinux 0xa6d772ef __SCK__tp_func_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xa6df4cea add_to_pipe +EXPORT_SYMBOL vmlinux 0xa6eaa461 current_in_userns +EXPORT_SYMBOL vmlinux 0xa6fc4a82 ethtool_aggregate_pause_stats +EXPORT_SYMBOL vmlinux 0xa70a4abd phy_trigger_machine +EXPORT_SYMBOL vmlinux 0xa70b27e5 ilookup5 +EXPORT_SYMBOL vmlinux 0xa70ed9dc tcp_hashinfo +EXPORT_SYMBOL vmlinux 0xa70fabbe release_evntsel_nmi +EXPORT_SYMBOL vmlinux 0xa71d2e2c ioread16be +EXPORT_SYMBOL vmlinux 0xa72035f9 xa_get_order +EXPORT_SYMBOL vmlinux 0xa72cfb7d ioremap_wt +EXPORT_SYMBOL vmlinux 0xa7444a4b pneigh_enqueue +EXPORT_SYMBOL vmlinux 0xa74c9877 refcount_dec_and_rtnl_lock +EXPORT_SYMBOL vmlinux 0xa768fa96 import_single_range +EXPORT_SYMBOL vmlinux 0xa77bfd29 register_inet6addr_validator_notifier +EXPORT_SYMBOL vmlinux 0xa789fd41 mq_change_real_num_tx +EXPORT_SYMBOL vmlinux 0xa78af5f3 ioread32 +EXPORT_SYMBOL vmlinux 0xa796679d __SCT__tp_func_dma_fence_emit +EXPORT_SYMBOL vmlinux 0xa7c9c707 __block_write_begin +EXPORT_SYMBOL vmlinux 0xa7cbb00b irq_domain_set_info +EXPORT_SYMBOL vmlinux 0xa7cfe9ed tcp_close +EXPORT_SYMBOL vmlinux 0xa7d0a6b5 pci_find_parent_resource +EXPORT_SYMBOL vmlinux 0xa7d5f92e ida_destroy +EXPORT_SYMBOL vmlinux 0xa7da3fa5 pci_scan_bus +EXPORT_SYMBOL vmlinux 0xa7eedcc4 call_usermodehelper +EXPORT_SYMBOL vmlinux 0xa7f0cc2d can_nice +EXPORT_SYMBOL vmlinux 0xa7f2c81c devm_clk_get_optional +EXPORT_SYMBOL vmlinux 0xa805ecfc acpi_release_global_lock +EXPORT_SYMBOL vmlinux 0xa81836e7 genphy_aneg_done +EXPORT_SYMBOL vmlinux 0xa8265302 mntput +EXPORT_SYMBOL vmlinux 0xa82f53f2 dquot_destroy +EXPORT_SYMBOL vmlinux 0xa82ff87a blk_pm_runtime_init +EXPORT_SYMBOL vmlinux 0xa836ba02 wrmsr_safe_regs +EXPORT_SYMBOL vmlinux 0xa843805a get_unused_fd_flags +EXPORT_SYMBOL vmlinux 0xa843e01c dev_getbyhwaddr_rcu +EXPORT_SYMBOL vmlinux 0xa84ce9e0 crypto_aes_inv_sbox +EXPORT_SYMBOL vmlinux 0xa8506460 km_new_mapping +EXPORT_SYMBOL vmlinux 0xa8513ec6 pci_bus_set_ops +EXPORT_SYMBOL vmlinux 0xa853396b xa_extract +EXPORT_SYMBOL vmlinux 0xa85a3e6d xa_load +EXPORT_SYMBOL vmlinux 0xa85a66bc skb_ensure_writable +EXPORT_SYMBOL vmlinux 0xa85c8a69 datagram_poll +EXPORT_SYMBOL vmlinux 0xa86169b0 inet6_register_protosw +EXPORT_SYMBOL vmlinux 0xa863dab8 __folio_cancel_dirty +EXPORT_SYMBOL vmlinux 0xa8694ecd kblockd_schedule_work +EXPORT_SYMBOL vmlinux 0xa88fb408 xfrm_find_acq_byseq +EXPORT_SYMBOL vmlinux 0xa897e3e7 mempool_free +EXPORT_SYMBOL vmlinux 0xa89a1cf1 ipmi_dmi_get_slave_addr +EXPORT_SYMBOL vmlinux 0xa8a7faaa input_enable_softrepeat +EXPORT_SYMBOL vmlinux 0xa8ae42ce udp_seq_start +EXPORT_SYMBOL vmlinux 0xa8c3e9fc inet_add_protocol +EXPORT_SYMBOL vmlinux 0xa8c44d84 iw_handler_set_spy +EXPORT_SYMBOL vmlinux 0xa8caa845 clk_bulk_put_all +EXPORT_SYMBOL vmlinux 0xa8ceedca revert_creds +EXPORT_SYMBOL vmlinux 0xa8d19961 netdev_lower_get_next_private +EXPORT_SYMBOL vmlinux 0xa8d3fb40 inet_unregister_protosw +EXPORT_SYMBOL vmlinux 0xa8e6933a qdf2400_e44_present +EXPORT_SYMBOL vmlinux 0xa8f6c843 ip_frag_ecn_table +EXPORT_SYMBOL vmlinux 0xa903a031 tcf_get_next_proto +EXPORT_SYMBOL vmlinux 0xa9083556 generic_write_end +EXPORT_SYMBOL vmlinux 0xa90ca0de flush_rcu_work +EXPORT_SYMBOL vmlinux 0xa90fe060 cdev_alloc +EXPORT_SYMBOL vmlinux 0xa914143a generic_pipe_buf_try_steal +EXPORT_SYMBOL vmlinux 0xa916b694 strnlen +EXPORT_SYMBOL vmlinux 0xa917c1de blk_limits_io_opt +EXPORT_SYMBOL vmlinux 0xa9237a81 genphy_read_status +EXPORT_SYMBOL vmlinux 0xa927d661 touch_buffer +EXPORT_SYMBOL vmlinux 0xa930f22f jbd2_journal_clear_err +EXPORT_SYMBOL vmlinux 0xa941dbb3 put_disk +EXPORT_SYMBOL vmlinux 0xa94a09bb mem_section +EXPORT_SYMBOL vmlinux 0xa9558a55 flow_indr_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xa961b182 eth_mac_addr +EXPORT_SYMBOL vmlinux 0xa965ca81 reciprocal_value +EXPORT_SYMBOL vmlinux 0xa976957d bitmap_remap +EXPORT_SYMBOL vmlinux 0xa9785b49 cpu_core_map +EXPORT_SYMBOL vmlinux 0xa9c72303 amd_iommu_pc_get_max_banks +EXPORT_SYMBOL vmlinux 0xa9d5f9b0 i2c_add_adapter +EXPORT_SYMBOL vmlinux 0xa9d87ee3 tcf_action_update_stats +EXPORT_SYMBOL vmlinux 0xa9ef3fb6 sock_kfree_s +EXPORT_SYMBOL vmlinux 0xa9f7b6fd agp_generic_enable +EXPORT_SYMBOL vmlinux 0xa9fcbbf0 udp_ioctl +EXPORT_SYMBOL vmlinux 0xaa00fdc0 ec_transaction +EXPORT_SYMBOL vmlinux 0xaa0226ac sock_setsockopt +EXPORT_SYMBOL vmlinux 0xaa0c318b vscnprintf +EXPORT_SYMBOL vmlinux 0xaa19e4aa _kstrtol +EXPORT_SYMBOL vmlinux 0xaa283b2d create_empty_buffers +EXPORT_SYMBOL vmlinux 0xaa309bcd __cgroup_bpf_run_filter_sock_ops +EXPORT_SYMBOL vmlinux 0xaa341905 acpi_bios_exception +EXPORT_SYMBOL vmlinux 0xaa5cde2b max8925_set_bits +EXPORT_SYMBOL vmlinux 0xaa6f23ad rfkill_get_led_trigger_name +EXPORT_SYMBOL vmlinux 0xaa7b123c tcf_exts_change +EXPORT_SYMBOL vmlinux 0xaa7bf8a8 unpin_user_pages_dirty_lock +EXPORT_SYMBOL vmlinux 0xaa876917 phy_set_sym_pause +EXPORT_SYMBOL vmlinux 0xaa8f1b71 inet_addr_is_any +EXPORT_SYMBOL vmlinux 0xaa988082 pci_read_config_byte +EXPORT_SYMBOL vmlinux 0xaa9c832b arp_create +EXPORT_SYMBOL vmlinux 0xaaa4b9bc hchacha_block_generic +EXPORT_SYMBOL vmlinux 0xaab777c6 device_add_disk +EXPORT_SYMBOL vmlinux 0xaab7fa50 __breadahead +EXPORT_SYMBOL vmlinux 0xaabfef4f jbd2_journal_init_inode +EXPORT_SYMBOL vmlinux 0xaacadb31 tty_lock +EXPORT_SYMBOL vmlinux 0xaacbaca2 devm_backlight_device_unregister +EXPORT_SYMBOL vmlinux 0xaacf03c1 dma_fence_signal +EXPORT_SYMBOL vmlinux 0xaad0ae78 __bitmap_shift_right +EXPORT_SYMBOL vmlinux 0xaad6d92f rfkill_init_sw_state +EXPORT_SYMBOL vmlinux 0xaad8c7d6 default_wake_function +EXPORT_SYMBOL vmlinux 0xaadedc0c __sk_dst_check +EXPORT_SYMBOL vmlinux 0xaae1fdef skb_tx_error +EXPORT_SYMBOL vmlinux 0xaae8ab0e acpi_bus_power_manageable +EXPORT_SYMBOL vmlinux 0xaafdc258 strcasecmp +EXPORT_SYMBOL vmlinux 0xab0c81a7 clear_inode +EXPORT_SYMBOL vmlinux 0xab13644e md_integrity_add_rdev +EXPORT_SYMBOL vmlinux 0xab1a8afd netif_receive_skb_core +EXPORT_SYMBOL vmlinux 0xab3697e4 irq_poll_init +EXPORT_SYMBOL vmlinux 0xab3b75ea vme_dma_pattern_attribute +EXPORT_SYMBOL vmlinux 0xab3be5fb jbd2_fc_begin_commit +EXPORT_SYMBOL vmlinux 0xab600421 probe_irq_off +EXPORT_SYMBOL vmlinux 0xab63baa5 unregister_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xab651713 netdev_master_upper_dev_get_rcu +EXPORT_SYMBOL vmlinux 0xab65ed80 set_memory_uc +EXPORT_SYMBOL vmlinux 0xab67a0ac dql_init +EXPORT_SYMBOL vmlinux 0xab6d5b3b hex_to_bin +EXPORT_SYMBOL vmlinux 0xab781570 fb_get_options +EXPORT_SYMBOL vmlinux 0xab8076ae disk_check_media_change +EXPORT_SYMBOL vmlinux 0xab8a9f06 md_finish_reshape +EXPORT_SYMBOL vmlinux 0xab938aba invalidate_mapping_pages +EXPORT_SYMBOL vmlinux 0xabae4983 mdiobus_read +EXPORT_SYMBOL vmlinux 0xabb5a90c config_item_init_type_name +EXPORT_SYMBOL vmlinux 0xabbfa196 blkdev_issue_secure_erase +EXPORT_SYMBOL vmlinux 0xabde2339 skb_flow_get_icmp_tci +EXPORT_SYMBOL vmlinux 0xabed09bd vfs_ioctl +EXPORT_SYMBOL vmlinux 0xabf32f29 utf16s_to_utf8s +EXPORT_SYMBOL vmlinux 0xabf53b48 rep_stos_alternative +EXPORT_SYMBOL vmlinux 0xabf931c9 vfs_rename +EXPORT_SYMBOL vmlinux 0xac16d626 vme_master_request +EXPORT_SYMBOL vmlinux 0xac1a55be unregister_reboot_notifier +EXPORT_SYMBOL vmlinux 0xac3201b0 udp_flow_hashrnd +EXPORT_SYMBOL vmlinux 0xac3facf3 md_done_sync +EXPORT_SYMBOL vmlinux 0xac4ee648 skb_copy_and_csum_datagram_msg +EXPORT_SYMBOL vmlinux 0xac537ac2 percpu_counter_destroy +EXPORT_SYMBOL vmlinux 0xac5fc32d pnp_device_attach +EXPORT_SYMBOL vmlinux 0xac5fcec0 in4_pton +EXPORT_SYMBOL vmlinux 0xac80e542 __blockdev_direct_IO +EXPORT_SYMBOL vmlinux 0xac887c0a blk_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xac8e2aca flow_rule_match_ct +EXPORT_SYMBOL vmlinux 0xac942b3a devm_devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xac980b4d cpufreq_get_policy +EXPORT_SYMBOL vmlinux 0xac9ef32d logfc +EXPORT_SYMBOL vmlinux 0xac9fa5b5 iput +EXPORT_SYMBOL vmlinux 0xacab29b7 seq_hlist_start_percpu +EXPORT_SYMBOL vmlinux 0xacb445ea debugfs_create_automount +EXPORT_SYMBOL vmlinux 0xacb5568f sync_blockdev_range +EXPORT_SYMBOL vmlinux 0xacb9cab9 generic_cont_expand_simple +EXPORT_SYMBOL vmlinux 0xacd81eb3 jbd2_inode_cache +EXPORT_SYMBOL vmlinux 0xacddd806 ptp_get_vclocks_index +EXPORT_SYMBOL vmlinux 0xacea8173 acpi_debug_print +EXPORT_SYMBOL vmlinux 0xacf4d843 match_strdup +EXPORT_SYMBOL vmlinux 0xacf649bf audit_log_task_info +EXPORT_SYMBOL vmlinux 0xacf81453 dma_set_mask +EXPORT_SYMBOL vmlinux 0xacfcdabb devm_iounmap +EXPORT_SYMBOL vmlinux 0xad0413d4 match_hex +EXPORT_SYMBOL vmlinux 0xad081980 poll_freewait +EXPORT_SYMBOL vmlinux 0xad1036a2 amd_iommu_activate_guest_mode +EXPORT_SYMBOL vmlinux 0xad536c91 x86_cpu_to_acpiid +EXPORT_SYMBOL vmlinux 0xad53a002 __x86_indirect_call_thunk_rbp +EXPORT_SYMBOL vmlinux 0xad64148e inet_accept +EXPORT_SYMBOL vmlinux 0xad6ba40e radix_tree_tag_get +EXPORT_SYMBOL vmlinux 0xad73041f autoremove_wake_function +EXPORT_SYMBOL vmlinux 0xad738142 tcp_inbound_md5_hash +EXPORT_SYMBOL vmlinux 0xad9901ae bit_waitqueue +EXPORT_SYMBOL vmlinux 0xada31e57 gen_pool_dma_alloc_align +EXPORT_SYMBOL vmlinux 0xadae6df8 blake2s_final +EXPORT_SYMBOL vmlinux 0xadbeed61 mipi_dsi_packet_format_is_long +EXPORT_SYMBOL vmlinux 0xadc799ee inet_dgram_connect +EXPORT_SYMBOL vmlinux 0xadd139d4 rfs_needed +EXPORT_SYMBOL vmlinux 0xadd34cb3 i2c_put_adapter +EXPORT_SYMBOL vmlinux 0xadf05701 done_path_create +EXPORT_SYMBOL vmlinux 0xae04012c __vmalloc +EXPORT_SYMBOL vmlinux 0xae1d2c5e fb_modesetting_disabled +EXPORT_SYMBOL vmlinux 0xae2fe2c4 inode_update_time +EXPORT_SYMBOL vmlinux 0xae316c11 icmpv6_err_convert +EXPORT_SYMBOL vmlinux 0xae5a04bb acpi_evaluate_dsm +EXPORT_SYMBOL vmlinux 0xae66472b scsi_kmap_atomic_sg +EXPORT_SYMBOL vmlinux 0xae6efff2 blk_mq_delay_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xae7dc3c7 register_md_personality +EXPORT_SYMBOL vmlinux 0xae8bb8cd scsi_print_result +EXPORT_SYMBOL vmlinux 0xae9b9f9a rproc_of_parse_firmware +EXPORT_SYMBOL vmlinux 0xae9bb5b8 ipv4_dst_check +EXPORT_SYMBOL vmlinux 0xaeac049a generate_random_guid +EXPORT_SYMBOL vmlinux 0xaeadedaa pfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xaeb082ad _raw_read_unlock_bh +EXPORT_SYMBOL vmlinux 0xaebd12f0 acpi_get_name +EXPORT_SYMBOL vmlinux 0xaebe3566 scsi_ioctl +EXPORT_SYMBOL vmlinux 0xaec66fe9 pci_stop_and_remove_bus_device +EXPORT_SYMBOL vmlinux 0xaecde1db flow_rule_alloc +EXPORT_SYMBOL vmlinux 0xaee129b6 blk_mq_rq_cpu +EXPORT_SYMBOL vmlinux 0xaee493b3 devfreq_suspend_device +EXPORT_SYMBOL vmlinux 0xaee91aae iov_iter_bvec +EXPORT_SYMBOL vmlinux 0xaeff747c udp6_csum_init +EXPORT_SYMBOL vmlinux 0xaf031da2 rproc_get_by_phandle +EXPORT_SYMBOL vmlinux 0xaf19dd45 generic_file_read_iter +EXPORT_SYMBOL vmlinux 0xaf1f9709 __SCK__tp_func_mmap_lock_acquire_returned +EXPORT_SYMBOL vmlinux 0xaf232f0d phy_support_sym_pause +EXPORT_SYMBOL vmlinux 0xaf354bbe cpu_tss_rw +EXPORT_SYMBOL vmlinux 0xaf3dd7dc scsi_logging_level +EXPORT_SYMBOL vmlinux 0xaf7566a5 security_dentry_init_security +EXPORT_SYMBOL vmlinux 0xaf843ef0 tcf_em_tree_validate +EXPORT_SYMBOL vmlinux 0xaf9326c6 __mdiobus_read +EXPORT_SYMBOL vmlinux 0xaf937505 mdio_device_reset +EXPORT_SYMBOL vmlinux 0xaf956c47 xfrm_init_replay +EXPORT_SYMBOL vmlinux 0xafaa6031 _find_next_and_bit +EXPORT_SYMBOL vmlinux 0xafb63ce6 phy_print_status +EXPORT_SYMBOL vmlinux 0xafb864c1 refcount_dec_and_lock_irqsave +EXPORT_SYMBOL vmlinux 0xafb9f5bd mmc_release_host +EXPORT_SYMBOL vmlinux 0xafbc31c5 unix_detach_fds +EXPORT_SYMBOL vmlinux 0xafc08054 dotdot_name +EXPORT_SYMBOL vmlinux 0xafc6c68e zstd_is_error +EXPORT_SYMBOL vmlinux 0xafd5ff2c amd_iommu_v2_supported +EXPORT_SYMBOL vmlinux 0xafd744c6 __x86_indirect_thunk_rbp +EXPORT_SYMBOL vmlinux 0xafea18d2 neigh_carrier_down +EXPORT_SYMBOL vmlinux 0xaffc92bf blk_rq_map_user +EXPORT_SYMBOL vmlinux 0xb00ec2ef dquot_load_quota_sb +EXPORT_SYMBOL vmlinux 0xb01b4b1d nd_device_register +EXPORT_SYMBOL vmlinux 0xb01bebf9 xfrm_get_acqseq +EXPORT_SYMBOL vmlinux 0xb01cb959 pm_vt_switch_required +EXPORT_SYMBOL vmlinux 0xb02df2d6 __traceiter_rdpmc +EXPORT_SYMBOL vmlinux 0xb0373b4c file_path +EXPORT_SYMBOL vmlinux 0xb04533f2 security_inode_setsecctx +EXPORT_SYMBOL vmlinux 0xb04a43ad __xa_alloc_cyclic +EXPORT_SYMBOL vmlinux 0xb050419f pci_release_resource +EXPORT_SYMBOL vmlinux 0xb052bff1 flow_indr_dev_setup_offload +EXPORT_SYMBOL vmlinux 0xb058ca07 dim_calc_stats +EXPORT_SYMBOL vmlinux 0xb05fc310 sysctl_rmem_max +EXPORT_SYMBOL vmlinux 0xb0617db4 wait_for_completion_state +EXPORT_SYMBOL vmlinux 0xb069244d ip_options_compile +EXPORT_SYMBOL vmlinux 0xb0695461 phy_request_interrupt +EXPORT_SYMBOL vmlinux 0xb076f8fa inet_frag_pull_head +EXPORT_SYMBOL vmlinux 0xb0971e93 dev_uc_sync +EXPORT_SYMBOL vmlinux 0xb097f13f blk_queue_max_secure_erase_sectors +EXPORT_SYMBOL vmlinux 0xb09b64dd starget_for_each_device +EXPORT_SYMBOL vmlinux 0xb09fc41f mmc_cqe_recovery +EXPORT_SYMBOL vmlinux 0xb0a0da0c rational_best_approximation +EXPORT_SYMBOL vmlinux 0xb0a140c7 unlock_buffer +EXPORT_SYMBOL vmlinux 0xb0b76945 __x86_indirect_call_thunk_rsp +EXPORT_SYMBOL vmlinux 0xb0c5e247 lockref_put_return +EXPORT_SYMBOL vmlinux 0xb0e10781 get_option +EXPORT_SYMBOL vmlinux 0xb0e602eb memmove +EXPORT_SYMBOL vmlinux 0xb0ecb264 skb_flow_dissect_tunnel_info +EXPORT_SYMBOL vmlinux 0xb111dbb1 shmem_aops +EXPORT_SYMBOL vmlinux 0xb11d4122 dma_resv_iter_next_unlocked +EXPORT_SYMBOL vmlinux 0xb121390a probe_irq_on +EXPORT_SYMBOL vmlinux 0xb125a25e tcf_exts_num_actions +EXPORT_SYMBOL vmlinux 0xb12cbacb fb_unregister_client +EXPORT_SYMBOL vmlinux 0xb1342cdb _raw_read_lock_irqsave +EXPORT_SYMBOL vmlinux 0xb135355e rtc_add_group +EXPORT_SYMBOL vmlinux 0xb136bf48 qdisc_put_unlocked +EXPORT_SYMBOL vmlinux 0xb1407e4b netdev_bind_sb_channel_queue +EXPORT_SYMBOL vmlinux 0xb141061f i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xb14ab1ef hdmi_audio_infoframe_init +EXPORT_SYMBOL vmlinux 0xb14fc46a find_next_clump8 +EXPORT_SYMBOL vmlinux 0xb1518e15 cancel_work +EXPORT_SYMBOL vmlinux 0xb1591cff blk_rq_map_user_iov +EXPORT_SYMBOL vmlinux 0xb15d2255 fscrypt_free_bounce_page +EXPORT_SYMBOL vmlinux 0xb16958a5 agp_generic_free_gatt_table +EXPORT_SYMBOL vmlinux 0xb17e7e98 max8925_bulk_read +EXPORT_SYMBOL vmlinux 0xb17f38ed ethtool_aggregate_rmon_stats +EXPORT_SYMBOL vmlinux 0xb1823ee4 tty_unthrottle +EXPORT_SYMBOL vmlinux 0xb18cff74 fwnode_get_mac_address +EXPORT_SYMBOL vmlinux 0xb19a5453 __per_cpu_offset +EXPORT_SYMBOL vmlinux 0xb19cf99f netdev_offload_xstats_enable +EXPORT_SYMBOL vmlinux 0xb19fc6b6 inet_bind +EXPORT_SYMBOL vmlinux 0xb1a1b48b md_bitmap_update_sb +EXPORT_SYMBOL vmlinux 0xb1c3a01a oops_in_progress +EXPORT_SYMBOL vmlinux 0xb1ddf995 jiffies_64_to_clock_t +EXPORT_SYMBOL vmlinux 0xb1e3ef80 tcp_read_sock +EXPORT_SYMBOL vmlinux 0xb1e7441e jbd2_journal_start +EXPORT_SYMBOL vmlinux 0xb1ef2d50 cred_fscmp +EXPORT_SYMBOL vmlinux 0xb1f61104 migrate_vma_setup +EXPORT_SYMBOL vmlinux 0xb2041a9d dma_resv_copy_fences +EXPORT_SYMBOL vmlinux 0xb219d56c wbinvd_on_cpu +EXPORT_SYMBOL vmlinux 0xb221cf71 vme_bus_type +EXPORT_SYMBOL vmlinux 0xb22bf300 agp_generic_type_to_mask_type +EXPORT_SYMBOL vmlinux 0xb22e16d5 radix_tree_maybe_preload +EXPORT_SYMBOL vmlinux 0xb23027c1 kstrtos16_from_user +EXPORT_SYMBOL vmlinux 0xb2338d81 __x86_indirect_thunk_rsp +EXPORT_SYMBOL vmlinux 0xb2601486 __SCT__tp_func_dma_fence_enable_signal +EXPORT_SYMBOL vmlinux 0xb2675f27 skb_condense +EXPORT_SYMBOL vmlinux 0xb26cfd15 netif_device_detach +EXPORT_SYMBOL vmlinux 0xb281d4c6 genlmsg_multicast_allns +EXPORT_SYMBOL vmlinux 0xb28a537f simple_fill_super +EXPORT_SYMBOL vmlinux 0xb2a9cf10 neigh_proc_dointvec_ms_jiffies +EXPORT_SYMBOL vmlinux 0xb2abc39d set_nlink +EXPORT_SYMBOL vmlinux 0xb2add26f mark_buffer_dirty +EXPORT_SYMBOL vmlinux 0xb2b86914 release_sock +EXPORT_SYMBOL vmlinux 0xb2bcb088 acpi_current_gpe_count +EXPORT_SYMBOL vmlinux 0xb2cb36ba param_set_dyndbg_classes +EXPORT_SYMBOL vmlinux 0xb2e790f7 ipv6_mc_check_mld +EXPORT_SYMBOL vmlinux 0xb2f35c6a xxh64 +EXPORT_SYMBOL vmlinux 0xb2f74fb6 intel_gmch_remove +EXPORT_SYMBOL vmlinux 0xb2fcb56d queue_delayed_work_on +EXPORT_SYMBOL vmlinux 0xb2fd5ceb __put_user_4 +EXPORT_SYMBOL vmlinux 0xb2fd63fd eisa_bus_type +EXPORT_SYMBOL vmlinux 0xb306ec50 __sg_alloc_table +EXPORT_SYMBOL vmlinux 0xb308c97d wait_woken +EXPORT_SYMBOL vmlinux 0xb30b9822 vme_master_set +EXPORT_SYMBOL vmlinux 0xb313f987 sget_fc +EXPORT_SYMBOL vmlinux 0xb321e0f1 mdio_device_register +EXPORT_SYMBOL vmlinux 0xb32201be dquot_quota_on_mount +EXPORT_SYMBOL vmlinux 0xb3248714 is_nd_btt +EXPORT_SYMBOL vmlinux 0xb3258f79 __ubsan_handle_type_mismatch_v1 +EXPORT_SYMBOL vmlinux 0xb3278fc1 __skb_flow_get_ports +EXPORT_SYMBOL vmlinux 0xb32a5973 acpi_ut_status_exit +EXPORT_SYMBOL vmlinux 0xb331e6cd phy_read_paged +EXPORT_SYMBOL vmlinux 0xb34e3d7a dcbnl_cee_notify +EXPORT_SYMBOL vmlinux 0xb352e4fb __SCK__tp_func_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0xb35710fe dentry_open +EXPORT_SYMBOL vmlinux 0xb35e782f sk_ns_capable +EXPORT_SYMBOL vmlinux 0xb361af33 tcp_disconnect +EXPORT_SYMBOL vmlinux 0xb3687850 out_of_line_wait_on_bit_lock +EXPORT_SYMBOL vmlinux 0xb36d804c twl6040_get_vibralr_status +EXPORT_SYMBOL vmlinux 0xb37b38a6 path_has_submounts +EXPORT_SYMBOL vmlinux 0xb383df0b filemap_alloc_folio +EXPORT_SYMBOL vmlinux 0xb3863a67 acpi_set_gpe_wake_mask +EXPORT_SYMBOL vmlinux 0xb3867e6d mtree_insert +EXPORT_SYMBOL vmlinux 0xb3a2dfdf nmi_panic +EXPORT_SYMBOL vmlinux 0xb3b70e6c pci_enable_wake +EXPORT_SYMBOL vmlinux 0xb3c2140a inet_csk_delete_keepalive_timer +EXPORT_SYMBOL vmlinux 0xb3d2c76d scsi_hostbyte_string +EXPORT_SYMBOL vmlinux 0xb3eff514 mipi_dsi_dcs_get_pixel_format +EXPORT_SYMBOL vmlinux 0xb3f0de55 xz_dec_microlzma_run +EXPORT_SYMBOL vmlinux 0xb3f2296d __set_page_dirty_nobuffers +EXPORT_SYMBOL vmlinux 0xb3f49446 kstrtos8_from_user +EXPORT_SYMBOL vmlinux 0xb3f548ad kmemdup_nul +EXPORT_SYMBOL vmlinux 0xb3f7646e kthread_should_stop +EXPORT_SYMBOL vmlinux 0xb3f985a8 sg_alloc_table +EXPORT_SYMBOL vmlinux 0xb3ffa18c seq_write +EXPORT_SYMBOL vmlinux 0xb4043948 acpi_execute_simple_method +EXPORT_SYMBOL vmlinux 0xb414438b _dev_notice +EXPORT_SYMBOL vmlinux 0xb423dba1 console_blanked +EXPORT_SYMBOL vmlinux 0xb4270634 devm_request_threaded_irq +EXPORT_SYMBOL vmlinux 0xb432fb40 amd_iommu_domain_direct_map +EXPORT_SYMBOL vmlinux 0xb4349b0e inet6_bind +EXPORT_SYMBOL vmlinux 0xb439ba5d __dec_zone_page_state +EXPORT_SYMBOL vmlinux 0xb43d461f security_socket_socketpair +EXPORT_SYMBOL vmlinux 0xb43fcd14 pci_alloc_dev +EXPORT_SYMBOL vmlinux 0xb45429b8 ethtool_op_get_ts_info +EXPORT_SYMBOL vmlinux 0xb4577003 acpi_dev_present +EXPORT_SYMBOL vmlinux 0xb473b592 nf_log_trace +EXPORT_SYMBOL vmlinux 0xb47cca30 csum_ipv6_magic +EXPORT_SYMBOL vmlinux 0xb485c592 request_firmware_nowait +EXPORT_SYMBOL vmlinux 0xb4863f29 blk_finish_plug +EXPORT_SYMBOL vmlinux 0xb48d4d22 security_sb_eat_lsm_opts +EXPORT_SYMBOL vmlinux 0xb4951a28 jbd2_journal_wipe +EXPORT_SYMBOL vmlinux 0xb49601a1 sg_zero_buffer +EXPORT_SYMBOL vmlinux 0xb4a0b699 input_match_device_id +EXPORT_SYMBOL vmlinux 0xb4e3a3b1 kmem_cache_free +EXPORT_SYMBOL vmlinux 0xb4ef0467 fib6_info_hw_flags_set +EXPORT_SYMBOL vmlinux 0xb4fc70bc from_kuid +EXPORT_SYMBOL vmlinux 0xb5052e86 pcie_capability_clear_and_set_dword +EXPORT_SYMBOL vmlinux 0xb534fdc1 blk_rq_append_bio +EXPORT_SYMBOL vmlinux 0xb53d6b6a dm_mq_kick_requeue_list +EXPORT_SYMBOL vmlinux 0xb53f2810 tcp_sockets_allocated +EXPORT_SYMBOL vmlinux 0xb558b8ef mmc_put_card +EXPORT_SYMBOL vmlinux 0xb55bcfb1 pci_iounmap +EXPORT_SYMBOL vmlinux 0xb560ac7c generic_write_checks_count +EXPORT_SYMBOL vmlinux 0xb5617fbd udp_poll +EXPORT_SYMBOL vmlinux 0xb56dd09e input_grab_device +EXPORT_SYMBOL vmlinux 0xb5759012 pci_request_region +EXPORT_SYMBOL vmlinux 0xb5857448 md_write_start +EXPORT_SYMBOL vmlinux 0xb5a459dc unregister_blkdev +EXPORT_SYMBOL vmlinux 0xb5aa7165 dma_pool_destroy +EXPORT_SYMBOL vmlinux 0xb5ab892d uv_undefined +EXPORT_SYMBOL vmlinux 0xb5b63711 fileattr_fill_xflags +EXPORT_SYMBOL vmlinux 0xb5c66a17 ps2_interrupt +EXPORT_SYMBOL vmlinux 0xb5e73116 flush_delayed_work +EXPORT_SYMBOL vmlinux 0xb5f866e1 security_inode_init_security +EXPORT_SYMBOL vmlinux 0xb5faa4f0 dst_alloc +EXPORT_SYMBOL vmlinux 0xb611a00c xfrm_state_free +EXPORT_SYMBOL vmlinux 0xb6156a44 blk_mq_stop_hw_queue +EXPORT_SYMBOL vmlinux 0xb617a141 ndisc_mc_map +EXPORT_SYMBOL vmlinux 0xb618e9d4 __skb_recv_udp +EXPORT_SYMBOL vmlinux 0xb61d6fc2 down_read_interruptible +EXPORT_SYMBOL vmlinux 0xb6296500 km_policy_notify +EXPORT_SYMBOL vmlinux 0xb62fe6bd sock_bindtoindex +EXPORT_SYMBOL vmlinux 0xb633db04 __phy_resume +EXPORT_SYMBOL vmlinux 0xb633f115 irq_poll_enable +EXPORT_SYMBOL vmlinux 0xb6377ade vlan_filter_push_vids +EXPORT_SYMBOL vmlinux 0xb63e224c kthread_destroy_worker +EXPORT_SYMBOL vmlinux 0xb641b86a security_inode_notifysecctx +EXPORT_SYMBOL vmlinux 0xb654ef65 acpi_os_read_port +EXPORT_SYMBOL vmlinux 0xb654ef9d vfs_parse_fs_param_source +EXPORT_SYMBOL vmlinux 0xb66ae3e4 genphy_read_master_slave +EXPORT_SYMBOL vmlinux 0xb66c8ed5 mmc_gpio_set_cd_irq +EXPORT_SYMBOL vmlinux 0xb66e96d8 netlbl_audit_start +EXPORT_SYMBOL vmlinux 0xb674a534 acpi_unmap_cpu +EXPORT_SYMBOL vmlinux 0xb678366f int_sqrt +EXPORT_SYMBOL vmlinux 0xb67ce2df security_path_unlink +EXPORT_SYMBOL vmlinux 0xb67fec0e uuid_parse +EXPORT_SYMBOL vmlinux 0xb6936ffe _bcd2bin +EXPORT_SYMBOL vmlinux 0xb69db7e2 kernel_listen +EXPORT_SYMBOL vmlinux 0xb6acaa13 phy_sfp_detach +EXPORT_SYMBOL vmlinux 0xb6aff735 generic_block_bmap +EXPORT_SYMBOL vmlinux 0xb6c11446 i2c_smbus_read_byte_data +EXPORT_SYMBOL vmlinux 0xb6cb556a _find_first_and_bit +EXPORT_SYMBOL vmlinux 0xb6cf350c security_unix_stream_connect +EXPORT_SYMBOL vmlinux 0xb6d1b484 ps2_sendbyte +EXPORT_SYMBOL vmlinux 0xb6d8e29c ip6_dst_check +EXPORT_SYMBOL vmlinux 0xb6da6f4a __skb_free_datagram_locked +EXPORT_SYMBOL vmlinux 0xb6dc4ef4 pcie_get_speed_cap +EXPORT_SYMBOL vmlinux 0xb6e36ce2 psched_ratecfg_precompute +EXPORT_SYMBOL vmlinux 0xb6fde909 close_fd +EXPORT_SYMBOL vmlinux 0xb702955c console_force_preferred_locked +EXPORT_SYMBOL vmlinux 0xb709063d locks_remove_posix +EXPORT_SYMBOL vmlinux 0xb71589f0 skip_spaces +EXPORT_SYMBOL vmlinux 0xb71ed69f __hw_addr_unsync +EXPORT_SYMBOL vmlinux 0xb737b185 gen_pool_best_fit +EXPORT_SYMBOL vmlinux 0xb73aed7d truncate_setsize +EXPORT_SYMBOL vmlinux 0xb741fe41 phy_device_free +EXPORT_SYMBOL vmlinux 0xb7593ddc iosf_mbi_unregister_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xb7676d2d sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xb7747789 cdev_add +EXPORT_SYMBOL vmlinux 0xb78debe3 LZ4_decompress_fast_usingDict +EXPORT_SYMBOL vmlinux 0xb78e1400 bh_uptodate_or_lock +EXPORT_SYMBOL vmlinux 0xb79bab98 devm_rproc_alloc +EXPORT_SYMBOL vmlinux 0xb79c312b skb_queue_tail +EXPORT_SYMBOL vmlinux 0xb79efc5e devm_input_allocate_device +EXPORT_SYMBOL vmlinux 0xb7ae8688 dev_alloc_name +EXPORT_SYMBOL vmlinux 0xb7b0cca7 cros_ec_prepare_tx +EXPORT_SYMBOL vmlinux 0xb7c0f443 sort +EXPORT_SYMBOL vmlinux 0xb7c6db70 sysctl_max_skb_frags +EXPORT_SYMBOL vmlinux 0xb7c840e4 load_nls_default +EXPORT_SYMBOL vmlinux 0xb7d145e3 jbd2_journal_restart +EXPORT_SYMBOL vmlinux 0xb80b3a63 noop_qdisc +EXPORT_SYMBOL vmlinux 0xb80b4a18 zstd_compress_bound +EXPORT_SYMBOL vmlinux 0xb80c4d75 cfb_imageblit +EXPORT_SYMBOL vmlinux 0xb8144419 nf_log_set +EXPORT_SYMBOL vmlinux 0xb8244e60 blk_mq_start_request +EXPORT_SYMBOL vmlinux 0xb8372c31 dev_pick_tx_cpu_id +EXPORT_SYMBOL vmlinux 0xb85253fc kthread_associate_blkcg +EXPORT_SYMBOL vmlinux 0xb862f7ea __x86_indirect_jump_thunk_rbx +EXPORT_SYMBOL vmlinux 0xb868ac5c register_sysrq_key +EXPORT_SYMBOL vmlinux 0xb86f74c5 free_cpumask_var +EXPORT_SYMBOL vmlinux 0xb89b6e6b guid_parse +EXPORT_SYMBOL vmlinux 0xb89c3b6b param_ops_ulong +EXPORT_SYMBOL vmlinux 0xb8aa76c8 folio_wait_private_2 +EXPORT_SYMBOL vmlinux 0xb8b043f2 kfree_link +EXPORT_SYMBOL vmlinux 0xb8b0985a amd_iommu_flush_tlb +EXPORT_SYMBOL vmlinux 0xb8c58228 __netif_napi_del +EXPORT_SYMBOL vmlinux 0xb8e7ce2c __put_user_8 +EXPORT_SYMBOL vmlinux 0xb903c829 gnet_stats_copy_app +EXPORT_SYMBOL vmlinux 0xb907513f unpoison_memory +EXPORT_SYMBOL vmlinux 0xb90d2b01 d_obtain_root +EXPORT_SYMBOL vmlinux 0xb911bb58 minmax_running_max +EXPORT_SYMBOL vmlinux 0xb920db49 acpi_tb_install_and_load_table +EXPORT_SYMBOL vmlinux 0xb9213edd folio_add_lru +EXPORT_SYMBOL vmlinux 0xb93abd3e free_task +EXPORT_SYMBOL vmlinux 0xb94339c4 qdisc_put_stab +EXPORT_SYMBOL vmlinux 0xb946cf08 make_kprojid +EXPORT_SYMBOL vmlinux 0xb9478d90 hdmi_drm_infoframe_unpack_only +EXPORT_SYMBOL vmlinux 0xb952a43d make_kuid +EXPORT_SYMBOL vmlinux 0xb9575109 eth_header_cache +EXPORT_SYMBOL vmlinux 0xb95cd75a scsi_device_quiesce +EXPORT_SYMBOL vmlinux 0xb95d7679 phy_ethtool_get_link_ksettings +EXPORT_SYMBOL vmlinux 0xb9606386 genphy_config_eee_advert +EXPORT_SYMBOL vmlinux 0xb96c4f9e audit_log_subject_context +EXPORT_SYMBOL vmlinux 0xb97220ff bitmap_parse +EXPORT_SYMBOL vmlinux 0xb97f7045 acpi_install_gpe_handler +EXPORT_SYMBOL vmlinux 0xb9825984 __klp_sched_try_switch +EXPORT_SYMBOL vmlinux 0xb98e8afd mmc_cqe_post_req +EXPORT_SYMBOL vmlinux 0xb9929f35 trace_event_printf +EXPORT_SYMBOL vmlinux 0xb9a09367 inet_twsk_deschedule_put +EXPORT_SYMBOL vmlinux 0xb9a09ddd __x86_indirect_jump_thunk_rcx +EXPORT_SYMBOL vmlinux 0xb9aeffdb ip6_dst_alloc +EXPORT_SYMBOL vmlinux 0xb9af1d0d __xa_clear_mark +EXPORT_SYMBOL vmlinux 0xb9cfd84f vga_switcheroo_client_fb_set +EXPORT_SYMBOL vmlinux 0xb9db8ce2 tcp_sock_set_keepcnt +EXPORT_SYMBOL vmlinux 0xb9e276cf wrmsr_safe_regs_on_cpu +EXPORT_SYMBOL vmlinux 0xb9e7429c memcpy_toio +EXPORT_SYMBOL vmlinux 0xb9e8e2cc in6addr_sitelocal_allrouters +EXPORT_SYMBOL vmlinux 0xba00daa2 dma_fence_allocate_private_stub +EXPORT_SYMBOL vmlinux 0xba01ac9e mr_table_alloc +EXPORT_SYMBOL vmlinux 0xba0cd560 gpiochip_irq_reqres +EXPORT_SYMBOL vmlinux 0xba0f24d6 sock_set_reuseaddr +EXPORT_SYMBOL vmlinux 0xba1008c8 __crc32c_le +EXPORT_SYMBOL vmlinux 0xba11a3cd gnet_stats_start_copy_compat +EXPORT_SYMBOL vmlinux 0xba2449b3 __x86_indirect_jump_thunk_rax +EXPORT_SYMBOL vmlinux 0xba2ff2da tso_start +EXPORT_SYMBOL vmlinux 0xba43fadb convert_art_to_tsc +EXPORT_SYMBOL vmlinux 0xba497f13 loops_per_jiffy +EXPORT_SYMBOL vmlinux 0xba6f290c truncate_pagecache +EXPORT_SYMBOL vmlinux 0xba77b168 __cgroup_bpf_run_filter_sock_addr +EXPORT_SYMBOL vmlinux 0xba791372 dev_vprintk_emit +EXPORT_SYMBOL vmlinux 0xba8595be netpoll_parse_options +EXPORT_SYMBOL vmlinux 0xba8fbd64 _raw_spin_lock +EXPORT_SYMBOL vmlinux 0xbabf1b5d mdio_device_create +EXPORT_SYMBOL vmlinux 0xbac02ed9 dump_emit +EXPORT_SYMBOL vmlinux 0xbac8aeea sg_nents_for_len +EXPORT_SYMBOL vmlinux 0xbacbded2 iov_iter_get_pages2 +EXPORT_SYMBOL vmlinux 0xbaf50292 fs_param_is_fd +EXPORT_SYMBOL vmlinux 0xbaf950c3 serio_unregister_port +EXPORT_SYMBOL vmlinux 0xbaf9d45c fixed_size_llseek +EXPORT_SYMBOL vmlinux 0xbafa632e __do_once_sleepable_start +EXPORT_SYMBOL vmlinux 0xbb0195b3 grab_cache_page_write_begin +EXPORT_SYMBOL vmlinux 0xbb03e0c5 sock_common_getsockopt +EXPORT_SYMBOL vmlinux 0xbb049dd6 nlmsg_notify +EXPORT_SYMBOL vmlinux 0xbb0540aa zlib_inflateReset +EXPORT_SYMBOL vmlinux 0xbb08e59b tcp_timewait_state_process +EXPORT_SYMBOL vmlinux 0xbb0a7d2f amd_iommu_domain_clear_gcr3 +EXPORT_SYMBOL vmlinux 0xbb13595e smp_call_function_many +EXPORT_SYMBOL vmlinux 0xbb17d813 may_umount_tree +EXPORT_SYMBOL vmlinux 0xbb1bac24 acpi_unregister_debugger +EXPORT_SYMBOL vmlinux 0xbb24f607 init_cdrom_command +EXPORT_SYMBOL vmlinux 0xbb43f75e cdrom_get_media_event +EXPORT_SYMBOL vmlinux 0xbb4772ba inet_csk_init_xmit_timers +EXPORT_SYMBOL vmlinux 0xbb4f4766 simple_write_to_buffer +EXPORT_SYMBOL vmlinux 0xbb53f1de genphy_read_abilities +EXPORT_SYMBOL vmlinux 0xbb704cab devfreq_register_opp_notifier +EXPORT_SYMBOL vmlinux 0xbb8e169a vga_switcheroo_handler_flags +EXPORT_SYMBOL vmlinux 0xbb9ed3bf mutex_trylock +EXPORT_SYMBOL vmlinux 0xbbb22dae vlan_filter_drop_vids +EXPORT_SYMBOL vmlinux 0xbbb28e1b devm_get_clk_from_child +EXPORT_SYMBOL vmlinux 0xbbd969ed __splice_from_pipe +EXPORT_SYMBOL vmlinux 0xbbda18c4 dma_fence_free +EXPORT_SYMBOL vmlinux 0xbbdafb55 kern_path_create +EXPORT_SYMBOL vmlinux 0xbc2031de acpi_processor_get_bios_limit +EXPORT_SYMBOL vmlinux 0xbc40ec3c devm_nvmem_cell_put +EXPORT_SYMBOL vmlinux 0xbc5c2895 pcie_bandwidth_available +EXPORT_SYMBOL vmlinux 0xbc6d8684 kobject_get +EXPORT_SYMBOL vmlinux 0xbc8d9a9e dma_fence_array_create +EXPORT_SYMBOL vmlinux 0xbc9c40cd agp_generic_insert_memory +EXPORT_SYMBOL vmlinux 0xbcab6ee6 sscanf +EXPORT_SYMBOL vmlinux 0xbcae0b04 mini_qdisc_pair_init +EXPORT_SYMBOL vmlinux 0xbcb36fe4 hugetlb_optimize_vmemmap_key +EXPORT_SYMBOL vmlinux 0xbcef8b58 __x86_indirect_jump_thunk_rdx +EXPORT_SYMBOL vmlinux 0xbcf3ca47 init_task +EXPORT_SYMBOL vmlinux 0xbd00375c mmc_remove_host +EXPORT_SYMBOL vmlinux 0xbd163da1 __folio_alloc +EXPORT_SYMBOL vmlinux 0xbd25d1f0 agp_generic_destroy_page +EXPORT_SYMBOL vmlinux 0xbd2661d4 mdiobus_c45_write_nested +EXPORT_SYMBOL vmlinux 0xbd35431a clk_bulk_get_all +EXPORT_SYMBOL vmlinux 0xbd393ca3 ioread64be_lo_hi +EXPORT_SYMBOL vmlinux 0xbd3bfd9e dst_release_immediate +EXPORT_SYMBOL vmlinux 0xbd3e1a41 padata_do_parallel +EXPORT_SYMBOL vmlinux 0xbd44889a simple_transaction_read +EXPORT_SYMBOL vmlinux 0xbd462b55 __kfifo_init +EXPORT_SYMBOL vmlinux 0xbd4b199a vfs_link +EXPORT_SYMBOL vmlinux 0xbd4b3101 blk_mq_destroy_queue +EXPORT_SYMBOL vmlinux 0xbd5c67a1 elv_rb_former_request +EXPORT_SYMBOL vmlinux 0xbd6841d4 crc16 +EXPORT_SYMBOL vmlinux 0xbd68ab76 simple_transaction_get +EXPORT_SYMBOL vmlinux 0xbda1905d dev_set_threaded +EXPORT_SYMBOL vmlinux 0xbdb6cbee configfs_unregister_subsystem +EXPORT_SYMBOL vmlinux 0xbdc23e7e sock_common_recvmsg +EXPORT_SYMBOL vmlinux 0xbddb8e6e tcp_sock_set_user_timeout +EXPORT_SYMBOL vmlinux 0xbdec201b xfrm_trans_queue +EXPORT_SYMBOL vmlinux 0xbdfa8e14 configfs_depend_item_unlocked +EXPORT_SYMBOL vmlinux 0xbdfb6dbb __fentry__ +EXPORT_SYMBOL vmlinux 0xbe0110e7 acpi_set_gpe +EXPORT_SYMBOL vmlinux 0xbe05fe79 touch_atime +EXPORT_SYMBOL vmlinux 0xbe0bf683 nvdimm_namespace_capacity +EXPORT_SYMBOL vmlinux 0xbe144437 nla_reserve_nohdr +EXPORT_SYMBOL vmlinux 0xbe2fb3b6 filemap_flush +EXPORT_SYMBOL vmlinux 0xbe31e90c jbd2_journal_inode_ranged_write +EXPORT_SYMBOL vmlinux 0xbe49252c acpi_os_write_port +EXPORT_SYMBOL vmlinux 0xbe4c1bac __mdiobus_c45_write +EXPORT_SYMBOL vmlinux 0xbe4eb6ed secure_dccpv6_sequence_number +EXPORT_SYMBOL vmlinux 0xbe5a24e9 xxh32_copy_state +EXPORT_SYMBOL vmlinux 0xbe5ba994 security_socket_getpeersec_dgram +EXPORT_SYMBOL vmlinux 0xbe663006 netlbl_calipso_ops_register +EXPORT_SYMBOL vmlinux 0xbe6a866f __wait_on_bit +EXPORT_SYMBOL vmlinux 0xbe6a8c96 zstd_cctx_workspace_bound +EXPORT_SYMBOL vmlinux 0xbe70ec0c generic_remap_file_range_prep +EXPORT_SYMBOL vmlinux 0xbe7910ee __skb_wait_for_more_packets +EXPORT_SYMBOL vmlinux 0xbe7920cf nf_unregister_net_hooks +EXPORT_SYMBOL vmlinux 0xbe89eebb skb_realloc_headroom +EXPORT_SYMBOL vmlinux 0xbe93bdb8 sk_filter_trim_cap +EXPORT_SYMBOL vmlinux 0xbea0c81b flow_block_cb_free +EXPORT_SYMBOL vmlinux 0xbead7fdc __nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xbeb8c816 pcie_set_readrq +EXPORT_SYMBOL vmlinux 0xbecf3734 xfrm6_protocol_deregister +EXPORT_SYMBOL vmlinux 0xbed005d3 get_tree_keyed +EXPORT_SYMBOL vmlinux 0xbee34c3e __i2c_transfer +EXPORT_SYMBOL vmlinux 0xbee44036 xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xbeedbbe2 vme_unregister_driver +EXPORT_SYMBOL vmlinux 0xbef43296 console_conditional_schedule +EXPORT_SYMBOL vmlinux 0xbefa51a3 gen_pool_add_owner +EXPORT_SYMBOL vmlinux 0xbf21e8cd jbd2_journal_check_used_features +EXPORT_SYMBOL vmlinux 0xbf3193ec acpi_unregister_ioapic +EXPORT_SYMBOL vmlinux 0xbf365add lease_modify +EXPORT_SYMBOL vmlinux 0xbf45078d cdev_device_add +EXPORT_SYMBOL vmlinux 0xbf49a4f9 iter_file_splice_write +EXPORT_SYMBOL vmlinux 0xbf4a0487 forget_all_cached_acls +EXPORT_SYMBOL vmlinux 0xbf59c419 posix_acl_init +EXPORT_SYMBOL vmlinux 0xbf76180c mmc_retune_release +EXPORT_SYMBOL vmlinux 0xbf7b287f scsi_host_get +EXPORT_SYMBOL vmlinux 0xbfae9e07 utf8_validate +EXPORT_SYMBOL vmlinux 0xbfb4415d devfreq_update_interval +EXPORT_SYMBOL vmlinux 0xbfb47d94 __bh_read +EXPORT_SYMBOL vmlinux 0xbfc177bc iowrite32_rep +EXPORT_SYMBOL vmlinux 0xbfcee021 generic_fill_statx_attr +EXPORT_SYMBOL vmlinux 0xbff0b0b6 mdio_find_bus +EXPORT_SYMBOL vmlinux 0xbffbdf85 unregister_quota_format +EXPORT_SYMBOL vmlinux 0xc00052ae input_set_min_poll_interval +EXPORT_SYMBOL vmlinux 0xc0364007 fault_in_writeable +EXPORT_SYMBOL vmlinux 0xc03b8ca2 generic_pipe_buf_get +EXPORT_SYMBOL vmlinux 0xc04af624 kern_unmount +EXPORT_SYMBOL vmlinux 0xc053ca77 generic_permission +EXPORT_SYMBOL vmlinux 0xc05ec5cb eth_platform_get_mac_address +EXPORT_SYMBOL vmlinux 0xc060c3f4 page_pool_ethtool_stats_get +EXPORT_SYMBOL vmlinux 0xc0763484 rfkill_blocked +EXPORT_SYMBOL vmlinux 0xc078d22c zstd_init_cstream +EXPORT_SYMBOL vmlinux 0xc07b0863 fb_destroy_modedb +EXPORT_SYMBOL vmlinux 0xc08c9b50 pskb_trim_rcsum_slow +EXPORT_SYMBOL vmlinux 0xc08e76b9 xfrm4_udp_encap_rcv +EXPORT_SYMBOL vmlinux 0xc09a715f pci_fixup_cardbus +EXPORT_SYMBOL vmlinux 0xc0c9e5f6 inet_rtx_syn_ack +EXPORT_SYMBOL vmlinux 0xc0d7d8ec mipi_dsi_dcs_set_display_brightness_large +EXPORT_SYMBOL vmlinux 0xc0e90a4f ip_options_rcv_srr +EXPORT_SYMBOL vmlinux 0xc0ea47b6 kernel_recvmsg +EXPORT_SYMBOL vmlinux 0xc0fc2f9a noop_llseek +EXPORT_SYMBOL vmlinux 0xc0fe9137 __printk_cpu_sync_put +EXPORT_SYMBOL vmlinux 0xc0ff12fb nla_strdup +EXPORT_SYMBOL vmlinux 0xc0ff21c1 input_get_new_minor +EXPORT_SYMBOL vmlinux 0xc10e18ca pci_set_power_state +EXPORT_SYMBOL vmlinux 0xc116dcb9 fwnode_phy_find_device +EXPORT_SYMBOL vmlinux 0xc1198662 __warn_flushing_systemwide_wq +EXPORT_SYMBOL vmlinux 0xc1365323 acpi_enable_all_wakeup_gpes +EXPORT_SYMBOL vmlinux 0xc14dc168 acpi_get_data +EXPORT_SYMBOL vmlinux 0xc1514a3b free_irq +EXPORT_SYMBOL vmlinux 0xc166b007 neigh_direct_output +EXPORT_SYMBOL vmlinux 0xc1685cf6 jbd2_journal_init_jbd_inode +EXPORT_SYMBOL vmlinux 0xc16be39d iter_div_u64_rem +EXPORT_SYMBOL vmlinux 0xc1725b1e close_fd_get_file +EXPORT_SYMBOL vmlinux 0xc1756ae1 backlight_device_register +EXPORT_SYMBOL vmlinux 0xc17c9834 iov_iter_advance +EXPORT_SYMBOL vmlinux 0xc19dfbe9 key_task_permission +EXPORT_SYMBOL vmlinux 0xc1a7d0c9 unpin_user_page +EXPORT_SYMBOL vmlinux 0xc1ae7a20 udp_lib_getsockopt +EXPORT_SYMBOL vmlinux 0xc1af0d5c __scsi_iterate_devices +EXPORT_SYMBOL vmlinux 0xc1b8955a super_setup_bdi_name +EXPORT_SYMBOL vmlinux 0xc1cb419c __traceiter_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xc1ccf248 thaw_super +EXPORT_SYMBOL vmlinux 0xc1d8cfaf __fdget +EXPORT_SYMBOL vmlinux 0xc1ddd074 input_flush_device +EXPORT_SYMBOL vmlinux 0xc1dff02e zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xc1e156a0 lookup_one_len +EXPORT_SYMBOL vmlinux 0xc1f54b3f __xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc1ff7ac8 pnp_device_detach +EXPORT_SYMBOL vmlinux 0xc20040f1 jbd2_journal_begin_ordered_truncate +EXPORT_SYMBOL vmlinux 0xc201262e tcf_qevent_handle +EXPORT_SYMBOL vmlinux 0xc22f6693 call_fib_notifier +EXPORT_SYMBOL vmlinux 0xc234eb66 amd_iommu_device_info +EXPORT_SYMBOL vmlinux 0xc23d632c inet_proto_csum_replace4 +EXPORT_SYMBOL vmlinux 0xc2424641 agp3_generic_cleanup +EXPORT_SYMBOL vmlinux 0xc24e6fc9 tcp_enter_cwr +EXPORT_SYMBOL vmlinux 0xc2579dc0 blk_mq_delay_run_hw_queue +EXPORT_SYMBOL vmlinux 0xc264b21a get_user_pages +EXPORT_SYMBOL vmlinux 0xc26689a5 mipi_dsi_dcs_get_display_brightness_large +EXPORT_SYMBOL vmlinux 0xc272e8e9 xfrm_state_register_afinfo +EXPORT_SYMBOL vmlinux 0xc278c965 cpu_all_bits +EXPORT_SYMBOL vmlinux 0xc2799364 mdiobus_free +EXPORT_SYMBOL vmlinux 0xc284f671 vfs_dedupe_file_range +EXPORT_SYMBOL vmlinux 0xc29bf967 strspn +EXPORT_SYMBOL vmlinux 0xc2a25067 pci_free_irq +EXPORT_SYMBOL vmlinux 0xc2a56a2a inet_proto_csum_replace16 +EXPORT_SYMBOL vmlinux 0xc2ae3b41 tty_register_ldisc +EXPORT_SYMBOL vmlinux 0xc2b8d503 mipi_dsi_dcs_set_tear_on +EXPORT_SYMBOL vmlinux 0xc2cb862e sgl_alloc_order +EXPORT_SYMBOL vmlinux 0xc2d1e9ae __lock_sock_fast +EXPORT_SYMBOL vmlinux 0xc2e587d1 reset_devices +EXPORT_SYMBOL vmlinux 0xc2ea4a88 __alloc_pages +EXPORT_SYMBOL vmlinux 0xc2fc363f udp_seq_ops +EXPORT_SYMBOL vmlinux 0xc2fe4c1c simple_write_begin +EXPORT_SYMBOL vmlinux 0xc3055d20 usleep_range_state +EXPORT_SYMBOL vmlinux 0xc306b210 con_set_default_unimap +EXPORT_SYMBOL vmlinux 0xc310b981 strnstr +EXPORT_SYMBOL vmlinux 0xc31db0ce is_vmalloc_addr +EXPORT_SYMBOL vmlinux 0xc3204b6f __mmap_lock_do_trace_start_locking +EXPORT_SYMBOL vmlinux 0xc32285bd xfrm_policy_destroy +EXPORT_SYMBOL vmlinux 0xc327ffe1 dev_trans_start +EXPORT_SYMBOL vmlinux 0xc32c67ce file_ns_capable +EXPORT_SYMBOL vmlinux 0xc32c71af register_inetaddr_validator_notifier +EXPORT_SYMBOL vmlinux 0xc32e58ee ip6_mtu +EXPORT_SYMBOL vmlinux 0xc347b7eb dquot_alloc_inode +EXPORT_SYMBOL vmlinux 0xc355e637 inet_frag_queue_insert +EXPORT_SYMBOL vmlinux 0xc359fb65 abort +EXPORT_SYMBOL vmlinux 0xc35d3fbb fiemap_prep +EXPORT_SYMBOL vmlinux 0xc3762aec mempool_alloc +EXPORT_SYMBOL vmlinux 0xc37f9c6e cpufreq_update_policy +EXPORT_SYMBOL vmlinux 0xc38c83b8 mod_timer +EXPORT_SYMBOL vmlinux 0xc3a12ea5 iov_iter_revert +EXPORT_SYMBOL vmlinux 0xc3a5d7b9 input_get_timestamp +EXPORT_SYMBOL vmlinux 0xc3a6b9b4 netlink_unicast +EXPORT_SYMBOL vmlinux 0xc3aaf0a9 __put_user_1 +EXPORT_SYMBOL vmlinux 0xc3bc72ad trace_print_array_seq +EXPORT_SYMBOL vmlinux 0xc3e91ce2 kthread_create_worker_on_cpu +EXPORT_SYMBOL vmlinux 0xc3f78aaf netdev_master_upper_dev_link +EXPORT_SYMBOL vmlinux 0xc3fa3105 d_exact_alias +EXPORT_SYMBOL vmlinux 0xc3ff38c2 down_read_trylock +EXPORT_SYMBOL vmlinux 0xc3ff62cf devm_ioremap_wc +EXPORT_SYMBOL vmlinux 0xc40e7bb6 simple_unlink +EXPORT_SYMBOL vmlinux 0xc4212ab9 qdisc_class_hash_insert +EXPORT_SYMBOL vmlinux 0xc42a08b0 dma_set_coherent_mask +EXPORT_SYMBOL vmlinux 0xc42dcb99 acpi_evaluate_ost +EXPORT_SYMBOL vmlinux 0xc438ec37 balance_dirty_pages_ratelimited +EXPORT_SYMBOL vmlinux 0xc452212c utf8_strncasecmp +EXPORT_SYMBOL vmlinux 0xc4777aa9 __ctzsi2 +EXPORT_SYMBOL vmlinux 0xc47b76aa bio_reset +EXPORT_SYMBOL vmlinux 0xc47dadc5 xfrm_state_lookup_byaddr +EXPORT_SYMBOL vmlinux 0xc4a210d6 pnp_get_resource +EXPORT_SYMBOL vmlinux 0xc4ab1786 nf_log_register +EXPORT_SYMBOL vmlinux 0xc4ae915e arch_touch_nmi_watchdog +EXPORT_SYMBOL vmlinux 0xc4c7548d phy_driver_unregister +EXPORT_SYMBOL vmlinux 0xc4e5cae3 xen_free_ballooned_pages +EXPORT_SYMBOL vmlinux 0xc4e7fee8 kmem_cache_shrink +EXPORT_SYMBOL vmlinux 0xc4f8666c ipv6_getsockopt +EXPORT_SYMBOL vmlinux 0xc510bcb3 rproc_put +EXPORT_SYMBOL vmlinux 0xc515f1cd __x86_indirect_jump_thunk_r13 +EXPORT_SYMBOL vmlinux 0xc51cbbcc kernel_accept +EXPORT_SYMBOL vmlinux 0xc528a49a queued_write_lock_slowpath +EXPORT_SYMBOL vmlinux 0xc538c0ff napi_gro_flush +EXPORT_SYMBOL vmlinux 0xc54fd6cc block_write_end +EXPORT_SYMBOL vmlinux 0xc558530d profile_pc +EXPORT_SYMBOL vmlinux 0xc56c3609 xz_dec_microlzma_reset +EXPORT_SYMBOL vmlinux 0xc57c48a3 idr_get_next +EXPORT_SYMBOL vmlinux 0xc58367d1 i2c_clients_command +EXPORT_SYMBOL vmlinux 0xc5863b90 unregister_netdevice_queue +EXPORT_SYMBOL vmlinux 0xc58d5a90 kstrtoll_from_user +EXPORT_SYMBOL vmlinux 0xc58d8017 __ip_dev_find +EXPORT_SYMBOL vmlinux 0xc5940958 agp_generic_alloc_page +EXPORT_SYMBOL vmlinux 0xc599a772 security_xfrm_state_delete +EXPORT_SYMBOL vmlinux 0xc5b6f236 queue_work_on +EXPORT_SYMBOL vmlinux 0xc5c5f1a6 file_write_and_wait_range +EXPORT_SYMBOL vmlinux 0xc5ca9ab7 eth_validate_addr +EXPORT_SYMBOL vmlinux 0xc5d9c46c agp_try_unsupported_boot +EXPORT_SYMBOL vmlinux 0xc5e74216 release_resource +EXPORT_SYMBOL vmlinux 0xc5eeb54c phy_device_register +EXPORT_SYMBOL vmlinux 0xc60d0620 __num_online_cpus +EXPORT_SYMBOL vmlinux 0xc6126264 dma_alloc_attrs +EXPORT_SYMBOL vmlinux 0xc616c142 get_user_pages_remote +EXPORT_SYMBOL vmlinux 0xc61ca65e iowrite64be_hi_lo +EXPORT_SYMBOL vmlinux 0xc622556f prepare_to_wait_exclusive +EXPORT_SYMBOL vmlinux 0xc631580a console_unlock +EXPORT_SYMBOL vmlinux 0xc633d82d phy_unregister_fixup +EXPORT_SYMBOL vmlinux 0xc65e4e97 secure_dccp_sequence_number +EXPORT_SYMBOL vmlinux 0xc666a132 crc_t10dif +EXPORT_SYMBOL vmlinux 0xc66fefd1 flow_rule_match_meta +EXPORT_SYMBOL vmlinux 0xc68ccaac find_inode_nowait +EXPORT_SYMBOL vmlinux 0xc6910aa0 do_trace_rdpmc +EXPORT_SYMBOL vmlinux 0xc6b90218 current_time +EXPORT_SYMBOL vmlinux 0xc6cb465a __kfifo_max_r +EXPORT_SYMBOL vmlinux 0xc6cbbc89 capable +EXPORT_SYMBOL vmlinux 0xc6d09aa9 release_firmware +EXPORT_SYMBOL vmlinux 0xc6edd83d bdi_alloc +EXPORT_SYMBOL vmlinux 0xc6f3b3fc refcount_dec_if_one +EXPORT_SYMBOL vmlinux 0xc6f46339 init_timer_key +EXPORT_SYMBOL vmlinux 0xc6f58585 blk_mq_run_hw_queues +EXPORT_SYMBOL vmlinux 0xc703375d pid_task +EXPORT_SYMBOL vmlinux 0xc7047507 dquot_quota_on +EXPORT_SYMBOL vmlinux 0xc708f1fe ec_write +EXPORT_SYMBOL vmlinux 0xc71089cc tty_port_close_start +EXPORT_SYMBOL vmlinux 0xc71a9d07 put_cmsg_scm_timestamping64 +EXPORT_SYMBOL vmlinux 0xc71b4f27 scsi_is_target_device +EXPORT_SYMBOL vmlinux 0xc7208c3a serial8250_resume_port +EXPORT_SYMBOL vmlinux 0xc74c23e0 tty_port_close_end +EXPORT_SYMBOL vmlinux 0xc74facf6 fwnode_iomap +EXPORT_SYMBOL vmlinux 0xc75691b4 fwnode_graph_parse_endpoint +EXPORT_SYMBOL vmlinux 0xc75d036a mipi_dsi_dcs_set_page_address +EXPORT_SYMBOL vmlinux 0xc761531a unregister_nls +EXPORT_SYMBOL vmlinux 0xc765a921 inet_rcv_saddr_equal +EXPORT_SYMBOL vmlinux 0xc76fb806 fb_set_suspend +EXPORT_SYMBOL vmlinux 0xc77dbf44 consume_skb +EXPORT_SYMBOL vmlinux 0xc781bd9f rfkill_resume_polling +EXPORT_SYMBOL vmlinux 0xc7856a3d inet6addr_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xc7975de0 trace_seq_acquire +EXPORT_SYMBOL vmlinux 0xc7a4fbed rtnl_lock +EXPORT_SYMBOL vmlinux 0xc7ae1903 security_lock_kernel_down +EXPORT_SYMBOL vmlinux 0xc7bd2ce4 phy_init_eee +EXPORT_SYMBOL vmlinux 0xc7c1107a LZ4_decompress_safe +EXPORT_SYMBOL vmlinux 0xc7c7ea76 tty_driver_flush_buffer +EXPORT_SYMBOL vmlinux 0xc7cb4e2e cdrom_number_of_slots +EXPORT_SYMBOL vmlinux 0xc7e3a8f9 dev_mc_add +EXPORT_SYMBOL vmlinux 0xc7e77f22 jbd2_fc_wait_bufs +EXPORT_SYMBOL vmlinux 0xc7ea726f set_user_nice +EXPORT_SYMBOL vmlinux 0xc7eeb0c0 inet6_getname +EXPORT_SYMBOL vmlinux 0xc7fc5260 n_tty_ioctl_helper +EXPORT_SYMBOL vmlinux 0xc7fdb5be pci_get_slot +EXPORT_SYMBOL vmlinux 0xc80ab559 swake_up_one +EXPORT_SYMBOL vmlinux 0xc839afed hdmi_audio_infoframe_check +EXPORT_SYMBOL vmlinux 0xc84206a7 ip6_xmit +EXPORT_SYMBOL vmlinux 0xc84a0a7e seq_hlist_start_rcu +EXPORT_SYMBOL vmlinux 0xc856ae2e dns_query +EXPORT_SYMBOL vmlinux 0xc856c7ec dquot_quota_off +EXPORT_SYMBOL vmlinux 0xc872fd85 in6addr_interfacelocal_allnodes +EXPORT_SYMBOL vmlinux 0xc877bcfe unregister_shrinker +EXPORT_SYMBOL vmlinux 0xc87d60be ip_sock_set_tos +EXPORT_SYMBOL vmlinux 0xc8827b75 sysctl_vals +EXPORT_SYMBOL vmlinux 0xc890c008 zlib_deflateEnd +EXPORT_SYMBOL vmlinux 0xc893bf3f devm_rproc_add +EXPORT_SYMBOL vmlinux 0xc8a91f5b cpumask_local_spread +EXPORT_SYMBOL vmlinux 0xc8b4f85f dma_resv_add_fence +EXPORT_SYMBOL vmlinux 0xc8c85086 sg_free_table +EXPORT_SYMBOL vmlinux 0xc8cbf751 tlbstate_untag_mask +EXPORT_SYMBOL vmlinux 0xc8cc70a1 udp_seq_next +EXPORT_SYMBOL vmlinux 0xc8dcc62a krealloc +EXPORT_SYMBOL vmlinux 0xc905fd98 copy_string_kernel +EXPORT_SYMBOL vmlinux 0xc911c329 folio_unlock +EXPORT_SYMBOL vmlinux 0xc921f4a5 fs_param_is_path +EXPORT_SYMBOL vmlinux 0xc93489a9 twl6040_reg_write +EXPORT_SYMBOL vmlinux 0xc93e8461 acpi_get_event_resources +EXPORT_SYMBOL vmlinux 0xc93f93b0 inode_permission +EXPORT_SYMBOL vmlinux 0xc943284a d_tmpfile +EXPORT_SYMBOL vmlinux 0xc945eead vc_cons +EXPORT_SYMBOL vmlinux 0xc9488fd2 release_pages +EXPORT_SYMBOL vmlinux 0xc9634df9 in6addr_linklocal_allrouters +EXPORT_SYMBOL vmlinux 0xc972449f mempool_alloc_slab +EXPORT_SYMBOL vmlinux 0xc9822234 clk_register_clkdev +EXPORT_SYMBOL vmlinux 0xc982533c flow_rule_match_arp +EXPORT_SYMBOL vmlinux 0xc98f23d3 simple_rmdir +EXPORT_SYMBOL vmlinux 0xc9946880 tcp_mss_to_mtu +EXPORT_SYMBOL vmlinux 0xc99e2a55 twl_rev +EXPORT_SYMBOL vmlinux 0xc9a1c8a4 ppp_register_net_channel +EXPORT_SYMBOL vmlinux 0xc9b48f48 dcache_dir_close +EXPORT_SYMBOL vmlinux 0xc9c147c7 max8998_read_reg +EXPORT_SYMBOL vmlinux 0xc9c20200 vm_map_ram +EXPORT_SYMBOL vmlinux 0xc9d23e73 pci_rebar_get_possible_sizes +EXPORT_SYMBOL vmlinux 0xc9daf143 ip_output +EXPORT_SYMBOL vmlinux 0xc9df055a xfrm_policy_walk_init +EXPORT_SYMBOL vmlinux 0xc9f34c1d acpi_acquire_global_lock +EXPORT_SYMBOL vmlinux 0xc9fe1498 blk_pre_runtime_resume +EXPORT_SYMBOL vmlinux 0xca00f453 pci_ep_cfs_add_epf_group +EXPORT_SYMBOL vmlinux 0xca0d753f netdev_upper_dev_link +EXPORT_SYMBOL vmlinux 0xca1648d4 zstd_decompress_dctx +EXPORT_SYMBOL vmlinux 0xca17ac01 _find_next_andnot_bit +EXPORT_SYMBOL vmlinux 0xca19ba43 fqdir_exit +EXPORT_SYMBOL vmlinux 0xca19c411 writeback_inodes_sb_nr +EXPORT_SYMBOL vmlinux 0xca21ebd3 bitmap_free +EXPORT_SYMBOL vmlinux 0xca30724d block_dirty_folio +EXPORT_SYMBOL vmlinux 0xca420241 fb_io_write +EXPORT_SYMBOL vmlinux 0xca431c05 wake_bit_function +EXPORT_SYMBOL vmlinux 0xca701db3 scsi_scan_target +EXPORT_SYMBOL vmlinux 0xca7f468d backlight_device_get_by_type +EXPORT_SYMBOL vmlinux 0xca9360b5 rb_next +EXPORT_SYMBOL vmlinux 0xca9beaa4 __xa_store +EXPORT_SYMBOL vmlinux 0xca9e017f key_link +EXPORT_SYMBOL vmlinux 0xcac3b790 tls_client_hello_x509 +EXPORT_SYMBOL vmlinux 0xcad1aca8 acpi_exception +EXPORT_SYMBOL vmlinux 0xcad2a81b param_set_bool +EXPORT_SYMBOL vmlinux 0xcaee66b3 pcie_set_mps +EXPORT_SYMBOL vmlinux 0xcb0288ea ledtrig_cpu +EXPORT_SYMBOL vmlinux 0xcb114e06 serio_rescan +EXPORT_SYMBOL vmlinux 0xcb1266be nf_log_unset +EXPORT_SYMBOL vmlinux 0xcb1bdb5c eisa_driver_unregister +EXPORT_SYMBOL vmlinux 0xcb3ae215 call_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xcb451c86 pci_enable_device_mem +EXPORT_SYMBOL vmlinux 0xcb733bf2 acpi_bus_set_power +EXPORT_SYMBOL vmlinux 0xcb8e2eae vfs_iter_write +EXPORT_SYMBOL vmlinux 0xcba6f20c kernel_connect +EXPORT_SYMBOL vmlinux 0xcbb0e414 tcf_action_dump_1 +EXPORT_SYMBOL vmlinux 0xcbbc9f27 fb_pgprotect +EXPORT_SYMBOL vmlinux 0xcbbf0a6f audit_log_task_context +EXPORT_SYMBOL vmlinux 0xcbd4898c fortify_panic +EXPORT_SYMBOL vmlinux 0xcbe30fba aperture_remove_conflicting_pci_devices +EXPORT_SYMBOL vmlinux 0xcbf094af folio_migrate_mapping +EXPORT_SYMBOL vmlinux 0xcbf74c81 fs_param_is_blob +EXPORT_SYMBOL vmlinux 0xcbfb33e4 init_opal_dev +EXPORT_SYMBOL vmlinux 0xcc0d8a36 simple_release_fs +EXPORT_SYMBOL vmlinux 0xcc1b882a idr_get_next_ul +EXPORT_SYMBOL vmlinux 0xcc2439a6 secpath_set +EXPORT_SYMBOL vmlinux 0xcc248d26 serial8250_suspend_port +EXPORT_SYMBOL vmlinux 0xcc302ac8 handshake_req_alloc +EXPORT_SYMBOL vmlinux 0xcc328a5c reservation_ww_class +EXPORT_SYMBOL vmlinux 0xcc350dcc dev_deactivate +EXPORT_SYMBOL vmlinux 0xcc392eea kmalloc_size_roundup +EXPORT_SYMBOL vmlinux 0xcc3f4be0 key_unlink +EXPORT_SYMBOL vmlinux 0xcc411ed1 ptp_convert_timestamp +EXPORT_SYMBOL vmlinux 0xcc5005fe msleep_interruptible +EXPORT_SYMBOL vmlinux 0xcc5771db __xfrm_route_forward +EXPORT_SYMBOL vmlinux 0xcc5c2df4 trace_print_symbols_seq +EXPORT_SYMBOL vmlinux 0xcc5d22d9 can_do_mlock +EXPORT_SYMBOL vmlinux 0xcc85f9d6 edac_mc_find +EXPORT_SYMBOL vmlinux 0xcca5839d xen_vcpu_id +EXPORT_SYMBOL vmlinux 0xcca7b5a8 make_bad_inode +EXPORT_SYMBOL vmlinux 0xcca7eab4 arch_debugfs_dir +EXPORT_SYMBOL vmlinux 0xccaefe91 i2c_register_driver +EXPORT_SYMBOL vmlinux 0xccaf0650 mmc_of_parse_voltage +EXPORT_SYMBOL vmlinux 0xccaf994e dma_fence_set_deadline +EXPORT_SYMBOL vmlinux 0xccbe334c add_to_page_cache_lru +EXPORT_SYMBOL vmlinux 0xcce12870 default_qdisc_ops +EXPORT_SYMBOL vmlinux 0xccf2b4c8 ip_route_me_harder +EXPORT_SYMBOL vmlinux 0xccf45377 pcibios_resource_to_bus +EXPORT_SYMBOL vmlinux 0xccfb9e07 dst_default_metrics +EXPORT_SYMBOL vmlinux 0xccfd2ebc scsi_dev_info_list_del_keyed +EXPORT_SYMBOL vmlinux 0xcd01b8e6 acpi_attach_data +EXPORT_SYMBOL vmlinux 0xcd12a649 vfs_fsync_range +EXPORT_SYMBOL vmlinux 0xcd279169 nla_find +EXPORT_SYMBOL vmlinux 0xcd4beba6 dev_get_mac_address +EXPORT_SYMBOL vmlinux 0xcd5634b1 qdisc_watchdog_init +EXPORT_SYMBOL vmlinux 0xcd7a3528 handshake_req_cancel +EXPORT_SYMBOL vmlinux 0xcd84bc3d dev_set_promiscuity +EXPORT_SYMBOL vmlinux 0xcd8ce890 acpi_format_exception +EXPORT_SYMBOL vmlinux 0xcd995e95 mmc_erase_group_aligned +EXPORT_SYMBOL vmlinux 0xcd9c13a3 tty_termios_hw_change +EXPORT_SYMBOL vmlinux 0xcdb2412e xfrm_sad_getinfo +EXPORT_SYMBOL vmlinux 0xcdbc2c78 mntget +EXPORT_SYMBOL vmlinux 0xcdc39c9e security_ismaclabel +EXPORT_SYMBOL vmlinux 0xcdcb212f legacy_pic +EXPORT_SYMBOL vmlinux 0xcde77bcc free_opal_dev +EXPORT_SYMBOL vmlinux 0xcdee74b1 neigh_table_init +EXPORT_SYMBOL vmlinux 0xcdf4b383 pipe_lock +EXPORT_SYMBOL vmlinux 0xce2840e7 irq_set_irq_wake +EXPORT_SYMBOL vmlinux 0xce2e5d1b tty_name +EXPORT_SYMBOL vmlinux 0xce3a8993 freeze_super +EXPORT_SYMBOL vmlinux 0xce4cdb8e fb_find_best_mode +EXPORT_SYMBOL vmlinux 0xce4e47b6 __kfifo_skip_r +EXPORT_SYMBOL vmlinux 0xce547cb9 skb_copy_expand +EXPORT_SYMBOL vmlinux 0xce56ed7b security_sctp_bind_connect +EXPORT_SYMBOL vmlinux 0xce5ac24f zlib_inflate_workspacesize +EXPORT_SYMBOL vmlinux 0xce5f007d fscrypt_decrypt_pagecache_blocks +EXPORT_SYMBOL vmlinux 0xce66cee7 cdrom_release +EXPORT_SYMBOL vmlinux 0xce720f28 mtree_destroy +EXPORT_SYMBOL vmlinux 0xce76c257 acpi_get_irq_routing_table +EXPORT_SYMBOL vmlinux 0xce807a25 up_write +EXPORT_SYMBOL vmlinux 0xce81801e devm_extcon_register_notifier_all +EXPORT_SYMBOL vmlinux 0xcea381dd x86_match_cpu +EXPORT_SYMBOL vmlinux 0xcea54204 reuseport_detach_prog +EXPORT_SYMBOL vmlinux 0xcea7a729 lock_rename +EXPORT_SYMBOL vmlinux 0xceab0311 strchrnul +EXPORT_SYMBOL vmlinux 0xcecb8756 to_nd_btt +EXPORT_SYMBOL vmlinux 0xceccdaa3 qdisc_offload_query_caps +EXPORT_SYMBOL vmlinux 0xced0f4d4 gen_pool_create +EXPORT_SYMBOL vmlinux 0xcefb0c9f __mutex_init +EXPORT_SYMBOL vmlinux 0xcefcd99a serial8250_unregister_port +EXPORT_SYMBOL vmlinux 0xcf1001f2 skb_udp_tunnel_segment +EXPORT_SYMBOL vmlinux 0xcf227ff6 tcp_gro_complete +EXPORT_SYMBOL vmlinux 0xcf25092a mipi_dsi_picture_parameter_set +EXPORT_SYMBOL vmlinux 0xcf2a6966 up +EXPORT_SYMBOL vmlinux 0xcf2a893b vme_dma_list_free +EXPORT_SYMBOL vmlinux 0xcf2af657 bfifo_qdisc_ops +EXPORT_SYMBOL vmlinux 0xcf2beeae xfrm_policy_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xcf378efb sock_no_getname +EXPORT_SYMBOL vmlinux 0xcf3b69b3 netdev_stats_to_stats64 +EXPORT_SYMBOL vmlinux 0xcf4fdd4d _atomic_dec_and_lock +EXPORT_SYMBOL vmlinux 0xcf5fe559 nvdimm_bus_lock +EXPORT_SYMBOL vmlinux 0xcf6231a8 skb_recv_datagram +EXPORT_SYMBOL vmlinux 0xcf70649b __xfrm_policy_check +EXPORT_SYMBOL vmlinux 0xcf838ea8 udp_read_skb +EXPORT_SYMBOL vmlinux 0xcf8799cc __mark_inode_dirty +EXPORT_SYMBOL vmlinux 0xcf963b28 request_firmware_into_buf +EXPORT_SYMBOL vmlinux 0xcf9b558d touchscreen_set_mt_pos +EXPORT_SYMBOL vmlinux 0xcfc33136 textsearch_prepare +EXPORT_SYMBOL vmlinux 0xcfc9deaf atomic_dec_and_mutex_lock +EXPORT_SYMBOL vmlinux 0xcfd884a8 __hsiphash_unaligned +EXPORT_SYMBOL vmlinux 0xcfda9f26 __wait_on_buffer +EXPORT_SYMBOL vmlinux 0xcfdecd8f md_update_sb +EXPORT_SYMBOL vmlinux 0xcfe01b5e kobject_init +EXPORT_SYMBOL vmlinux 0xcfeb429c _dev_err +EXPORT_SYMBOL vmlinux 0xd0189e16 tcf_generic_walker +EXPORT_SYMBOL vmlinux 0xd01edcd9 sockfd_lookup +EXPORT_SYMBOL vmlinux 0xd027bf06 xfrm_init_state +EXPORT_SYMBOL vmlinux 0xd02e794d sg_miter_next +EXPORT_SYMBOL vmlinux 0xd0443435 dev_get_by_name +EXPORT_SYMBOL vmlinux 0xd048aa9a flow_rule_match_enc_keyid +EXPORT_SYMBOL vmlinux 0xd04c1a64 sysctl_devconf_inherit_init_net +EXPORT_SYMBOL vmlinux 0xd0590670 vga_switcheroo_register_handler +EXPORT_SYMBOL vmlinux 0xd05e519b is_acpi_data_node +EXPORT_SYMBOL vmlinux 0xd0654aba woken_wake_function +EXPORT_SYMBOL vmlinux 0xd066e225 vm_map_pages +EXPORT_SYMBOL vmlinux 0xd0683653 input_reset_device +EXPORT_SYMBOL vmlinux 0xd06fd62e folio_alloc +EXPORT_SYMBOL vmlinux 0xd0760fc0 kfree_sensitive +EXPORT_SYMBOL vmlinux 0xd080172a mfd_add_devices +EXPORT_SYMBOL vmlinux 0xd08adb2b trace_seq_hex_dump +EXPORT_SYMBOL vmlinux 0xd09561ce bio_integrity_alloc +EXPORT_SYMBOL vmlinux 0xd09ee849 regset_get_alloc +EXPORT_SYMBOL vmlinux 0xd0a78001 security_sock_rcv_skb +EXPORT_SYMBOL vmlinux 0xd0b74705 acpi_install_interface +EXPORT_SYMBOL vmlinux 0xd0c59c46 tcf_block_put +EXPORT_SYMBOL vmlinux 0xd0d48511 dquot_release +EXPORT_SYMBOL vmlinux 0xd0f284b8 mmiotrace_printk +EXPORT_SYMBOL vmlinux 0xd0f4aa51 inet_frag_reasm_finish +EXPORT_SYMBOL vmlinux 0xd0fef3b2 agp_free_key +EXPORT_SYMBOL vmlinux 0xd0ff87c2 md_bitmap_start_sync +EXPORT_SYMBOL vmlinux 0xd1363cc1 ucs2_strsize +EXPORT_SYMBOL vmlinux 0xd136aaee simple_recursive_removal +EXPORT_SYMBOL vmlinux 0xd137d37b splice_direct_to_actor +EXPORT_SYMBOL vmlinux 0xd13b0025 tcp_set_rcvlowat +EXPORT_SYMBOL vmlinux 0xd14fd05a tcp_get_cookie_sock +EXPORT_SYMBOL vmlinux 0xd16671b6 __mod_lruvec_page_state +EXPORT_SYMBOL vmlinux 0xd1775a7a io_uring_get_socket +EXPORT_SYMBOL vmlinux 0xd186ac72 configfs_register_group +EXPORT_SYMBOL vmlinux 0xd18b9790 skb_vlan_push +EXPORT_SYMBOL vmlinux 0xd194bb15 __xfrm_init_state +EXPORT_SYMBOL vmlinux 0xd194ddf9 acpi_gpe_count +EXPORT_SYMBOL vmlinux 0xd19972e5 end_buffer_async_write +EXPORT_SYMBOL vmlinux 0xd199da0f dma_find_channel +EXPORT_SYMBOL vmlinux 0xd1a09dfe seq_read +EXPORT_SYMBOL vmlinux 0xd1ce1bf9 blk_mq_requeue_request +EXPORT_SYMBOL vmlinux 0xd1cf6e49 proc_create +EXPORT_SYMBOL vmlinux 0xd1d6e0b7 boot_cpu_data +EXPORT_SYMBOL vmlinux 0xd1d87e92 scsi_mlreturn_string +EXPORT_SYMBOL vmlinux 0xd1ee01a3 follow_down_one +EXPORT_SYMBOL vmlinux 0xd1f093e3 __genphy_config_aneg +EXPORT_SYMBOL vmlinux 0xd1f3bd78 xfrm_dev_policy_flush +EXPORT_SYMBOL vmlinux 0xd1f60a89 arch_io_free_memtype_wc +EXPORT_SYMBOL vmlinux 0xd1f6c5f3 smp_num_siblings +EXPORT_SYMBOL vmlinux 0xd200b659 __put_devmap_managed_page_refs +EXPORT_SYMBOL vmlinux 0xd219541d seq_release +EXPORT_SYMBOL vmlinux 0xd21a9817 iunique +EXPORT_SYMBOL vmlinux 0xd21ae0c7 genphy_write_mmd_unsupported +EXPORT_SYMBOL vmlinux 0xd21c5139 iowrite64_lo_hi +EXPORT_SYMBOL vmlinux 0xd2237016 radix_tree_delete_item +EXPORT_SYMBOL vmlinux 0xd224fb9b fs_bio_set +EXPORT_SYMBOL vmlinux 0xd22b64f0 crypto_sha1_finup +EXPORT_SYMBOL vmlinux 0xd24108d4 rfkill_soft_blocked +EXPORT_SYMBOL vmlinux 0xd25d4f74 console_blank_hook +EXPORT_SYMBOL vmlinux 0xd25ed994 dquot_get_next_dqblk +EXPORT_SYMBOL vmlinux 0xd2646a7c dma_fence_describe +EXPORT_SYMBOL vmlinux 0xd27b25dd blk_check_plugged +EXPORT_SYMBOL vmlinux 0xd2800691 nf_conntrack_destroy +EXPORT_SYMBOL vmlinux 0xd282b6bd flush_signals +EXPORT_SYMBOL vmlinux 0xd2878f82 would_dump +EXPORT_SYMBOL vmlinux 0xd2b46a3c vme_unregister_error_handler +EXPORT_SYMBOL vmlinux 0xd2bc5c46 __get_user_nocheck_2 +EXPORT_SYMBOL vmlinux 0xd2d88506 netdev_offload_xstats_report_used +EXPORT_SYMBOL vmlinux 0xd2da1048 register_netdevice_notifier +EXPORT_SYMBOL vmlinux 0xd2e2a9d0 hdmi_spd_infoframe_pack_only +EXPORT_SYMBOL vmlinux 0xd2ea49b8 acpi_leave_sleep_state_prep +EXPORT_SYMBOL vmlinux 0xd2f7b946 phy_queue_state_machine +EXPORT_SYMBOL vmlinux 0xd31a8675 mini_qdisc_pair_block_init +EXPORT_SYMBOL vmlinux 0xd32f5af7 pldmfw_flash_image +EXPORT_SYMBOL vmlinux 0xd3338399 vfs_symlink +EXPORT_SYMBOL vmlinux 0xd338ea7e __SCT__tp_func_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xd33dd121 bio_add_page +EXPORT_SYMBOL vmlinux 0xd352e7a6 fifo_set_limit +EXPORT_SYMBOL vmlinux 0xd35a6d31 mempool_kmalloc +EXPORT_SYMBOL vmlinux 0xd35cce70 _raw_spin_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xd3675187 folio_account_redirty +EXPORT_SYMBOL vmlinux 0xd367a6af skb_dequeue +EXPORT_SYMBOL vmlinux 0xd36dc10c get_random_u32 +EXPORT_SYMBOL vmlinux 0xd36e3d59 prandom_bytes_state +EXPORT_SYMBOL vmlinux 0xd38cd261 __default_kernel_pte_mask +EXPORT_SYMBOL vmlinux 0xd38e102c fget +EXPORT_SYMBOL vmlinux 0xd38ee2c7 __get_hash_from_flowi6 +EXPORT_SYMBOL vmlinux 0xd3bb402a inet_ioctl +EXPORT_SYMBOL vmlinux 0xd3e389df pcix_set_mmrbc +EXPORT_SYMBOL vmlinux 0xd3f74fb1 watchdog_register_governor +EXPORT_SYMBOL vmlinux 0xd3fa642a filp_open +EXPORT_SYMBOL vmlinux 0xd406d266 fb_mode_is_equal +EXPORT_SYMBOL vmlinux 0xd41a9009 inet_csk_destroy_sock +EXPORT_SYMBOL vmlinux 0xd426ec80 ip_setsockopt +EXPORT_SYMBOL vmlinux 0xd42aab22 filemap_map_pages +EXPORT_SYMBOL vmlinux 0xd4424c71 pcpu_hot +EXPORT_SYMBOL vmlinux 0xd4429055 dm_unregister_target +EXPORT_SYMBOL vmlinux 0xd446249a vfs_copy_file_range +EXPORT_SYMBOL vmlinux 0xd4596078 inet_pton_with_scope +EXPORT_SYMBOL vmlinux 0xd45cc6ca bin2hex +EXPORT_SYMBOL vmlinux 0xd4633cce phy_remove_link_mode +EXPORT_SYMBOL vmlinux 0xd4755281 rproc_da_to_va +EXPORT_SYMBOL vmlinux 0xd479f5d4 xfrm6_rcv_spi +EXPORT_SYMBOL vmlinux 0xd47b33e9 mdiobus_scan_c22 +EXPORT_SYMBOL vmlinux 0xd4820e34 pm860x_page_bulk_read +EXPORT_SYMBOL vmlinux 0xd4835ef8 dmi_check_system +EXPORT_SYMBOL vmlinux 0xd48a6563 vfs_statfs +EXPORT_SYMBOL vmlinux 0xd48a9f15 softnet_data +EXPORT_SYMBOL vmlinux 0xd4aabd95 bio_add_folio +EXPORT_SYMBOL vmlinux 0xd4afea5d free_irq_cpu_rmap +EXPORT_SYMBOL vmlinux 0xd4b5c763 __blkdev_issue_discard +EXPORT_SYMBOL vmlinux 0xd4bb4a82 inet6addr_validator_notifier_call_chain +EXPORT_SYMBOL vmlinux 0xd4cfa5ce invalidate_inode_buffers +EXPORT_SYMBOL vmlinux 0xd4d1983c udplite_table +EXPORT_SYMBOL vmlinux 0xd4ec7d63 eisa_driver_register +EXPORT_SYMBOL vmlinux 0xd4f1ec41 pfifo_fast_ops +EXPORT_SYMBOL vmlinux 0xd5260d98 zpool_register_driver +EXPORT_SYMBOL vmlinux 0xd5263820 mb_cache_destroy +EXPORT_SYMBOL vmlinux 0xd5346bfc acpi_get_possible_resources +EXPORT_SYMBOL vmlinux 0xd543e0d5 neigh_app_ns +EXPORT_SYMBOL vmlinux 0xd574857e devm_arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xd59c919b drop_super_exclusive +EXPORT_SYMBOL vmlinux 0xd5b3d0d5 xxh64_copy_state +EXPORT_SYMBOL vmlinux 0xd5c2c748 netdev_class_remove_file_ns +EXPORT_SYMBOL vmlinux 0xd5cdd5c7 devm_pci_remap_iospace +EXPORT_SYMBOL vmlinux 0xd5fd90f1 prepare_to_wait +EXPORT_SYMBOL vmlinux 0xd60736ec gf128mul_free_64k +EXPORT_SYMBOL vmlinux 0xd6098193 vga_client_register +EXPORT_SYMBOL vmlinux 0xd6150dd0 t10_pi_type3_crc +EXPORT_SYMBOL vmlinux 0xd61a01ba stop_tty +EXPORT_SYMBOL vmlinux 0xd62ecd49 rps_sock_flow_table +EXPORT_SYMBOL vmlinux 0xd642f3f6 video_firmware_drivers_only +EXPORT_SYMBOL vmlinux 0xd643239a acpi_leave_sleep_state +EXPORT_SYMBOL vmlinux 0xd64abff0 block_write_begin +EXPORT_SYMBOL vmlinux 0xd658a679 proc_symlink +EXPORT_SYMBOL vmlinux 0xd65ca7c8 seq_put_decimal_ll +EXPORT_SYMBOL vmlinux 0xd66c8184 add_device_randomness +EXPORT_SYMBOL vmlinux 0xd67c9667 io_uring_destruct_scm +EXPORT_SYMBOL vmlinux 0xd67ede66 inode_needs_sync +EXPORT_SYMBOL vmlinux 0xd6824076 uart_update_timeout +EXPORT_SYMBOL vmlinux 0xd68c5a1f adjust_resource +EXPORT_SYMBOL vmlinux 0xd68ebb9a dcache_dir_open +EXPORT_SYMBOL vmlinux 0xd6941457 netdev_set_sb_channel +EXPORT_SYMBOL vmlinux 0xd6a91f54 twl_i2c_read +EXPORT_SYMBOL vmlinux 0xd6b2ed5f generate_pm_trace +EXPORT_SYMBOL vmlinux 0xd6b33026 cpu_khz +EXPORT_SYMBOL vmlinux 0xd6ccf1ef mmc_cqe_start_req +EXPORT_SYMBOL vmlinux 0xd6da969f open_exec +EXPORT_SYMBOL vmlinux 0xd6eaaea1 full_name_hash +EXPORT_SYMBOL vmlinux 0xd6ee688f vmalloc +EXPORT_SYMBOL vmlinux 0xd6f5dfef set_pages_array_wb +EXPORT_SYMBOL vmlinux 0xd6fde043 is_module_sig_enforced +EXPORT_SYMBOL vmlinux 0xd709a787 tty_port_raise_dtr_rts +EXPORT_SYMBOL vmlinux 0xd70d35a1 gf128mul_4k_bbe +EXPORT_SYMBOL vmlinux 0xd70f62b6 acpi_os_execute +EXPORT_SYMBOL vmlinux 0xd712f907 pci_irq_get_affinity +EXPORT_SYMBOL vmlinux 0xd7198317 rproc_coredump_add_custom_segment +EXPORT_SYMBOL vmlinux 0xd7259680 vfs_dup_fs_context +EXPORT_SYMBOL vmlinux 0xd7356c1c ns_capable_setid +EXPORT_SYMBOL vmlinux 0xd73653c4 freezer_active +EXPORT_SYMBOL vmlinux 0xd738ca1b phy_unregister_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xd73a294f mtree_erase +EXPORT_SYMBOL vmlinux 0xd73c8c2b synchronize_shrinkers +EXPORT_SYMBOL vmlinux 0xd7482f05 vcalloc +EXPORT_SYMBOL vmlinux 0xd7694209 udp_lib_setsockopt +EXPORT_SYMBOL vmlinux 0xd76cc8b7 jbd2_complete_transaction +EXPORT_SYMBOL vmlinux 0xd76d99d9 mipi_dsi_dcs_enter_sleep_mode +EXPORT_SYMBOL vmlinux 0xd77cd76d __dev_get_by_flags +EXPORT_SYMBOL vmlinux 0xd77f03d8 i2c_smbus_read_block_data +EXPORT_SYMBOL vmlinux 0xd7813409 neigh_seq_stop +EXPORT_SYMBOL vmlinux 0xd7987177 utf8_load +EXPORT_SYMBOL vmlinux 0xd79d736b dm_io +EXPORT_SYMBOL vmlinux 0xd7c2ecbb netdev_offload_xstats_push_delta +EXPORT_SYMBOL vmlinux 0xd7c3f15e inet_addr_type +EXPORT_SYMBOL vmlinux 0xd7d280ad irq_poll_complete +EXPORT_SYMBOL vmlinux 0xd7dd777b reserve_perfctr_nmi +EXPORT_SYMBOL vmlinux 0xd7e1b6cd page_pool_unlink_napi +EXPORT_SYMBOL vmlinux 0xd7e56a4e simple_strtoll +EXPORT_SYMBOL vmlinux 0xd7e637a3 inet_frag_rbtree_purge +EXPORT_SYMBOL vmlinux 0xd7ea7094 nf_unregister_queue_handler +EXPORT_SYMBOL vmlinux 0xd7fed3a9 __devm_request_region +EXPORT_SYMBOL vmlinux 0xd80194fc scsi_print_sense +EXPORT_SYMBOL vmlinux 0xd80c35f2 scsi_test_unit_ready +EXPORT_SYMBOL vmlinux 0xd81907cd dst_init +EXPORT_SYMBOL vmlinux 0xd820e7dd param_get_byte +EXPORT_SYMBOL vmlinux 0xd83898d5 nf_hooks_needed +EXPORT_SYMBOL vmlinux 0xd8406268 security_inet_conn_request +EXPORT_SYMBOL vmlinux 0xd846c315 acpi_write_bit_register +EXPORT_SYMBOL vmlinux 0xd84d4b61 xsk_uses_need_wakeup +EXPORT_SYMBOL vmlinux 0xd85042d8 ethtool_aggregate_mac_stats +EXPORT_SYMBOL vmlinux 0xd85622ec param_set_byte +EXPORT_SYMBOL vmlinux 0xd85ddcb7 vme_unregister_bridge +EXPORT_SYMBOL vmlinux 0xd89da37f movable_zone +EXPORT_SYMBOL vmlinux 0xd8a994eb scsi_extd_sense_format +EXPORT_SYMBOL vmlinux 0xd8b61304 get_default_font +EXPORT_SYMBOL vmlinux 0xd8b6d96f __find_nth_and_bit +EXPORT_SYMBOL vmlinux 0xd8c06fd7 cros_ec_query_all +EXPORT_SYMBOL vmlinux 0xd8c0bc33 __kfree_skb +EXPORT_SYMBOL vmlinux 0xd8df08ac acpi_handle_printk +EXPORT_SYMBOL vmlinux 0xd8f7878c udp_seq_stop +EXPORT_SYMBOL vmlinux 0xd900a814 phy_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xd91f6ab6 strnlen_user +EXPORT_SYMBOL vmlinux 0xd921afc2 fscrypt_free_inode +EXPORT_SYMBOL vmlinux 0xd922e3dd netpoll_poll_dev +EXPORT_SYMBOL vmlinux 0xd924a4a7 inet_listen +EXPORT_SYMBOL vmlinux 0xd92deb6b acpi_evaluate_object +EXPORT_SYMBOL vmlinux 0xd932ed7b xp_dma_sync_for_device_slow +EXPORT_SYMBOL vmlinux 0xd933f209 __SCT__tp_func_rdpmc +EXPORT_SYMBOL vmlinux 0xd936b199 truncate_inode_pages_final +EXPORT_SYMBOL vmlinux 0xd9491c14 xa_destroy +EXPORT_SYMBOL vmlinux 0xd951153f mmc_register_driver +EXPORT_SYMBOL vmlinux 0xd971c6c4 xen_arch_register_cpu +EXPORT_SYMBOL vmlinux 0xd97454d6 cdrom_mode_select +EXPORT_SYMBOL vmlinux 0xd985dc99 mempool_free_pages +EXPORT_SYMBOL vmlinux 0xd9a5ea54 __init_waitqueue_head +EXPORT_SYMBOL vmlinux 0xd9ac08b6 ip6tun_encaps +EXPORT_SYMBOL vmlinux 0xd9b85ef6 lockref_get +EXPORT_SYMBOL vmlinux 0xd9d8fd16 register_restart_handler +EXPORT_SYMBOL vmlinux 0xd9d952d1 crypto_aes_sbox +EXPORT_SYMBOL vmlinux 0xda13e2fb devfreq_add_governor +EXPORT_SYMBOL vmlinux 0xda1ddef1 acpi_mark_gpe_for_wake +EXPORT_SYMBOL vmlinux 0xda26b8ea __irq_regs +EXPORT_SYMBOL vmlinux 0xda3d10a8 security_tun_dev_open +EXPORT_SYMBOL vmlinux 0xda4ca25e lookup_one_unlocked +EXPORT_SYMBOL vmlinux 0xda653389 pci_bus_find_capability +EXPORT_SYMBOL vmlinux 0xda791b82 rproc_elf_get_boot_addr +EXPORT_SYMBOL vmlinux 0xda7b9e47 dev_uc_unsync +EXPORT_SYMBOL vmlinux 0xda7deef1 ram_aops +EXPORT_SYMBOL vmlinux 0xda8f80e2 to_nd_dax +EXPORT_SYMBOL vmlinux 0xdaa300f5 ethtool_rx_flow_rule_create +EXPORT_SYMBOL vmlinux 0xdaabd1e7 blk_set_runtime_active +EXPORT_SYMBOL vmlinux 0xdab8880a filemap_fdatawait_keep_errors +EXPORT_SYMBOL vmlinux 0xdac4913a bitmap_allocate_region +EXPORT_SYMBOL vmlinux 0xdac9ffcb ethtool_notify +EXPORT_SYMBOL vmlinux 0xdad13544 ptrs_per_p4d +EXPORT_SYMBOL vmlinux 0xdad1fc3f zstd_flush_stream +EXPORT_SYMBOL vmlinux 0xdaef9a6a scsi_report_device_reset +EXPORT_SYMBOL vmlinux 0xdb015290 bio_integrity_add_page +EXPORT_SYMBOL vmlinux 0xdb02fd83 skb_page_frag_refill +EXPORT_SYMBOL vmlinux 0xdb16b170 topology_phys_to_logical_pkg +EXPORT_SYMBOL vmlinux 0xdb1edee6 hdmi_infoframe_unpack +EXPORT_SYMBOL vmlinux 0xdb378f42 inode_get_bytes +EXPORT_SYMBOL vmlinux 0xdb5a520d ip_mc_check_igmp +EXPORT_SYMBOL vmlinux 0xdb5ce53c __devm_mdiobus_register +EXPORT_SYMBOL vmlinux 0xdb6418ff dma_ops +EXPORT_SYMBOL vmlinux 0xdb68bbad rfkill_destroy +EXPORT_SYMBOL vmlinux 0xdb760f52 __kfifo_free +EXPORT_SYMBOL vmlinux 0xdb7740b5 xfrm_replay_seqhi +EXPORT_SYMBOL vmlinux 0xdb95e185 intel_scu_ipc_dev_command_with_size +EXPORT_SYMBOL vmlinux 0xdba20e12 blk_set_stacking_limits +EXPORT_SYMBOL vmlinux 0xdbc43e6a qdisc_get_rtab +EXPORT_SYMBOL vmlinux 0xdbcf041a acpi_install_address_space_handler +EXPORT_SYMBOL vmlinux 0xdbd992cc rproc_add +EXPORT_SYMBOL vmlinux 0xdbdf6c92 ioport_resource +EXPORT_SYMBOL vmlinux 0xdbe6d752 md_cluster_ops +EXPORT_SYMBOL vmlinux 0xdbfae85f put_ipc_ns +EXPORT_SYMBOL vmlinux 0xdbfc7866 textsearch_unregister +EXPORT_SYMBOL vmlinux 0xdbfdb4f4 param_get_uint +EXPORT_SYMBOL vmlinux 0xdc0e4855 timer_delete +EXPORT_SYMBOL vmlinux 0xdc0ec08c __x86_indirect_jump_thunk_r12 +EXPORT_SYMBOL vmlinux 0xdc14eda7 pci_pci_problems +EXPORT_SYMBOL vmlinux 0xdc16cd37 dma_sync_wait +EXPORT_SYMBOL vmlinux 0xdc27a84a register_netdev +EXPORT_SYMBOL vmlinux 0xdc49c198 reciprocal_value_adv +EXPORT_SYMBOL vmlinux 0xdc4db454 truncate_inode_pages_range +EXPORT_SYMBOL vmlinux 0xdc512134 backlight_register_notifier +EXPORT_SYMBOL vmlinux 0xdc55bc75 da903x_query_status +EXPORT_SYMBOL vmlinux 0xdc55ca39 qdisc_put +EXPORT_SYMBOL vmlinux 0xdc5736d5 acpi_register_ioapic +EXPORT_SYMBOL vmlinux 0xdc5d3d6e __traceiter_spi_transfer_stop +EXPORT_SYMBOL vmlinux 0xdc61ed20 unix_attach_fds +EXPORT_SYMBOL vmlinux 0xdc913217 __dev_direct_xmit +EXPORT_SYMBOL vmlinux 0xdc94f17f ww_mutex_lock +EXPORT_SYMBOL vmlinux 0xdca140f5 mod_zone_page_state +EXPORT_SYMBOL vmlinux 0xdca3696a dump_align +EXPORT_SYMBOL vmlinux 0xdca3e204 tcp_create_openreq_child +EXPORT_SYMBOL vmlinux 0xdcb61086 setattr_copy +EXPORT_SYMBOL vmlinux 0xdcb86bfe netdev_has_upper_dev +EXPORT_SYMBOL vmlinux 0xdcbeba1d sg_copy_from_buffer +EXPORT_SYMBOL vmlinux 0xdcc1b154 file_check_and_advance_wb_err +EXPORT_SYMBOL vmlinux 0xdcc98973 bprm_change_interp +EXPORT_SYMBOL vmlinux 0xdcdb774d netdev_master_upper_dev_get +EXPORT_SYMBOL vmlinux 0xdcdc0040 slhc_compress +EXPORT_SYMBOL vmlinux 0xdcdc8f18 netdev_notice +EXPORT_SYMBOL vmlinux 0xdcdd25a9 register_shrinker +EXPORT_SYMBOL vmlinux 0xdce073e0 dev_mc_flush +EXPORT_SYMBOL vmlinux 0xdcedcff7 inet_csk_reqsk_queue_drop +EXPORT_SYMBOL vmlinux 0xdd18a993 acpi_check_dsm +EXPORT_SYMBOL vmlinux 0xdd2c169b mb_cache_create +EXPORT_SYMBOL vmlinux 0xdd2ceab1 sync_filesystem +EXPORT_SYMBOL vmlinux 0xdd5e4cea rtnl_nla_parse_ifinfomsg +EXPORT_SYMBOL vmlinux 0xdd64e639 strscpy +EXPORT_SYMBOL vmlinux 0xdd66ac95 dev_add_pack +EXPORT_SYMBOL vmlinux 0xdd748ee1 __nlmsg_put +EXPORT_SYMBOL vmlinux 0xdd849d51 scsi_get_sense_info_fld +EXPORT_SYMBOL vmlinux 0xddad7952 acpi_dbg_level +EXPORT_SYMBOL vmlinux 0xddaee15b sock_from_file +EXPORT_SYMBOL vmlinux 0xddc0006b qdisc_class_hash_grow +EXPORT_SYMBOL vmlinux 0xddcb09c3 submit_bio_noacct +EXPORT_SYMBOL vmlinux 0xddcbe1f3 acpi_ut_value_exit +EXPORT_SYMBOL vmlinux 0xddd3a887 blk_queue_segment_boundary +EXPORT_SYMBOL vmlinux 0xdddba8c1 jbd2_journal_invalidate_folio +EXPORT_SYMBOL vmlinux 0xdddda5e7 flow_block_cb_lookup +EXPORT_SYMBOL vmlinux 0xddf6ad7a completion_done +EXPORT_SYMBOL vmlinux 0xddf8d5d8 tty_devnum +EXPORT_SYMBOL vmlinux 0xddfdb8ac tcp_md5_needed +EXPORT_SYMBOL vmlinux 0xde293f9e add_wait_queue_exclusive +EXPORT_SYMBOL vmlinux 0xde2bc3cf ilookup +EXPORT_SYMBOL vmlinux 0xde2e1e2b free_buffer_head +EXPORT_SYMBOL vmlinux 0xde41a151 agp_generic_alloc_user +EXPORT_SYMBOL vmlinux 0xde4eeab5 __register_nmi_handler +EXPORT_SYMBOL vmlinux 0xde501c1a ptp_find_pin +EXPORT_SYMBOL vmlinux 0xde5b935f key_put +EXPORT_SYMBOL vmlinux 0xde69f3d5 iw_handler_get_spy +EXPORT_SYMBOL vmlinux 0xde80cd09 ioremap +EXPORT_SYMBOL vmlinux 0xde8e5d57 dev_open +EXPORT_SYMBOL vmlinux 0xde9b17ed agp3_generic_fetch_size +EXPORT_SYMBOL vmlinux 0xde9c730f __nla_reserve +EXPORT_SYMBOL vmlinux 0xdea79498 fasync_helper +EXPORT_SYMBOL vmlinux 0xdea93f8a vfs_getattr_nosec +EXPORT_SYMBOL vmlinux 0xdeb99119 dma_fence_init +EXPORT_SYMBOL vmlinux 0xdec1c14b get_thermal_instance +EXPORT_SYMBOL vmlinux 0xdec5d016 agp_generic_free_by_type +EXPORT_SYMBOL vmlinux 0xded39a6b gen_kill_estimator +EXPORT_SYMBOL vmlinux 0xdee4ac01 qdisc_hash_add +EXPORT_SYMBOL vmlinux 0xdee9f62c pnp_stop_dev +EXPORT_SYMBOL vmlinux 0xdef68d34 flow_keys_basic_dissector +EXPORT_SYMBOL vmlinux 0xdef72ad7 seg6_hmac_net_exit +EXPORT_SYMBOL vmlinux 0xdef7c893 fb_match_mode +EXPORT_SYMBOL vmlinux 0xdef8d0ae __SCT__tp_func_kfree +EXPORT_SYMBOL vmlinux 0xdf22fc7e pm8606_osc_enable +EXPORT_SYMBOL vmlinux 0xdf256037 kstrtou8_from_user +EXPORT_SYMBOL vmlinux 0xdf2a417d blk_dump_rq_flags +EXPORT_SYMBOL vmlinux 0xdf2c2742 rb_last +EXPORT_SYMBOL vmlinux 0xdf2ebb87 _raw_read_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xdf36914b xa_find_after +EXPORT_SYMBOL vmlinux 0xdf40f91a devm_pci_remap_cfgspace +EXPORT_SYMBOL vmlinux 0xdf48ce6b kernel_param_lock +EXPORT_SYMBOL vmlinux 0xdf521442 _find_next_zero_bit +EXPORT_SYMBOL vmlinux 0xdf54a8f7 netlink_unregister_notifier +EXPORT_SYMBOL vmlinux 0xdf5621fc vga_switcheroo_register_audio_client +EXPORT_SYMBOL vmlinux 0xdf59b669 pnp_possible_config +EXPORT_SYMBOL vmlinux 0xdf6b82de regset_get +EXPORT_SYMBOL vmlinux 0xdf823449 single_open_size +EXPORT_SYMBOL vmlinux 0xdf8734e6 kset_register +EXPORT_SYMBOL vmlinux 0xdf8bda7e __ip_mc_dec_group +EXPORT_SYMBOL vmlinux 0xdf8c223c page_pool_put_page_bulk +EXPORT_SYMBOL vmlinux 0xdf8c695a __ndelay +EXPORT_SYMBOL vmlinux 0xdf8d781f acpi_update_all_gpes +EXPORT_SYMBOL vmlinux 0xdf929370 fs_overflowgid +EXPORT_SYMBOL vmlinux 0xdf93b9d8 timespec64_to_jiffies +EXPORT_SYMBOL vmlinux 0xdf9734a7 sg_nents +EXPORT_SYMBOL vmlinux 0xdfa5f94d security_cred_getsecid +EXPORT_SYMBOL vmlinux 0xdfc12ef1 zstd_decompress_stream +EXPORT_SYMBOL vmlinux 0xdfcc992c current_work +EXPORT_SYMBOL vmlinux 0xdfd8110c flow_block_cb_is_busy +EXPORT_SYMBOL vmlinux 0xdfdce324 cpu_info +EXPORT_SYMBOL vmlinux 0xdfe9eeb8 jbd2_journal_forget +EXPORT_SYMBOL vmlinux 0xdff1bd3d console_stop +EXPORT_SYMBOL vmlinux 0xdff8c22c jbd2_journal_start_reserved +EXPORT_SYMBOL vmlinux 0xdff905e5 vme_slave_free +EXPORT_SYMBOL vmlinux 0xdffa0e12 xfrm_policy_byid +EXPORT_SYMBOL vmlinux 0xdffc80fc vesa_modes +EXPORT_SYMBOL vmlinux 0xdffce9cc sync_inode_metadata +EXPORT_SYMBOL vmlinux 0xe0112fc4 __x86_indirect_thunk_r9 +EXPORT_SYMBOL vmlinux 0xe0135649 mmc_calc_max_discard +EXPORT_SYMBOL vmlinux 0xe0233c88 wireless_spy_update +EXPORT_SYMBOL vmlinux 0xe0239cb2 phy_register_fixup +EXPORT_SYMBOL vmlinux 0xe02ba436 trace_print_hex_seq +EXPORT_SYMBOL vmlinux 0xe02c9c92 __xa_erase +EXPORT_SYMBOL vmlinux 0xe033cb29 native_queued_spin_lock_slowpath +EXPORT_SYMBOL vmlinux 0xe03a0c61 phy_sfp_probe +EXPORT_SYMBOL vmlinux 0xe03bad0c tcp_v4_send_check +EXPORT_SYMBOL vmlinux 0xe0419ac4 kstrtos16 +EXPORT_SYMBOL vmlinux 0xe0684b55 vlan_uses_dev +EXPORT_SYMBOL vmlinux 0xe074bbc0 phy_get_c45_ids +EXPORT_SYMBOL vmlinux 0xe07e5f44 acpi_reconfig_notifier_unregister +EXPORT_SYMBOL vmlinux 0xe07ef363 intel_gmch_gtt_insert_sg_entries +EXPORT_SYMBOL vmlinux 0xe080e8f0 set_current_groups +EXPORT_SYMBOL vmlinux 0xe082e88d acpi_check_address_range +EXPORT_SYMBOL vmlinux 0xe091c977 list_sort +EXPORT_SYMBOL vmlinux 0xe0b13336 argv_free +EXPORT_SYMBOL vmlinux 0xe0b9065b security_xfrm_policy_alloc +EXPORT_SYMBOL vmlinux 0xe0c1b51c get_bitmap_from_slot +EXPORT_SYMBOL vmlinux 0xe0cec8cc serio_close +EXPORT_SYMBOL vmlinux 0xe0e51234 inet_put_port +EXPORT_SYMBOL vmlinux 0xe0ed8d34 devm_extcon_unregister_notifier +EXPORT_SYMBOL vmlinux 0xe0eec9c0 mipi_dsi_host_unregister +EXPORT_SYMBOL vmlinux 0xe10d9d3b elv_rb_find +EXPORT_SYMBOL vmlinux 0xe1115774 jbd2_journal_grab_journal_head +EXPORT_SYMBOL vmlinux 0xe113bbbc csum_partial +EXPORT_SYMBOL vmlinux 0xe118701c vfs_fileattr_set +EXPORT_SYMBOL vmlinux 0xe123f3d9 dma_fence_release +EXPORT_SYMBOL vmlinux 0xe12bda79 vme_dma_free_attribute +EXPORT_SYMBOL vmlinux 0xe1317694 __kfifo_dma_in_prepare_r +EXPORT_SYMBOL vmlinux 0xe137d348 phy_attached_print +EXPORT_SYMBOL vmlinux 0xe138fb8c percpu_counter_add_batch +EXPORT_SYMBOL vmlinux 0xe13b9741 netif_schedule_queue +EXPORT_SYMBOL vmlinux 0xe13cd8a7 dmi_name_in_vendors +EXPORT_SYMBOL vmlinux 0xe17568e3 dma_fence_signal_timestamp_locked +EXPORT_SYMBOL vmlinux 0xe17cc903 xfrm_input_unregister_afinfo +EXPORT_SYMBOL vmlinux 0xe19321ae pnp_disable_dev +EXPORT_SYMBOL vmlinux 0xe193c6c3 acpi_dev_uid_to_integer +EXPORT_SYMBOL vmlinux 0xe19c5867 keyring_search +EXPORT_SYMBOL vmlinux 0xe1b56101 mmc_gpio_get_ro +EXPORT_SYMBOL vmlinux 0xe1bee700 __traceiter_read_msr +EXPORT_SYMBOL vmlinux 0xe1c66b7c xfrm_state_flush +EXPORT_SYMBOL vmlinux 0xe1d18007 inet_reqsk_alloc +EXPORT_SYMBOL vmlinux 0xe1d4bbb7 vmf_insert_pfn +EXPORT_SYMBOL vmlinux 0xe1dcf64a audit_log_format +EXPORT_SYMBOL vmlinux 0xe1f611c5 netlink_ack +EXPORT_SYMBOL vmlinux 0xe2011818 pci_wait_for_pending_transaction +EXPORT_SYMBOL vmlinux 0xe204a713 get_agp_version +EXPORT_SYMBOL vmlinux 0xe212e358 generic_parse_monolithic +EXPORT_SYMBOL vmlinux 0xe21348ef d_add_ci +EXPORT_SYMBOL vmlinux 0xe21f18ac __genradix_iter_peek +EXPORT_SYMBOL vmlinux 0xe22e06c2 neigh_seq_next +EXPORT_SYMBOL vmlinux 0xe22e5d61 scsi_alloc_sgtables +EXPORT_SYMBOL vmlinux 0xe250ea14 xsk_tx_peek_desc +EXPORT_SYMBOL vmlinux 0xe255c03f xfrm6_rcv_encap +EXPORT_SYMBOL vmlinux 0xe26da199 memory_cgrp_subsys +EXPORT_SYMBOL vmlinux 0xe28a7332 page_mapping +EXPORT_SYMBOL vmlinux 0xe2964344 __wake_up +EXPORT_SYMBOL vmlinux 0xe29997c8 dma_map_sg_attrs +EXPORT_SYMBOL vmlinux 0xe2bbfa56 proc_dointvec_jiffies +EXPORT_SYMBOL vmlinux 0xe2bbfe46 serio_reconnect +EXPORT_SYMBOL vmlinux 0xe2c82691 eth_prepare_mac_addr_change +EXPORT_SYMBOL vmlinux 0xe2d5255a strcmp +EXPORT_SYMBOL vmlinux 0xe2da891d free_netdev +EXPORT_SYMBOL vmlinux 0xe2de6669 kfree_skb_list_reason +EXPORT_SYMBOL vmlinux 0xe2e28fc0 __traceiter_write_msr +EXPORT_SYMBOL vmlinux 0xe2f71ace dev_set_allmulti +EXPORT_SYMBOL vmlinux 0xe3132b85 __tracepoint_mmap_lock_acquire_returned +EXPORT_SYMBOL vmlinux 0xe31b9301 intel_gmch_gtt_flush +EXPORT_SYMBOL vmlinux 0xe3201260 dquot_quotactl_sysfile_ops +EXPORT_SYMBOL vmlinux 0xe321211c md_flush_request +EXPORT_SYMBOL vmlinux 0xe32ab4d8 xxh64_digest +EXPORT_SYMBOL vmlinux 0xe32c8fee flow_rule_match_control +EXPORT_SYMBOL vmlinux 0xe330ad29 fscrypt_encrypt_block_inplace +EXPORT_SYMBOL vmlinux 0xe33c6fd6 __tracepoint_module_get +EXPORT_SYMBOL vmlinux 0xe352b524 fb_show_logo +EXPORT_SYMBOL vmlinux 0xe37ac969 netif_set_tso_max_segs +EXPORT_SYMBOL vmlinux 0xe3800636 tty_port_alloc_xmit_buf +EXPORT_SYMBOL vmlinux 0xe3847d87 pci_disable_msix +EXPORT_SYMBOL vmlinux 0xe392bb00 security_binder_transfer_binder +EXPORT_SYMBOL vmlinux 0xe399191c neigh_table_clear +EXPORT_SYMBOL vmlinux 0xe39b2ea5 sha256 +EXPORT_SYMBOL vmlinux 0xe3ad3046 __sg_page_iter_dma_next +EXPORT_SYMBOL vmlinux 0xe3c36f76 proc_create_seq_private +EXPORT_SYMBOL vmlinux 0xe3ccd913 page_pool_put_defragged_page +EXPORT_SYMBOL vmlinux 0xe3d109ae skb_store_bits +EXPORT_SYMBOL vmlinux 0xe3d857ea __cpu_active_mask +EXPORT_SYMBOL vmlinux 0xe3df8319 is_free_buddy_page +EXPORT_SYMBOL vmlinux 0xe3e0d29b tcf_exts_validate +EXPORT_SYMBOL vmlinux 0xe3ec2f2b alloc_chrdev_region +EXPORT_SYMBOL vmlinux 0xe3ef11df rtc_add_groups +EXPORT_SYMBOL vmlinux 0xe3f417a8 dma_async_device_unregister +EXPORT_SYMBOL vmlinux 0xe3f92a69 dev_get_port_parent_id +EXPORT_SYMBOL vmlinux 0xe3faf198 __put_user_ns +EXPORT_SYMBOL vmlinux 0xe3feba56 tasklet_unlock_spin_wait +EXPORT_SYMBOL vmlinux 0xe3ff2c41 get_random_u64 +EXPORT_SYMBOL vmlinux 0xe406b4f5 param_get_ushort +EXPORT_SYMBOL vmlinux 0xe40976c0 pnp_range_reserved +EXPORT_SYMBOL vmlinux 0xe40c37ea down_write_trylock +EXPORT_SYMBOL vmlinux 0xe40f5726 phy_write_mmd +EXPORT_SYMBOL vmlinux 0xe4114519 phy_attached_info_irq +EXPORT_SYMBOL vmlinux 0xe419bc99 iowrite32be +EXPORT_SYMBOL vmlinux 0xe420a84b devm_free_irq +EXPORT_SYMBOL vmlinux 0xe4214834 d_set_fallthru +EXPORT_SYMBOL vmlinux 0xe42cc336 find_vma +EXPORT_SYMBOL vmlinux 0xe447603b scsi_done +EXPORT_SYMBOL vmlinux 0xe44b3e14 __traceiter_module_get +EXPORT_SYMBOL vmlinux 0xe46021ca _raw_spin_unlock_bh +EXPORT_SYMBOL vmlinux 0xe470d02a dst_dev_put +EXPORT_SYMBOL vmlinux 0xe4856ad1 vm_map_pages_zero +EXPORT_SYMBOL vmlinux 0xe49601af netdev_offload_xstats_enabled +EXPORT_SYMBOL vmlinux 0xe4a5e161 flow_rule_match_enc_opts +EXPORT_SYMBOL vmlinux 0xe4a96453 set_cached_acl +EXPORT_SYMBOL vmlinux 0xe4bc2c2f hdmi_drm_infoframe_pack +EXPORT_SYMBOL vmlinux 0xe4ca4aa0 input_register_device +EXPORT_SYMBOL vmlinux 0xe4d80bf4 acpi_enable +EXPORT_SYMBOL vmlinux 0xe4df958c pci_write_config_word +EXPORT_SYMBOL vmlinux 0xe4e2fc81 fs_context_for_reconfigure +EXPORT_SYMBOL vmlinux 0xe4e37157 agp_allocate_memory +EXPORT_SYMBOL vmlinux 0xe4ee031f rproc_set_firmware +EXPORT_SYMBOL vmlinux 0xe511cf35 jbd2_fc_get_buf +EXPORT_SYMBOL vmlinux 0xe517331b convert_art_ns_to_tsc +EXPORT_SYMBOL vmlinux 0xe523ad75 synchronize_irq +EXPORT_SYMBOL vmlinux 0xe5387337 tcp_sock_set_quickack +EXPORT_SYMBOL vmlinux 0xe5443f45 filemap_get_folios_tag +EXPORT_SYMBOL vmlinux 0xe5557271 fwnode_get_phy_id +EXPORT_SYMBOL vmlinux 0xe5672892 filp_close +EXPORT_SYMBOL vmlinux 0xe5760269 jbd2_journal_finish_inode_data_buffers +EXPORT_SYMBOL vmlinux 0xe58090ca security_ib_endport_manage_subnet +EXPORT_SYMBOL vmlinux 0xe58ce4d1 netdev_txq_to_tc +EXPORT_SYMBOL vmlinux 0xe590dea3 sk_busy_loop_end +EXPORT_SYMBOL vmlinux 0xe59634a3 twl6040_get_pll +EXPORT_SYMBOL vmlinux 0xe5991380 __cgroup_bpf_run_filter_sk +EXPORT_SYMBOL vmlinux 0xe5a22c55 __tracepoint_kmalloc +EXPORT_SYMBOL vmlinux 0xe5a5ac67 inode_query_iversion +EXPORT_SYMBOL vmlinux 0xe5c16d62 page_pool_release_page +EXPORT_SYMBOL vmlinux 0xe5c60bd2 percpu_counter_set +EXPORT_SYMBOL vmlinux 0xe5c78a99 do_blank_screen +EXPORT_SYMBOL vmlinux 0xe5c863eb tcp_init_sock +EXPORT_SYMBOL vmlinux 0xe5cee291 register_sysctl_mount_point +EXPORT_SYMBOL vmlinux 0xe5d12d4f unlock_page +EXPORT_SYMBOL vmlinux 0xe5d3368a bdev_end_io_acct +EXPORT_SYMBOL vmlinux 0xe5f70f88 kernel_sendmsg +EXPORT_SYMBOL vmlinux 0xe600137a kobject_put +EXPORT_SYMBOL vmlinux 0xe613df67 cpu_rmap_update +EXPORT_SYMBOL vmlinux 0xe61b912a security_binder_set_context_mgr +EXPORT_SYMBOL vmlinux 0xe62d7a21 tty_unregister_driver +EXPORT_SYMBOL vmlinux 0xe64144ad pci_enable_atomic_ops_to_root +EXPORT_SYMBOL vmlinux 0xe64e418e ip_getsockopt +EXPORT_SYMBOL vmlinux 0xe6550092 utf8_casefold +EXPORT_SYMBOL vmlinux 0xe6588284 mark_buffer_async_write +EXPORT_SYMBOL vmlinux 0xe65a96d0 flow_rule_match_enc_ip +EXPORT_SYMBOL vmlinux 0xe68efe41 _raw_write_lock +EXPORT_SYMBOL vmlinux 0xe692e92c d_mark_dontcache +EXPORT_SYMBOL vmlinux 0xe694bcb7 sk_dst_check +EXPORT_SYMBOL vmlinux 0xe69e0d76 generic_file_write_iter +EXPORT_SYMBOL vmlinux 0xe6a08bf2 udp_prot +EXPORT_SYMBOL vmlinux 0xe6a217a6 devm_mmc_alloc_host +EXPORT_SYMBOL vmlinux 0xe6b5d648 unregister_binfmt +EXPORT_SYMBOL vmlinux 0xe6b7ec8d devm_devfreq_remove_device +EXPORT_SYMBOL vmlinux 0xe6d2458e do_trace_netlink_extack +EXPORT_SYMBOL vmlinux 0xe6f3509d set_page_dirty_lock +EXPORT_SYMBOL vmlinux 0xe6fa06a2 rename_lock +EXPORT_SYMBOL vmlinux 0xe70877d4 acpi_remove_sci_handler +EXPORT_SYMBOL vmlinux 0xe71a1af4 dev_remove_pack +EXPORT_SYMBOL vmlinux 0xe720f831 xfrm_unregister_type +EXPORT_SYMBOL vmlinux 0xe7257ab8 xa_store_range +EXPORT_SYMBOL vmlinux 0xe740b5dc __dquot_free_space +EXPORT_SYMBOL vmlinux 0xe7437e8b inet_protos +EXPORT_SYMBOL vmlinux 0xe7480f4c tcp_child_process +EXPORT_SYMBOL vmlinux 0xe752240c __xfrm_state_destroy +EXPORT_SYMBOL vmlinux 0xe7770e3d neigh_ifdown +EXPORT_SYMBOL vmlinux 0xe787698f acpi_processor_register_performance +EXPORT_SYMBOL vmlinux 0xe7a02573 ida_alloc_range +EXPORT_SYMBOL vmlinux 0xe7a066dc mr_fill_mroute +EXPORT_SYMBOL vmlinux 0xe7a08b57 locks_copy_lock +EXPORT_SYMBOL vmlinux 0xe7aa2b06 inet_proto_csum_replace_by_diff +EXPORT_SYMBOL vmlinux 0xe7ab1ecc _raw_write_unlock_bh +EXPORT_SYMBOL vmlinux 0xe7b78488 param_set_bint +EXPORT_SYMBOL vmlinux 0xe7d4daac seq_list_next +EXPORT_SYMBOL vmlinux 0xe7d6351f dma_unmap_sg_attrs +EXPORT_SYMBOL vmlinux 0xe7dbfa05 mipi_dsi_dcs_write +EXPORT_SYMBOL vmlinux 0xe7e1bf1b skb_split +EXPORT_SYMBOL vmlinux 0xe7e7d44d block_is_partially_uptodate +EXPORT_SYMBOL vmlinux 0xe7e91ce2 jbd2_journal_destroy +EXPORT_SYMBOL vmlinux 0xe7faf5f3 kill_fasync +EXPORT_SYMBOL vmlinux 0xe80f6432 devfreq_add_device +EXPORT_SYMBOL vmlinux 0xe8159646 seg6_hmac_info_del +EXPORT_SYMBOL vmlinux 0xe816048f tty_termios_copy_hw +EXPORT_SYMBOL vmlinux 0xe82bfa7d reuseport_select_sock +EXPORT_SYMBOL vmlinux 0xe836dbae netif_tx_unlock +EXPORT_SYMBOL vmlinux 0xe8493660 nla_append +EXPORT_SYMBOL vmlinux 0xe85f2123 acpi_tb_unload_table +EXPORT_SYMBOL vmlinux 0xe868fd8d vlan_dev_real_dev +EXPORT_SYMBOL vmlinux 0xe86c375e inet_confirm_addr +EXPORT_SYMBOL vmlinux 0xe89abcbe twl6040_get_sysclk +EXPORT_SYMBOL vmlinux 0xe89fa417 inet_stream_ops +EXPORT_SYMBOL vmlinux 0xe8a8dec2 pcie_capability_read_dword +EXPORT_SYMBOL vmlinux 0xe8b1242a pci_msix_vec_count +EXPORT_SYMBOL vmlinux 0xe8b8ffa7 vfs_unlink +EXPORT_SYMBOL vmlinux 0xe8d285b2 nla_policy_len +EXPORT_SYMBOL vmlinux 0xe8d6b6fb genl_notify +EXPORT_SYMBOL vmlinux 0xe8f8740e sock_edemux +EXPORT_SYMBOL vmlinux 0xe8fb307d unregister_tcf_proto_ops +EXPORT_SYMBOL vmlinux 0xe8fbf4fa __alloc_bucket_spinlocks +EXPORT_SYMBOL vmlinux 0xe909997a bitmap_print_list_to_buf +EXPORT_SYMBOL vmlinux 0xe90b88fa write_inode_now +EXPORT_SYMBOL vmlinux 0xe914e41e strcpy +EXPORT_SYMBOL vmlinux 0xe91dd82d xfrm_lookup +EXPORT_SYMBOL vmlinux 0xe92b14eb param_set_short +EXPORT_SYMBOL vmlinux 0xe9390532 sg_alloc_table_from_pages_segment +EXPORT_SYMBOL vmlinux 0xe93f4979 seq_open_private +EXPORT_SYMBOL vmlinux 0xe94354eb inet_del_protocol +EXPORT_SYMBOL vmlinux 0xe94e9a88 config_item_get_unless_zero +EXPORT_SYMBOL vmlinux 0xe950e474 mdiobus_unregister +EXPORT_SYMBOL vmlinux 0xe953b21f get_next_ino +EXPORT_SYMBOL vmlinux 0xe955a224 inet_sk_rebuild_header +EXPORT_SYMBOL vmlinux 0xe95db836 rtnl_kfree_skbs +EXPORT_SYMBOL vmlinux 0xe9702dd2 inode_init_always +EXPORT_SYMBOL vmlinux 0xe98e953a scsi_host_put +EXPORT_SYMBOL vmlinux 0xe99e3c9b udp_lib_rehash +EXPORT_SYMBOL vmlinux 0xe9a5e67f intel_graphics_stolen_res +EXPORT_SYMBOL vmlinux 0xe9aa62d7 pci_read_config_dword +EXPORT_SYMBOL vmlinux 0xe9af7397 __xa_set_mark +EXPORT_SYMBOL vmlinux 0xe9dc12a4 zstd_get_error_name +EXPORT_SYMBOL vmlinux 0xe9e8faeb efi_tpm_final_log_size +EXPORT_SYMBOL vmlinux 0xe9f7149c zlib_deflate_workspacesize +EXPORT_SYMBOL vmlinux 0xe9fd1382 phy_config_aneg +EXPORT_SYMBOL vmlinux 0xe9ffc063 down_trylock +EXPORT_SYMBOL vmlinux 0xea03b0a6 udpv6_sendmsg +EXPORT_SYMBOL vmlinux 0xea0bf59a noop_dirty_folio +EXPORT_SYMBOL vmlinux 0xea3a23cc pci_read_vpd_any +EXPORT_SYMBOL vmlinux 0xea3c8e4e scsilun_to_int +EXPORT_SYMBOL vmlinux 0xea3d65d2 lookup_positive_unlocked +EXPORT_SYMBOL vmlinux 0xea49a0f0 twl6030_mmc_card_detect +EXPORT_SYMBOL vmlinux 0xea5c635a sock_set_priority +EXPORT_SYMBOL vmlinux 0xea61e97f blk_queue_bounce_limit +EXPORT_SYMBOL vmlinux 0xea65148e __inc_node_page_state +EXPORT_SYMBOL vmlinux 0xea6e4cdd skb_checksum_trimmed +EXPORT_SYMBOL vmlinux 0xea6f9a36 zlib_deflate_dfltcc_enabled +EXPORT_SYMBOL vmlinux 0xea72ea05 jbd2_fc_release_bufs +EXPORT_SYMBOL vmlinux 0xea7daa08 __video_get_options +EXPORT_SYMBOL vmlinux 0xea8609ea ip6_err_gen_icmpv6_unreach +EXPORT_SYMBOL vmlinux 0xea8a1d1c rt_dst_alloc +EXPORT_SYMBOL vmlinux 0xeaa17221 flow_rule_match_mpls +EXPORT_SYMBOL vmlinux 0xeab1735a get_vm_area +EXPORT_SYMBOL vmlinux 0xeab6f4c4 acpi_check_resource_conflict +EXPORT_SYMBOL vmlinux 0xeabe7b4b sock_i_uid +EXPORT_SYMBOL vmlinux 0xeae3dfd6 __const_udelay +EXPORT_SYMBOL vmlinux 0xeafc141f __posix_acl_chmod +EXPORT_SYMBOL vmlinux 0xeb0212ac finish_no_open +EXPORT_SYMBOL vmlinux 0xeb078aee _raw_write_unlock_irqrestore +EXPORT_SYMBOL vmlinux 0xeb233a45 __kmalloc +EXPORT_SYMBOL vmlinux 0xeb24b5ac inode_dio_wait +EXPORT_SYMBOL vmlinux 0xeb31aee8 acpi_trace_point +EXPORT_SYMBOL vmlinux 0xeb37101c audit_log_end +EXPORT_SYMBOL vmlinux 0xeb3830e3 __fs_parse +EXPORT_SYMBOL vmlinux 0xeb3b0062 register_cdrom +EXPORT_SYMBOL vmlinux 0xeb44339a free_pages_exact +EXPORT_SYMBOL vmlinux 0xeb537e3e kobject_get_unless_zero +EXPORT_SYMBOL vmlinux 0xeb571869 tcf_em_unregister +EXPORT_SYMBOL vmlinux 0xeb6f9c0b pci_free_host_bridge +EXPORT_SYMBOL vmlinux 0xeb704d2a generic_write_checks +EXPORT_SYMBOL vmlinux 0xeb7f6046 acpi_get_devices +EXPORT_SYMBOL vmlinux 0xeb860627 blk_queue_io_opt +EXPORT_SYMBOL vmlinux 0xeb8c2aeb tcp_shutdown +EXPORT_SYMBOL vmlinux 0xeb9eef52 match_uint +EXPORT_SYMBOL vmlinux 0xeba68af1 key_alloc +EXPORT_SYMBOL vmlinux 0xebbdc413 xfrm6_protocol_register +EXPORT_SYMBOL vmlinux 0xebcfe456 xfrm_spd_getinfo +EXPORT_SYMBOL vmlinux 0xebe3ea0b phy_register_fixup_for_uid +EXPORT_SYMBOL vmlinux 0xec0202f0 neigh_event_ns +EXPORT_SYMBOL vmlinux 0xec155e25 pcim_iounmap_regions +EXPORT_SYMBOL vmlinux 0xec25aa4e request_key_rcu +EXPORT_SYMBOL vmlinux 0xec2b8a42 acpi_walk_namespace +EXPORT_SYMBOL vmlinux 0xec2c60e0 new_inode +EXPORT_SYMBOL vmlinux 0xec47364a pci_request_selected_regions_exclusive +EXPORT_SYMBOL vmlinux 0xec4d9e3a clk_get_sys +EXPORT_SYMBOL vmlinux 0xec531c28 tls_client_hello_psk +EXPORT_SYMBOL vmlinux 0xec550656 xfrm_unregister_km +EXPORT_SYMBOL vmlinux 0xec5ed186 netdev_get_by_name +EXPORT_SYMBOL vmlinux 0xec71e66f filemap_release_folio +EXPORT_SYMBOL vmlinux 0xec78c05a dmam_free_coherent +EXPORT_SYMBOL vmlinux 0xec918a03 flow_rule_match_vlan +EXPORT_SYMBOL vmlinux 0xec9cd48d md_write_inc +EXPORT_SYMBOL vmlinux 0xeca918c3 ppp_register_channel +EXPORT_SYMBOL vmlinux 0xeca957d1 __bitmap_and +EXPORT_SYMBOL vmlinux 0xecac8407 __memcpy +EXPORT_SYMBOL vmlinux 0xecad9118 pcim_iomap_table +EXPORT_SYMBOL vmlinux 0xecaf1a72 seq_hex_dump +EXPORT_SYMBOL vmlinux 0xecc05de5 __getblk_gfp +EXPORT_SYMBOL vmlinux 0xecc7c868 __x86_indirect_jump_thunk_r9 +EXPORT_SYMBOL vmlinux 0xece784c2 rb_first +EXPORT_SYMBOL vmlinux 0xece951b2 tcp_sock_set_keepidle +EXPORT_SYMBOL vmlinux 0xecfd68ef acpi_get_node +EXPORT_SYMBOL vmlinux 0xed00c4fb acpi_os_printf +EXPORT_SYMBOL vmlinux 0xed130698 lock_sock_nested +EXPORT_SYMBOL vmlinux 0xed1f5a1a set_anon_super_fc +EXPORT_SYMBOL vmlinux 0xed34ebbc acpi_any_gpe_status_set +EXPORT_SYMBOL vmlinux 0xed55f929 acpi_os_unmap_generic_address +EXPORT_SYMBOL vmlinux 0xed656e30 udp_encap_disable +EXPORT_SYMBOL vmlinux 0xed7624e5 flow_block_cb_alloc +EXPORT_SYMBOL vmlinux 0xed779c37 phy_connect +EXPORT_SYMBOL vmlinux 0xed963202 netif_tx_lock +EXPORT_SYMBOL vmlinux 0xeda041d4 get_inode_acl +EXPORT_SYMBOL vmlinux 0xeda2e038 scsi_cmd_allowed +EXPORT_SYMBOL vmlinux 0xedb368be __serio_register_port +EXPORT_SYMBOL vmlinux 0xedbaee5e nla_strcmp +EXPORT_SYMBOL vmlinux 0xedc03953 iounmap +EXPORT_SYMBOL vmlinux 0xedc818c3 tty_port_put +EXPORT_SYMBOL vmlinux 0xedc90db5 d_hash_and_lookup +EXPORT_SYMBOL vmlinux 0xedd17b31 sock_get_timeout +EXPORT_SYMBOL vmlinux 0xee0118df aperture_remove_conflicting_devices +EXPORT_SYMBOL vmlinux 0xee0bbb38 __skb_gso_segment +EXPORT_SYMBOL vmlinux 0xee1afa99 simple_get_link +EXPORT_SYMBOL vmlinux 0xee1e33ff udp_gro_complete +EXPORT_SYMBOL vmlinux 0xee236821 fb_blank +EXPORT_SYMBOL vmlinux 0xee2d0fc7 _local_bh_enable +EXPORT_SYMBOL vmlinux 0xee2efcbc cdc_parse_cdc_header +EXPORT_SYMBOL vmlinux 0xee31691c blk_queue_io_min +EXPORT_SYMBOL vmlinux 0xee38a20e __x86_indirect_jump_thunk_r10 +EXPORT_SYMBOL vmlinux 0xee47909f bio_uninit +EXPORT_SYMBOL vmlinux 0xee48afbf pci_resize_resource +EXPORT_SYMBOL vmlinux 0xee5318f8 phy_detach +EXPORT_SYMBOL vmlinux 0xee58e970 fb_add_videomode +EXPORT_SYMBOL vmlinux 0xee67ca34 __traceiter_mmap_lock_released +EXPORT_SYMBOL vmlinux 0xee7d7deb gen_pool_dma_zalloc +EXPORT_SYMBOL vmlinux 0xee7eb9e1 pnp_platform_devices +EXPORT_SYMBOL vmlinux 0xee883b06 __vmalloc_array +EXPORT_SYMBOL vmlinux 0xee8c02e9 vprintk_emit +EXPORT_SYMBOL vmlinux 0xee8c9f77 napi_enable +EXPORT_SYMBOL vmlinux 0xee8d74d6 jiffies64_to_nsecs +EXPORT_SYMBOL vmlinux 0xee91879b rb_first_postorder +EXPORT_SYMBOL vmlinux 0xee9270d1 devfreq_update_status +EXPORT_SYMBOL vmlinux 0xeea9dbaf bitmap_bitremap +EXPORT_SYMBOL vmlinux 0xeeb4ed61 vlan_vid_add +EXPORT_SYMBOL vmlinux 0xeee05fcb sys_copyarea +EXPORT_SYMBOL vmlinux 0xeee2b320 dmaenginem_async_device_register +EXPORT_SYMBOL vmlinux 0xef1c00ae unix_get_socket +EXPORT_SYMBOL vmlinux 0xef1c6e4f bpf_prog_get_type_path +EXPORT_SYMBOL vmlinux 0xef20cdbe seg6_push_hmac +EXPORT_SYMBOL vmlinux 0xef36a848 __x86_indirect_jump_thunk_rdi +EXPORT_SYMBOL vmlinux 0xef394702 pci_read_vpd +EXPORT_SYMBOL vmlinux 0xef4d7a61 md_bitmap_cond_end_sync +EXPORT_SYMBOL vmlinux 0xef711dbd ip_frag_next +EXPORT_SYMBOL vmlinux 0xef7b82d5 agp_generic_destroy_pages +EXPORT_SYMBOL vmlinux 0xef857387 ipv6_dev_get_saddr +EXPORT_SYMBOL vmlinux 0xef966530 param_ops_short +EXPORT_SYMBOL vmlinux 0xef9a7a5f acpi_dev_get_next_match_dev +EXPORT_SYMBOL vmlinux 0xef9aedfc boot_option_idle_override +EXPORT_SYMBOL vmlinux 0xefaf2e4f tcf_queue_work +EXPORT_SYMBOL vmlinux 0xefb618c1 dump_page +EXPORT_SYMBOL vmlinux 0xefbdf42d blkdev_issue_zeroout +EXPORT_SYMBOL vmlinux 0xefc2f1bd __sock_cmsg_send +EXPORT_SYMBOL vmlinux 0xefca0240 generic_key_instantiate +EXPORT_SYMBOL vmlinux 0xefcea2e7 acpi_warning +EXPORT_SYMBOL vmlinux 0xefdac69b udp_flush_pending_frames +EXPORT_SYMBOL vmlinux 0xefde7463 put_cmsg_scm_timestamping +EXPORT_SYMBOL vmlinux 0xefe18d57 inet_addr_type_table +EXPORT_SYMBOL vmlinux 0xefee932c acpi_get_data_full +EXPORT_SYMBOL vmlinux 0xefef5dd5 neigh_resolve_output +EXPORT_SYMBOL vmlinux 0xf0009fee put_pages_list +EXPORT_SYMBOL vmlinux 0xf0031dd7 xfrm_state_check_expire +EXPORT_SYMBOL vmlinux 0xf02aa7a5 skb_copy_and_csum_dev +EXPORT_SYMBOL vmlinux 0xf02aa937 wait_for_completion_interruptible_timeout +EXPORT_SYMBOL vmlinux 0xf039adfa generic_file_fsync +EXPORT_SYMBOL vmlinux 0xf041539f tty_port_hangup +EXPORT_SYMBOL vmlinux 0xf04aa35f set_binfmt +EXPORT_SYMBOL vmlinux 0xf056445d pci_request_regions_exclusive +EXPORT_SYMBOL vmlinux 0xf05c32ad rdmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf06209a1 mmc_can_secure_erase_trim +EXPORT_SYMBOL vmlinux 0xf07b07f6 sg_free_append_table +EXPORT_SYMBOL vmlinux 0xf0910ebc nla_reserve_64bit +EXPORT_SYMBOL vmlinux 0xf09b5d9a get_zeroed_page +EXPORT_SYMBOL vmlinux 0xf0abdbb3 vfs_path_parent_lookup +EXPORT_SYMBOL vmlinux 0xf0b5c3b1 scsi_unblock_requests +EXPORT_SYMBOL vmlinux 0xf0b82aea __inet_hash +EXPORT_SYMBOL vmlinux 0xf0b9a4b9 commit_creds +EXPORT_SYMBOL vmlinux 0xf0bed729 take_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf0cfb397 pci_try_set_mwi +EXPORT_SYMBOL vmlinux 0xf0d68171 vme_irq_generate +EXPORT_SYMBOL vmlinux 0xf0de3f47 dcb_getapp +EXPORT_SYMBOL vmlinux 0xf0fdf6cb __stack_chk_fail +EXPORT_SYMBOL vmlinux 0xf10004a6 update_devfreq +EXPORT_SYMBOL vmlinux 0xf10247fb pci_match_id +EXPORT_SYMBOL vmlinux 0xf109d727 pci_alloc_irq_vectors +EXPORT_SYMBOL vmlinux 0xf11dd46e _page_poisoning_enabled_early +EXPORT_SYMBOL vmlinux 0xf1295d80 blk_mq_stop_hw_queues +EXPORT_SYMBOL vmlinux 0xf12aacdb __inet_stream_connect +EXPORT_SYMBOL vmlinux 0xf12d54ec mark_buffer_dirty_inode +EXPORT_SYMBOL vmlinux 0xf14cd487 nf_register_net_hooks +EXPORT_SYMBOL vmlinux 0xf177cfc6 genphy_c45_ethtool_set_eee +EXPORT_SYMBOL vmlinux 0xf1848ee2 acpi_install_sci_handler +EXPORT_SYMBOL vmlinux 0xf18d3482 bio_put +EXPORT_SYMBOL vmlinux 0xf195c682 fb_invert_cmaps +EXPORT_SYMBOL vmlinux 0xf1969a8e __usecs_to_jiffies +EXPORT_SYMBOL vmlinux 0xf1a65f7b zstd_reset_dstream +EXPORT_SYMBOL vmlinux 0xf1a68107 acpi_processor_preregister_performance +EXPORT_SYMBOL vmlinux 0xf1a9ef3d __tracepoint_dma_fence_emit +EXPORT_SYMBOL vmlinux 0xf1bc4f54 key_instantiate_and_link +EXPORT_SYMBOL vmlinux 0xf1d15474 keyring_alloc +EXPORT_SYMBOL vmlinux 0xf1db1704 nla_memcpy +EXPORT_SYMBOL vmlinux 0xf1e046cc panic +EXPORT_SYMBOL vmlinux 0xf1e98c74 avenrun +EXPORT_SYMBOL vmlinux 0xf1f153dc ppp_dev_name +EXPORT_SYMBOL vmlinux 0xf1f88a0e dm_kcopyd_prepare_callback +EXPORT_SYMBOL vmlinux 0xf2195ae3 __pskb_copy_fclone +EXPORT_SYMBOL vmlinux 0xf2357ebe set_page_dirty +EXPORT_SYMBOL vmlinux 0xf2394d0b blk_rq_unmap_user +EXPORT_SYMBOL vmlinux 0xf23fcb99 __kfifo_in +EXPORT_SYMBOL vmlinux 0xf257e42f _copy_to_iter +EXPORT_SYMBOL vmlinux 0xf2628676 zstd_compress_cctx +EXPORT_SYMBOL vmlinux 0xf27d969f __skb_get_hash +EXPORT_SYMBOL vmlinux 0xf28cf0ae __hw_addr_init +EXPORT_SYMBOL vmlinux 0xf28ed6e2 machine_to_phys_nr +EXPORT_SYMBOL vmlinux 0xf29403e5 acpi_install_table_handler +EXPORT_SYMBOL vmlinux 0xf2a8efae dm_kcopyd_do_callback +EXPORT_SYMBOL vmlinux 0xf2aca98d pci_pme_capable +EXPORT_SYMBOL vmlinux 0xf2b1720d ip6_dst_hoplimit +EXPORT_SYMBOL vmlinux 0xf2b67a40 find_inode_rcu +EXPORT_SYMBOL vmlinux 0xf2b81b64 arch_io_reserve_memtype_wc +EXPORT_SYMBOL vmlinux 0xf2bdbf71 blk_get_queue +EXPORT_SYMBOL vmlinux 0xf2be37cc __mmap_lock_do_trace_acquire_returned +EXPORT_SYMBOL vmlinux 0xf2c43f3f zlib_deflate +EXPORT_SYMBOL vmlinux 0xf2c507da d_splice_alias +EXPORT_SYMBOL vmlinux 0xf2d3424c neigh_lookup +EXPORT_SYMBOL vmlinux 0xf2d89efa stream_open +EXPORT_SYMBOL vmlinux 0xf2e5bd87 security_free_mnt_opts +EXPORT_SYMBOL vmlinux 0xf2e9c057 phy_advertise_supported +EXPORT_SYMBOL vmlinux 0xf2ea0789 sock_bind_add +EXPORT_SYMBOL vmlinux 0xf2f53617 memregion_free +EXPORT_SYMBOL vmlinux 0xf2fedd97 mdio_driver_register +EXPORT_SYMBOL vmlinux 0xf30965ac iosf_mbi_register_pmic_bus_access_notifier +EXPORT_SYMBOL vmlinux 0xf3169391 flow_rule_match_enc_ports +EXPORT_SYMBOL vmlinux 0xf346231f seq_list_start_head +EXPORT_SYMBOL vmlinux 0xf34757a6 mipi_dsi_dcs_set_pixel_format +EXPORT_SYMBOL vmlinux 0xf353a698 register_module_notifier +EXPORT_SYMBOL vmlinux 0xf356a864 sb_set_blocksize +EXPORT_SYMBOL vmlinux 0xf3611cb8 __mod_node_page_state +EXPORT_SYMBOL vmlinux 0xf3621fe2 mtree_alloc_rrange +EXPORT_SYMBOL vmlinux 0xf3663037 skb_put +EXPORT_SYMBOL vmlinux 0xf36d3511 pci_alloc_irq_vectors_affinity +EXPORT_SYMBOL vmlinux 0xf36f42a9 slhc_uncompress +EXPORT_SYMBOL vmlinux 0xf380f269 iov_iter_gap_alignment +EXPORT_SYMBOL vmlinux 0xf390f6f1 __bitmap_andnot +EXPORT_SYMBOL vmlinux 0xf3916987 global_cursor_default +EXPORT_SYMBOL vmlinux 0xf3932313 mb_cache_entry_wait_unused +EXPORT_SYMBOL vmlinux 0xf39b7be2 genphy_resume +EXPORT_SYMBOL vmlinux 0xf39d8781 xfrm_lookup_route +EXPORT_SYMBOL vmlinux 0xf3a57892 release_dentry_name_snapshot +EXPORT_SYMBOL vmlinux 0xf3b91da9 ptp_schedule_worker +EXPORT_SYMBOL vmlinux 0xf3c3cd3e ip_sock_set_recverr +EXPORT_SYMBOL vmlinux 0xf3e0e1df allocate_resource +EXPORT_SYMBOL vmlinux 0xf3e46856 blk_queue_max_segment_size +EXPORT_SYMBOL vmlinux 0xf3e58196 eth_get_headlen +EXPORT_SYMBOL vmlinux 0xf3f139bb sk_stream_error +EXPORT_SYMBOL vmlinux 0xf3fc1c60 always_delete_dentry +EXPORT_SYMBOL vmlinux 0xf41d365e page_get_link +EXPORT_SYMBOL vmlinux 0xf4241d04 __zerocopy_sg_from_iter +EXPORT_SYMBOL vmlinux 0xf437cd2c rproc_coredump_add_segment +EXPORT_SYMBOL vmlinux 0xf43d2caa acpi_remove_interface +EXPORT_SYMBOL vmlinux 0xf4478562 filemap_range_has_page +EXPORT_SYMBOL vmlinux 0xf44a904a net_ns_barrier +EXPORT_SYMBOL vmlinux 0xf44d497a dma_pool_create +EXPORT_SYMBOL vmlinux 0xf44f852a phy_check_valid +EXPORT_SYMBOL vmlinux 0xf46ca592 padata_set_cpumask +EXPORT_SYMBOL vmlinux 0xf474c21c bitmap_print_to_pagebuf +EXPORT_SYMBOL vmlinux 0xf474fdcb kfree_const +EXPORT_SYMBOL vmlinux 0xf47771e6 fs_lookup_param +EXPORT_SYMBOL vmlinux 0xf4918719 tcf_em_tree_destroy +EXPORT_SYMBOL vmlinux 0xf49b5090 __dynamic_netdev_dbg +EXPORT_SYMBOL vmlinux 0xf4a565fd wrmsr_on_cpus +EXPORT_SYMBOL vmlinux 0xf4b754fd acpi_resources_are_enforced +EXPORT_SYMBOL vmlinux 0xf4db35bc stpcpy +EXPORT_SYMBOL vmlinux 0xf4ed1dd5 fs_param_is_u64 +EXPORT_SYMBOL vmlinux 0xf4f14de6 rtnl_trylock +EXPORT_SYMBOL vmlinux 0xf5146f4b pci_scan_root_bus +EXPORT_SYMBOL vmlinux 0xf53d4c26 qdisc_class_hash_destroy +EXPORT_SYMBOL vmlinux 0xf5568691 page_pool_alloc_frag +EXPORT_SYMBOL vmlinux 0xf55ae5fa __skb_warn_lro_forwarding +EXPORT_SYMBOL vmlinux 0xf58a2213 ppp_unit_number +EXPORT_SYMBOL vmlinux 0xf58e1cd7 fscrypt_zeroout_range +EXPORT_SYMBOL vmlinux 0xf593d455 ip6_route_me_harder +EXPORT_SYMBOL vmlinux 0xf59c7f9c pldmfw_op_pci_match_record +EXPORT_SYMBOL vmlinux 0xf5a20ed2 __genradix_prealloc +EXPORT_SYMBOL vmlinux 0xf5a5c84c msrs_alloc +EXPORT_SYMBOL vmlinux 0xf5a8dba5 kthread_stop +EXPORT_SYMBOL vmlinux 0xf5d21dad nvdimm_namespace_disk_name +EXPORT_SYMBOL vmlinux 0xf5d8528e dquot_transfer +EXPORT_SYMBOL vmlinux 0xf5dcf929 __x86_indirect_jump_thunk_r8 +EXPORT_SYMBOL vmlinux 0xf5e67af4 mdiobus_c45_read_nested +EXPORT_SYMBOL vmlinux 0xf5e7ea40 ktime_get_coarse_ts64 +EXPORT_SYMBOL vmlinux 0xf60ab926 acpi_get_event_status +EXPORT_SYMBOL vmlinux 0xf625a340 dput +EXPORT_SYMBOL vmlinux 0xf6282bb9 netif_inherit_tso_max +EXPORT_SYMBOL vmlinux 0xf6380a4e __inode_sub_bytes +EXPORT_SYMBOL vmlinux 0xf643d104 hsiphash_4u32 +EXPORT_SYMBOL vmlinux 0xf65f1dbd __x86_indirect_jump_thunk_rsi +EXPORT_SYMBOL vmlinux 0xf6615577 key_invalidate +EXPORT_SYMBOL vmlinux 0xf665f74f sock_load_diag_module +EXPORT_SYMBOL vmlinux 0xf6701562 udp6_seq_ops +EXPORT_SYMBOL vmlinux 0xf67a3ee2 qdisc_watchdog_init_clockid +EXPORT_SYMBOL vmlinux 0xf68285c0 register_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xf6936608 fib_notifier_ops_register +EXPORT_SYMBOL vmlinux 0xf6a247a5 wrap_directory_iterator +EXPORT_SYMBOL vmlinux 0xf6a6d07d pci_add_new_bus +EXPORT_SYMBOL vmlinux 0xf6b4680f pci_restore_state +EXPORT_SYMBOL vmlinux 0xf6bb7d0b dquot_file_open +EXPORT_SYMBOL vmlinux 0xf6c49935 __vlan_find_dev_deep_rcu +EXPORT_SYMBOL vmlinux 0xf6d2074a __SCK__tp_func_read_msr +EXPORT_SYMBOL vmlinux 0xf6ebc03b net_ratelimit +EXPORT_SYMBOL vmlinux 0xf6ebee55 tcp_fastopen_defer_connect +EXPORT_SYMBOL vmlinux 0xf6f9d58d init_on_free +EXPORT_SYMBOL vmlinux 0xf6fc8383 inode_to_bdi +EXPORT_SYMBOL vmlinux 0xf6fc8791 __bitmap_xor +EXPORT_SYMBOL vmlinux 0xf701b0ac _copy_from_iter_nocache +EXPORT_SYMBOL vmlinux 0xf703a1db input_get_poll_interval +EXPORT_SYMBOL vmlinux 0xf709fbfd xfrm_parse_spi +EXPORT_SYMBOL vmlinux 0xf7136bb7 dma_fence_chain_init +EXPORT_SYMBOL vmlinux 0xf71ba2ac param_set_long +EXPORT_SYMBOL vmlinux 0xf71cbfc8 tcf_em_tree_dump +EXPORT_SYMBOL vmlinux 0xf722c677 blk_integrity_register +EXPORT_SYMBOL vmlinux 0xf723934f __x86_indirect_jump_thunk_r11 +EXPORT_SYMBOL vmlinux 0xf7370f56 system_state +EXPORT_SYMBOL vmlinux 0xf738d1be register_blocking_lsm_notifier +EXPORT_SYMBOL vmlinux 0xf75b0db6 ip_mc_join_group +EXPORT_SYMBOL vmlinux 0xf77387ff __traceiter_kmem_cache_alloc +EXPORT_SYMBOL vmlinux 0xf773f99b devfreq_register_notifier +EXPORT_SYMBOL vmlinux 0xf77512b4 phy_drivers_unregister +EXPORT_SYMBOL vmlinux 0xf776fe3b __f_setown +EXPORT_SYMBOL vmlinux 0xf779f975 tty_port_block_til_ready +EXPORT_SYMBOL vmlinux 0xf783b549 ipv6_skip_exthdr +EXPORT_SYMBOL vmlinux 0xf785e1bc xfrm4_rcv +EXPORT_SYMBOL vmlinux 0xf79ca3bb acpi_remove_gpe_block +EXPORT_SYMBOL vmlinux 0xf7b2786e pci_release_selected_regions +EXPORT_SYMBOL vmlinux 0xf7b28cbe sk_reset_timer +EXPORT_SYMBOL vmlinux 0xf7c825f2 mmc_get_card +EXPORT_SYMBOL vmlinux 0xf7d31de9 kstrtoul_from_user +EXPORT_SYMBOL vmlinux 0xf7d947f8 jbd2_journal_errno +EXPORT_SYMBOL vmlinux 0xf7da6e6f acpi_unload_table +EXPORT_SYMBOL vmlinux 0xf7e05d70 agp_create_memory +EXPORT_SYMBOL vmlinux 0xf7e2c6ae kill_litter_super +EXPORT_SYMBOL vmlinux 0xf7e967f2 skb_headers_offset_update +EXPORT_SYMBOL vmlinux 0xf7ef9a79 iosf_mbi_punit_release +EXPORT_SYMBOL vmlinux 0xf7f5915a skb_clone_sk +EXPORT_SYMBOL vmlinux 0xf808d70b __xfrm_dst_lookup +EXPORT_SYMBOL vmlinux 0xf80be44e rdmsr_safe_on_cpu +EXPORT_SYMBOL vmlinux 0xf811e69d scsi_eh_flush_done_q +EXPORT_SYMBOL vmlinux 0xf812cff6 memscan +EXPORT_SYMBOL vmlinux 0xf81f05a7 nexthop_set_hw_flags +EXPORT_SYMBOL vmlinux 0xf824f102 pm860x_bulk_write +EXPORT_SYMBOL vmlinux 0xf82a7671 genphy_c45_ethtool_get_eee +EXPORT_SYMBOL vmlinux 0xf82ec573 rb_prev +EXPORT_SYMBOL vmlinux 0xf83005b6 jbd2_journal_get_undo_access +EXPORT_SYMBOL vmlinux 0xf8316d79 request_firmware +EXPORT_SYMBOL vmlinux 0xf83da714 netif_receive_skb +EXPORT_SYMBOL vmlinux 0xf846cbc7 md_write_end +EXPORT_SYMBOL vmlinux 0xf84bd6ee bpf_stats_enabled_key +EXPORT_SYMBOL vmlinux 0xf86e9f76 dget_parent +EXPORT_SYMBOL vmlinux 0xf87b519e mdiobus_get_phy +EXPORT_SYMBOL vmlinux 0xf885dd01 vfs_iter_read +EXPORT_SYMBOL vmlinux 0xf88ecec4 kvmemdup +EXPORT_SYMBOL vmlinux 0xf8a862fc md_integrity_register +EXPORT_SYMBOL vmlinux 0xf8b3893c pci_wake_from_d3 +EXPORT_SYMBOL vmlinux 0xf8b71365 kernel_read +EXPORT_SYMBOL vmlinux 0xf8bab4fb fb_firmware_edid +EXPORT_SYMBOL vmlinux 0xf8c44b9c vme_dma_list_add +EXPORT_SYMBOL vmlinux 0xf8d07858 bitmap_from_arr32 +EXPORT_SYMBOL vmlinux 0xf8d2bc2c zstd_find_frame_compressed_size +EXPORT_SYMBOL vmlinux 0xf8d6e9f4 napi_complete_done +EXPORT_SYMBOL vmlinux 0xf8e7dfc7 _dev_warn +EXPORT_SYMBOL vmlinux 0xf8f61ebc wake_up_var +EXPORT_SYMBOL vmlinux 0xf904a60f input_release_device +EXPORT_SYMBOL vmlinux 0xf90a1e85 __x86_indirect_thunk_r8 +EXPORT_SYMBOL vmlinux 0xf920a701 jbd2_journal_load +EXPORT_SYMBOL vmlinux 0xf93fd09c fb_find_mode_cvt +EXPORT_SYMBOL vmlinux 0xf94536c2 proc_dointvec +EXPORT_SYMBOL vmlinux 0xf9463b35 xfrm4_protocol_deregister +EXPORT_SYMBOL vmlinux 0xf9526201 xfrm6_rcv +EXPORT_SYMBOL vmlinux 0xf96c3233 xfrm_user_policy +EXPORT_SYMBOL vmlinux 0xf9722676 twl_i2c_write +EXPORT_SYMBOL vmlinux 0xf97e3623 scsi_change_queue_depth +EXPORT_SYMBOL vmlinux 0xf983f31c input_setup_polling +EXPORT_SYMBOL vmlinux 0xf9877b62 mmc_can_trim +EXPORT_SYMBOL vmlinux 0xf98ebe98 crypto_sha256_update +EXPORT_SYMBOL vmlinux 0xf9a482f9 msleep +EXPORT_SYMBOL vmlinux 0xf9c0b663 strlcat +EXPORT_SYMBOL vmlinux 0xf9c1aa0d __tracepoint_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xf9c53ddf __insert_inode_hash +EXPORT_SYMBOL vmlinux 0xf9ca2eb4 kstrtoint_from_user +EXPORT_SYMBOL vmlinux 0xf9cdddc3 __cpuhp_remove_state_cpuslocked +EXPORT_SYMBOL vmlinux 0xf9e07f75 agp_generic_alloc_pages +EXPORT_SYMBOL vmlinux 0xf9ead8a9 sk_ioctl +EXPORT_SYMBOL vmlinux 0xfa042227 gnet_stats_add_basic +EXPORT_SYMBOL vmlinux 0xfa08c34a page_offline_end +EXPORT_SYMBOL vmlinux 0xfa0b22a4 mmc_gpiod_request_cd +EXPORT_SYMBOL vmlinux 0xfa17c1b4 tty_port_tty_set +EXPORT_SYMBOL vmlinux 0xfa1e2e93 scsi_dma_unmap +EXPORT_SYMBOL vmlinux 0xfa297415 acpi_map_pxm_to_node +EXPORT_SYMBOL vmlinux 0xfa2e5f32 i2c_smbus_pec +EXPORT_SYMBOL vmlinux 0xfa4726cd __block_write_full_folio +EXPORT_SYMBOL vmlinux 0xfa4d2f03 __nla_parse +EXPORT_SYMBOL vmlinux 0xfa4e3f16 fifo_create_dflt +EXPORT_SYMBOL vmlinux 0xfa599bb2 netlink_register_notifier +EXPORT_SYMBOL vmlinux 0xfa66288c i2c_verify_client +EXPORT_SYMBOL vmlinux 0xfa70407a pci_find_bus +EXPORT_SYMBOL vmlinux 0xfa7f5caf netdev_core_stats_alloc +EXPORT_SYMBOL vmlinux 0xfa8e00c9 pcim_pin_device +EXPORT_SYMBOL vmlinux 0xfaaa12d0 _page_poisoning_enabled +EXPORT_SYMBOL vmlinux 0xfaacf5ff generic_file_readonly_mmap +EXPORT_SYMBOL vmlinux 0xfaadb081 dev_change_flags +EXPORT_SYMBOL vmlinux 0xfab72305 pcie_print_link_status +EXPORT_SYMBOL vmlinux 0xfab7d7a0 udp_disconnect +EXPORT_SYMBOL vmlinux 0xfabb9554 inet_register_protosw +EXPORT_SYMBOL vmlinux 0xfac8865f sysctl_wmem_max +EXPORT_SYMBOL vmlinux 0xfacd2f03 proc_set_size +EXPORT_SYMBOL vmlinux 0xfadeee9d sync_file_create +EXPORT_SYMBOL vmlinux 0xfaecb308 memcg_bpf_enabled_key +EXPORT_SYMBOL vmlinux 0xfaede017 pm860x_bulk_read +EXPORT_SYMBOL vmlinux 0xfaeef5ab filemap_get_folios_contig +EXPORT_SYMBOL vmlinux 0xfb0c4c1d fddi_type_trans +EXPORT_SYMBOL vmlinux 0xfb348fea fault_in_safe_writeable +EXPORT_SYMBOL vmlinux 0xfb377869 mdio_device_free +EXPORT_SYMBOL vmlinux 0xfb384d37 kasprintf +EXPORT_SYMBOL vmlinux 0xfb4704a8 inode_maybe_inc_iversion +EXPORT_SYMBOL vmlinux 0xfb578fc5 memset +EXPORT_SYMBOL vmlinux 0xfb6af58d recalc_sigpending +EXPORT_SYMBOL vmlinux 0xfb7c5fae gro_find_receive_by_type +EXPORT_SYMBOL vmlinux 0xfb86647a md_unregister_thread +EXPORT_SYMBOL vmlinux 0xfb8d9b66 max8998_write_reg +EXPORT_SYMBOL vmlinux 0xfb957ba3 folio_wait_private_2_killable +EXPORT_SYMBOL vmlinux 0xfba7a5f5 __get_random_u32_below +EXPORT_SYMBOL vmlinux 0xfba7ddd2 match_u64 +EXPORT_SYMBOL vmlinux 0xfbaaf01e console_lock +EXPORT_SYMBOL vmlinux 0xfbab1bb1 ioread8_rep +EXPORT_SYMBOL vmlinux 0xfbad3cf0 scsi_normalize_sense +EXPORT_SYMBOL vmlinux 0xfbb8a761 strscpy_pad +EXPORT_SYMBOL vmlinux 0xfbc4dbd9 tcp_rcv_established +EXPORT_SYMBOL vmlinux 0xfbc4f89e io_schedule_timeout +EXPORT_SYMBOL vmlinux 0xfbd24166 twl6040_clear_bits +EXPORT_SYMBOL vmlinux 0xfbd3307f ns_capable +EXPORT_SYMBOL vmlinux 0xfbe215e4 sg_next +EXPORT_SYMBOL vmlinux 0xfbe8ee28 acpi_get_table_by_index +EXPORT_SYMBOL vmlinux 0xfbfdb4f1 folio_mapping +EXPORT_SYMBOL vmlinux 0xfc03267d tty_register_device +EXPORT_SYMBOL vmlinux 0xfc0fd966 bioset_integrity_create +EXPORT_SYMBOL vmlinux 0xfc166002 input_register_handler +EXPORT_SYMBOL vmlinux 0xfc18a527 fscrypt_fname_disk_to_usr +EXPORT_SYMBOL vmlinux 0xfc1bc93c vfs_mkobj +EXPORT_SYMBOL vmlinux 0xfc1f562d xfrm_alloc_spi +EXPORT_SYMBOL vmlinux 0xfc220090 fuse_dequeue_forget +EXPORT_SYMBOL vmlinux 0xfc280f7d has_capability +EXPORT_SYMBOL vmlinux 0xfc336d2e __wake_up_bit +EXPORT_SYMBOL vmlinux 0xfc33e36f skb_trim +EXPORT_SYMBOL vmlinux 0xfc39e32f ioport_unmap +EXPORT_SYMBOL vmlinux 0xfc39fb67 rt6_lookup +EXPORT_SYMBOL vmlinux 0xfc3d53cb __put_user_nocheck_1 +EXPORT_SYMBOL vmlinux 0xfc4152fc ec_read +EXPORT_SYMBOL vmlinux 0xfc421e79 gnet_stats_add_queue +EXPORT_SYMBOL vmlinux 0xfc618856 dev_get_flags +EXPORT_SYMBOL vmlinux 0xfc6bfc8b sock_kzfree_s +EXPORT_SYMBOL vmlinux 0xfc6eb907 pcim_set_mwi +EXPORT_SYMBOL vmlinux 0xfc7025b2 mmc_wait_for_req_done +EXPORT_SYMBOL vmlinux 0xfc80d230 xp_raw_get_dma +EXPORT_SYMBOL vmlinux 0xfc92b2d9 dmam_alloc_attrs +EXPORT_SYMBOL vmlinux 0xfcb65901 input_unregister_device +EXPORT_SYMBOL vmlinux 0xfccc3934 pci_enable_link_state +EXPORT_SYMBOL vmlinux 0xfcd0986c pci_request_selected_regions +EXPORT_SYMBOL vmlinux 0xfcd1819a hdmi_spd_infoframe_check +EXPORT_SYMBOL vmlinux 0xfcdbd343 tty_flip_buffer_push +EXPORT_SYMBOL vmlinux 0xfcec0987 enable_irq +EXPORT_SYMBOL vmlinux 0xfcfada86 __xfrm_decode_session +EXPORT_SYMBOL vmlinux 0xfd259faa kernel_tmpfile_open +EXPORT_SYMBOL vmlinux 0xfd60fe59 agp_copy_info +EXPORT_SYMBOL vmlinux 0xfd648920 netif_set_real_num_rx_queues +EXPORT_SYMBOL vmlinux 0xfd6fe174 xfrm6_input_addr +EXPORT_SYMBOL vmlinux 0xfd870caa __tracepoint_kfree +EXPORT_SYMBOL vmlinux 0xfd8d1743 adjust_managed_page_count +EXPORT_SYMBOL vmlinux 0xfd8d1794 __traceiter_mmap_lock_acquire_returned +EXPORT_SYMBOL vmlinux 0xfd93ee35 ioremap_wc +EXPORT_SYMBOL vmlinux 0xfda0ad9b cdev_set_parent +EXPORT_SYMBOL vmlinux 0xfda67c94 __tracepoint_dma_fence_signaled +EXPORT_SYMBOL vmlinux 0xfda9a3f1 intel_gmch_enable_gtt +EXPORT_SYMBOL vmlinux 0xfdb4682c i2c_smbus_write_byte_data +EXPORT_SYMBOL vmlinux 0xfdb6576f acpi_set_debugger_thread_id +EXPORT_SYMBOL vmlinux 0xfdcb4ed3 acpi_os_get_line +EXPORT_SYMBOL vmlinux 0xfdcc8a0e fb_find_best_display +EXPORT_SYMBOL vmlinux 0xfdd31a27 genphy_setup_forced +EXPORT_SYMBOL vmlinux 0xfdd4216d pcibios_align_resource +EXPORT_SYMBOL vmlinux 0xfdd6faa0 acpi_pm_device_sleep_state +EXPORT_SYMBOL vmlinux 0xfddeb056 efi +EXPORT_SYMBOL vmlinux 0xfde42ed9 __pskb_pull_tail +EXPORT_SYMBOL vmlinux 0xfdfb792f amd_iommu_pc_supported +EXPORT_SYMBOL vmlinux 0xfe00159c genphy_read_status_fixed +EXPORT_SYMBOL vmlinux 0xfe029963 unregister_inetaddr_notifier +EXPORT_SYMBOL vmlinux 0xfe052363 ioread64_lo_hi +EXPORT_SYMBOL vmlinux 0xfe07c3fa iov_iter_init +EXPORT_SYMBOL vmlinux 0xfe1c9ea5 sg_pcopy_from_buffer +EXPORT_SYMBOL vmlinux 0xfe1d2e94 key_create_or_update +EXPORT_SYMBOL vmlinux 0xfe215b97 proc_do_large_bitmap +EXPORT_SYMBOL vmlinux 0xfe3c8d38 __SCK__tp_func_spi_transfer_start +EXPORT_SYMBOL vmlinux 0xfe487975 init_wait_entry +EXPORT_SYMBOL vmlinux 0xfe5d4bb2 sys_tz +EXPORT_SYMBOL vmlinux 0xfe696661 blk_mq_init_allocated_queue +EXPORT_SYMBOL vmlinux 0xfe71ae99 __tracepoint_mmap_lock_start_locking +EXPORT_SYMBOL vmlinux 0xfe7a685b jbd2_journal_blocks_per_page +EXPORT_SYMBOL vmlinux 0xfe7cac8d dqget +EXPORT_SYMBOL vmlinux 0xfe85d7e1 nf_reinject +EXPORT_SYMBOL vmlinux 0xfe8a6b2d build_skb_around +EXPORT_SYMBOL vmlinux 0xfe8c61f0 _raw_read_lock +EXPORT_SYMBOL vmlinux 0xfe916dc6 hex_dump_to_buffer +EXPORT_SYMBOL vmlinux 0xfe97ad0e generic_set_encrypted_ci_d_ops +EXPORT_SYMBOL vmlinux 0xfe9ebbbb acpi_osi_is_win8 +EXPORT_SYMBOL vmlinux 0xfea635dd netif_tx_stop_all_queues +EXPORT_SYMBOL vmlinux 0xfeb202e5 file_update_time +EXPORT_SYMBOL vmlinux 0xfeb7a0e0 vlan_ioctl_set +EXPORT_SYMBOL vmlinux 0xfeba203e jbd2_journal_unlock_updates +EXPORT_SYMBOL vmlinux 0xfebcb7f9 param_ops_dyndbg_classes +EXPORT_SYMBOL vmlinux 0xfed73186 tty_wait_until_sent +EXPORT_SYMBOL vmlinux 0xfedcdb60 seq_hlist_next_percpu +EXPORT_SYMBOL vmlinux 0xfee43d7d inet_select_addr +EXPORT_SYMBOL vmlinux 0xfeea58f2 srso_alias_untrain_ret +EXPORT_SYMBOL vmlinux 0xfeebc7c4 __kfifo_from_user_r +EXPORT_SYMBOL vmlinux 0xfeeda4dc xen_alloc_unpopulated_pages +EXPORT_SYMBOL vmlinux 0xfef216eb _raw_spin_trylock +EXPORT_SYMBOL vmlinux 0xfefcb98e vme_dma_vme_attribute +EXPORT_SYMBOL vmlinux 0xff02aec3 blk_mq_end_request +EXPORT_SYMBOL vmlinux 0xff19c3ff clk_bulk_get +EXPORT_SYMBOL vmlinux 0xff1e9dd8 seq_list_start +EXPORT_SYMBOL vmlinux 0xff282521 rfkill_register +EXPORT_SYMBOL vmlinux 0xff28757b netdev_change_features +EXPORT_SYMBOL vmlinux 0xff347968 mdiobus_register_device +EXPORT_SYMBOL vmlinux 0xff43e658 iget5_locked +EXPORT_SYMBOL vmlinux 0xff52848a __SCT__tp_func_kmem_cache_free +EXPORT_SYMBOL vmlinux 0xff630c1b d_instantiate +EXPORT_SYMBOL vmlinux 0xff6878cf fb_default_cmap +EXPORT_SYMBOL vmlinux 0xff7e3314 __i2c_smbus_xfer +EXPORT_SYMBOL vmlinux 0xff863b62 vm_insert_page +EXPORT_SYMBOL vmlinux 0xff87cd18 lockref_get_not_dead +EXPORT_SYMBOL vmlinux 0xff9c6d19 vga_switcheroo_unlock_ddc +EXPORT_SYMBOL vmlinux 0xffb1e93d jbd2_journal_revoke +EXPORT_SYMBOL vmlinux 0xffb509ff call_netdevice_notifiers +EXPORT_SYMBOL vmlinux 0xffb7c514 ida_free +EXPORT_SYMBOL vmlinux 0xffc08245 ip_tunnel_parse_protocol +EXPORT_SYMBOL vmlinux 0xffc30c3a acpi_processor_power_init_bm_check +EXPORT_SYMBOL vmlinux 0xffc4f200 zstd_compress_stream +EXPORT_SYMBOL vmlinux 0xffc4f3fd task_lookup_next_fd_rcu +EXPORT_SYMBOL vmlinux 0xffcc4ec7 tcp_bpf_bypass_getsockopt +EXPORT_SYMBOL vmlinux 0xffcd7f49 iosf_mbi_punit_acquire +EXPORT_SYMBOL vmlinux 0xffd1df3b is_nd_dax +EXPORT_SYMBOL vmlinux 0xffe9c7ff dquot_writeback_dquots +EXPORT_SYMBOL vmlinux 0xffeedf6a delayed_work_timer_fn +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0x6790ca30 aria_aesni_avx_gfni_decrypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0x78ac3a58 aria_aesni_avx_decrypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0xa29489b9 aria_aesni_avx_encrypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0xa297f1e6 aria_aesni_avx_gfni_ctr_crypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0xb24a6f4f aria_aesni_avx_ctr_crypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx-x86_64 0xbda879d1 aria_aesni_avx_gfni_encrypt_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0x4e91f572 aria_aesni_avx2_gfni_decrypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0x720be3e2 aria_aesni_avx2_decrypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0x8f7b6257 aria_aesni_avx2_ctr_crypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0x94a94693 aria_aesni_avx2_gfni_encrypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0xa8335003 aria_aesni_avx2_encrypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/aria-aesni-avx2-x86_64 0xf90ca741 aria_aesni_avx2_gfni_ctr_crypt_32way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x2c8b5dbf camellia_ecb_enc_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x339c33c5 camellia_cbc_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-aesni-avx-x86_64 0x8b44ee75 camellia_ecb_dec_16way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x0b901549 camellia_dec_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x69f4ff25 __camellia_enc_blk_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x8d725052 __camellia_setkey +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0x8d9b761c camellia_decrypt_cbc_2way +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xfe729ed6 __camellia_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/camellia-x86_64 0xff09bd65 camellia_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x194b2841 serpent_ecb_enc_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x38800636 serpent_cbc_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/serpent-avx-x86_64 0x4140192a serpent_ecb_dec_8way_avx +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0x28b2885a sm4_avx_ecb_encrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0x29c4193d sm4_cbc_encrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0x3890c58a sm4_avx_ctr_crypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0x829b7a60 sm4_cfb_encrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0x92f67c46 sm4_avx_cfb_decrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0xee3c9cc2 sm4_avx_ecb_decrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/sm4-aesni-avx-x86_64 0xfc637237 sm4_avx_cbc_decrypt +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x1f491d36 twofish_dec_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64 0x7c7bf6e0 twofish_enc_blk +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0x92a51c43 twofish_dec_blk_cbc_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xb4e98a46 twofish_dec_blk_3way +EXPORT_SYMBOL_GPL arch/x86/crypto/twofish-x86_64-3way 0xe4ae7508 __twofish_enc_blk_3way +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x00dabd60 kvm_set_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x023b5646 kvm_init_shadow_ept_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x039282b3 kvm_set_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x04605646 kvm_get_apic_mode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0492c448 __SCK__tp_func_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0519c0b8 __tracepoint_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x053614ec kvm_set_user_return_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x05bdc94e kvm_set_apic_base +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x05cdd65d kvm_irq_has_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x06627d50 gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x06cdc8d1 kvm_configure_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x08c85f0d __SCK__tp_func_kvm_tdx_page_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x09f29e41 __tracepoint_kvm_tdx_page_demote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x09fce92e __SCK__tp_func_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0a24fcbf kvm_release_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0b58a11d kvm_nr_uret_msrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0b8a3365 __traceiter_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0ca8df68 __traceiter_kvm_vmgexit_msr_protocol_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0cff45f4 __SCT__tp_func_kvm_vmgexit_msr_protocol_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0d293c54 __kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0e01ce3e __traceiter_kvm_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0e78e3db __tracepoint_kvm_tdx_page_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0ef49af4 __tracepoint_kvm_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0f91d766 kvm_mmu_gva_to_gpa_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x0fb23ed8 kvm_update_cpuid_runtime +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10380c1d kvm_slot_page_track_remove_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10a500cb kvm_release_page_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x10bdb937 kvm_emulate_ap_reset_hold +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x114eb824 __traceiter_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1261bd3b kvm_msr_allowed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1290adb2 __SCK__tp_func_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1386c9ee gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1412f042 __traceiter_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x141c406d kvm_vcpu_deliver_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x14e71cca kvm_apic_send_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x159b8d5e host_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1725eaab kvm_write_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17999192 kvm_mmu_new_pgd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17a83181 __SCK__tp_func_kvm_apicv_accept_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x17f9cfe3 __traceiter_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1867b621 kvm_find_cpuid_entry2 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a2c42b8 __tracepoint_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a31f7d8 kvm_vcpu_deliver_sipi_vector +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a5b04cb kvm_mmu_map_tdp_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1a5c0be4 __SCK__kvm_x86_cache_reg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ae74c1e kvm_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1b45b2bf __SCK__tp_func_kvm_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ba404a6 __tracepoint_kvm_tdx_sept_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1ba8170e __tracepoint_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1c927f7b kvm_zap_gfn_range +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1cf1c4e0 __traceiter_kvm_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d013832 kvm_enable_efer_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1d1b139a __SCT__tp_func_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1db1c372 enable_vmware_backdoor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1e33cdad __x86_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x1f8e9483 __SCT__tp_func_kvm_avic_doorbell +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20996fd1 __SCK__tp_func_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x20c2901b __SCK__tp_func_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x21172fec __tracepoint_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x21ae5eee kvm_set_cr3 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2314bd3f kvm_hv_assist_page_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x23263c0a __traceiter_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x246fca52 kvm_mmu_free_guest_mode_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x24dc5921 kvm_emulate_monitor +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2510fc6d __SCT__tp_func_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x257ddb24 __traceiter_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x25c07225 __traceiter_kvm_vmgexit_msr_protocol_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2622d597 __tracepoint_kvm_tdx_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27046576 kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x27d2237f __kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x286600cd __tracepoint_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2b496c3d __traceiter_kvm_tdx_page_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c27c1be __SCK__kvm_x86_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2c37beca kvm_gpc_deactivate +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2cc7cd7e __SCK__tp_func_kvm_avic_kick_vcpu_slowpath +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2d82cc24 kvm_spec_ctrl_test_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2de0a2b5 kvm_vcpu_kick +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2e72b113 kvm_cpu_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x2ecac66f kvm_lapic_set_eoi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3099268e kvm_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30e39680 kvm_apic_has_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x30f31f10 kvm_get_kvm_safe +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x33a44da1 kvm_vcpu_map +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x34e0d087 __tracepoint_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x357686c0 __SCT__tp_func_kvm_tdx_page_demote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x358c8053 kvm_inject_emulated_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x35cb00e4 kvm_x86_vendor_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x36ca39f4 kvm_valid_efer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x36e14be4 __tracepoint_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x388e0e10 __SCT__tp_func_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x389d0aa5 kvm_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3934dfb2 gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x394f1004 __traceiter_kvm_tdx_sept_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x39fd83db halt_poll_ns_shrink +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ab2794c kvm_find_user_return_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3bdd938a kvm_get_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c09cfee kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c3b34c0 kvm_complete_insn_gp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3c979bc6 kvm_put_kvm_no_destroy +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3ce08112 kvm_vcpu_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d817242 kvm_post_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3d93fb92 __traceiter_kvm_apicv_accept_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3dc296b1 __tracepoint_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3e1d14b1 gfn_to_page_many_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3f510ff5 kvm_has_noapic_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3f54ee39 __traceiter_kvm_tdx_page_demote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x3f600a54 kvm_init_shadow_npt_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4068d81d kvm_get_msr_common +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x41582aa5 kvm_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x41f160de __SCT__tp_func_kvm_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x44440199 kvm_mmu_free_roots +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x45e80fdf __traceiter_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x467f4d04 kvm_arch_start_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4733bf8c __traceiter_kvm_avic_kick_vcpu_slowpath +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47393bbf pre_move_enc_context_from +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x473fb5a9 __tracepoint_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x47a74be4 kvm_pfn_to_refcounted_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x485cd7f6 kvm_rebooting +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x48644036 __SCT__tp_func_kvm_vmgexit_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4942be67 __SCT__tp_func_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a1c261b __SCT__tp_func_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4a486af0 kvm_vcpu_read_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4c4c1b09 __tracepoint_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4d18c285 hv_track_root_tdp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4d32a78f kvm_get_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4da48c64 __traceiter_kvm_tdx_page_promote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4e3fd1b4 kvm_release_pfn_clean +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4eafc48e vcpu_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x4f442f7a kvm_apic_clear_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x519920f3 __SCK__tp_func_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x51b0678e __tracepoint_kvm_apicv_accept_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x52a18b1b kvm_slot_page_track_add_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x52b57beb kvm_emulate_rdmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x535d36fc kvm_queue_exception_p +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x53d9f927 __SCT__kvm_x86_get_cs_db_l_bits +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x552b4931 kvm_get_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5676ef53 kvm_requeue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x56a15bfd __tracepoint_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x57177b21 kvm_vcpu_mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x574853e8 kvm_emulate_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x57c4044e kvm_page_track_register_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x58304758 kvm_gfn_to_hva_cache_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59387ba3 __SCT__kvm_x86_cache_reg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x595d89d2 unlock_two_vms_for_migration +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x59e640c0 halt_poll_ns +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5a4ab294 kvm_gmem_get_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5be463f2 __traceiter_kvm_tdx_hypercall_done +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5bf7cde0 kvm_mmu_set_ept_masks +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5c11e105 __traceiter_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5c7e9f84 __SCT__tp_func_kvm_apicv_accept_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5d996b31 kvm_set_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5f911332 __SCT__tp_func_kvm_avic_kick_vcpu_slowpath +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fb8848b halt_poll_ns_grow_start +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x5fedc6d9 gfn_to_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x60ac95f2 kvm_apic_write_nodecode +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x616e3316 __kvm_is_vm_type_supported +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x616e6c95 __SCT__tp_func_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x61c01899 kvm_vcpu_gfn_to_pfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6243ac82 __kvm_apic_update_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6258a03a kvm_mmu_gva_to_gpa_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x625b7fe4 __traceiter_kvm_tdx_sept_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6303c089 kvm_calc_nested_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x635cc705 kvm_vcpu_gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x639bb678 kvm_post_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x64984417 kvm_mmu_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65ae3bbe kvm_load_guest_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x65d08e3f kvm_io_bus_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66281a49 kvm_emulate_rdpmc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x663986eb __SCK__tp_func_kvm_tdx_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x66480375 __SCK__tp_func_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6652beb4 kvm_fast_pio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x687b78fc kvm_x86_vendor_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6892e3c3 kvm_set_pfn_accessed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x68953300 __kvm_vcpu_update_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6a5a7ee9 kvm_lapic_readable_reg_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ada8f59 kvm_mmu_set_mmio_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6bc792a4 kvm_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6be632c9 kvm_vcpu_read_guest_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6becaded __SCT__tp_func_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6c4e2afb kvm_mmu_reset_context +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6c95726c host_xss +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6ccacac4 __tracepoint_kvm_vmgexit_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6d2c9437 __SCT__tp_func_kvm_nested_vmenter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x6f1c9981 __tracepoint_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x708ff510 kvm_mmu_invlpg +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x709cd8cb kvm_spurious_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71650ab6 kvm_read_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x71ff5e10 kvm_emulate_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74890f3f __tracepoint_kvm_vmgexit_msr_protocol_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x74910627 __traceiter_kvm_nested_vmenter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7510a39a __traceiter_kvm_vmgexit_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x752c2b00 __traceiter_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x764c640d kvm_apic_match_dest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x778e30b9 __SCT__tp_func_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x781ae8ee __SCK__tp_func_kvm_tdx_page_demote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x785da763 hv_flush_remote_tlbs_range +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x78e409a8 __SCK__tp_func_kvm_pi_irte_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7aef0bf2 kvm_arch_has_assigned_device +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7afe324e halt_poll_ns_grow +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c149b20 kvm_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7c94c99a kvm_release_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7cadb6b5 kvm_emulate_halt_noskip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7dc7812d mark_page_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7eaabd53 kvm_vcpu_wake_up +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7eb41f20 kvm_vcpu_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f51547e __traceiter_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7f909574 __SCK__tp_func_kvm_tdx_page_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7fa01efe kvm_debugfs_dir +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7fb9e567 kvm_vcpu_write_guest_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7fe19488 kvm_add_user_return_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7ff2a104 __SCT__tp_func_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x7ffb7ba9 kvm_gpc_init +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x81d6ac9b kvm_intr_is_single_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x81f7417a __SCK__tp_func_kvm_avic_doorbell +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x827726f9 kvm_get_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x831bae60 kvm_cpu_has_injectable_intr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x83e80c3d kvm_wait_lapic_expire +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x84e4c43a __SCT__tp_func_kvm_tdx_page_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x86b3e7e3 __traceiter_kvm_tdx_page_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x87c47086 __tracepoint_kvm_vmgexit_msr_protocol_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x88827cec kvm_sev_es_string_io +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x895dd5d6 kvm_emulate_mwait +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x89cba2f7 kvm_arch_register_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a15d7c4 kvm_are_all_memslots_empty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8a7fe54a __SCT__tp_func_kvm_vmgexit_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8ae870bc kvm_vcpu_is_reset_bsp +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8b4f5470 kvm_fixup_and_inject_pf_error +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8b618aa6 __SCT__tp_func_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8b9bc927 __SCT__tp_func_kvm_tdx_sept_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8dc4dd4b kvm_handle_invpcid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8eac31e7 kvm_mmu_set_mmio_spte_value +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f0cd16e __SCK__tp_func_kvm_nested_vmenter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f2558b9 kvm_make_all_cpus_request +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f3a890e __traceiter_kvm_vmgexit_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x8f6f2f6c kvm_write_guest_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x902739d5 kvm_emulate_xsetbv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x910e990e __tracepoint_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x912a9286 __traceiter_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x924f99a4 gfn_to_pfn_memslot_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x92c04820 kvm_set_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x92cc81be __tracepoint_kvm_tdx_page_promote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x92f091dd handle_ud +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x93a3e40e __SCT__tp_func_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x96909f4e __SCK__tp_func_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x973e4051 kvm_read_guest_offset_cached +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9746afce kvm_handle_memory_failure +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x97e9ef39 kvm_inject_realmode_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9b735abc kvm_set_rflags +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9b93d29a __SCT__tp_func_kvm_tdx_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9cf59e7a allow_smaller_maxphyaddr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9e20b2bc __traceiter_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f68faa3 __traceiter_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0x9f9fc63f kvm_require_dr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa027faae kvm_arch_unregister_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1c4231f kvm_set_pfn_dirty +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa1fb2b04 kvm_apic_update_ppr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa38cacb1 __kvm_is_valid_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa41eb50a gfn_to_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa588ef67 __SCT__tp_func_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa58efbb8 kvm_io_bus_get_dev +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6184e23 __SCK__tp_func_kvm_ple_window_update +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa6a50230 __traceiter_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa7022320 __traceiter_kvm_avic_ga_log +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa772fd59 __SCK__tp_func_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa8251924 kvm_init_mmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa84a2e73 __SCT__tp_func_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa892d02e __SCK__tp_func_kvm_vmgexit_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa8c6f5ff __tracepoint_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xa907786e __traceiter_kvm_tdx_hypercall +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab3171ae __tracepoint_kvm_invlpga +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xab7704b7 kvm_page_track_unregister_notifier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xabb28925 kvm_mmu_invalidate_addr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xac1f088d kvm_update_dr7 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xad4fa585 kvm_is_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xadb25a1a kvm_gpc_activate +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xadb318d7 __tracepoint_kvm_vmgexit_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xafe1de75 kvm_get_running_vcpu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb05595f1 __traceiter_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb0f74395 load_pdptrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb19af868 __kvm_prepare_emulation_failure_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb2078d04 kvm_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb2b66075 kvm_emulate_wbinvd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb2b93791 kvm_deliver_exception_payload +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb35be08d kvm_mtrr_get_guest_memory_type +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb5490177 __SCK__tp_func_kvm_vmgexit_msr_protocol_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb5cec252 kvm_queue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb61d58bd host_xcr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb7f68e0a __tracepoint_kvm_tdx_sept_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb82c0987 enable_pmu +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb95e2c94 post_move_enc_context_from +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xb96e9aa1 __traceiter_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xba110685 kvm_vcpu_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbaa2c356 __SCT__tp_func_kvm_tdx_hypercall_done +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbac25a36 __kvm_request_immediate_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbad357e7 kvm_alloc_apic_access_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbbd4a112 kvm_gpc_refresh +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbcf0bab1 kvm_vcpu_gfn_to_pfn_atomic +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbd9d6dfc kvm_mmu_set_me_spte_mask +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbecebecc __SCK__tp_func_kvm_cr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xbf3ddd0f kvm_vcpu_is_visible_gfn +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc071e99f __SCT__tp_func_kvm_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1a73503 kvm_handle_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc1ec1206 __tracepoint_kvm_avic_doorbell +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3691f45 kvm_read_l1_tsc +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc3e1d78e kvm_arch_has_noncoherent_dma +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc40bbdb4 kvm_skip_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc41bb0cf kvm_queue_exception_e +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc4ae852b __SCK__tp_func_kvm_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc60d7d0c __traceiter_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc61ef8a5 __SCK__tp_func_kvm_tdx_sept_remove +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc65cfd23 kvm_sev_es_mmio_read +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc7654867 kvm_set_memory_region +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc7fe55ac __traceiter_kvm_avic_doorbell +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc96d35f4 report_ignored_msrs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xc986cb4e kvm_load_host_xsave_state +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xca3ec7e3 lock_two_vms_for_migration +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcb06f93f hv_flush_remote_tlbs +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcbbbe56b __SCK__tp_func_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc69f296 kvm_cpuid +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcc9045e7 __tracepoint_kvm_tdx_page_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xccae8460 kvm_emulate_wrmsr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcdc64f6e kvm_set_msi_irq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce2b4b7d __tracepoint_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce374fcf kvm_lapic_find_highest_irr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xce576a13 enable_apicv +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xcfdd5f32 kvm_arch_no_poll +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd010b02f kvm_lapic_expired_hv_timer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd09da48b __SCT__tp_func_kvm_nested_intr_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd115ca72 __SCK__tp_func_kvm_nested_vmexit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd130d385 kvm_prepare_emulation_failure_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd1aaeafe kvm_handle_invalid_op +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd2418371 kvm_read_guest_virt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd37c6281 kvm_sev_es_mmio_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd38b996f kvm_get_linear_rip +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd413b219 kvm_requeue_exception +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd475c188 kvm_pmu_cap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd4d4d7b1 __SCK__tp_func_kvm_tdx_page_promote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd51b752c kvm_set_cr0 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd64b8347 __gfn_to_pfn_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd6fff72a __tracepoint_kvm_nested_vmenter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8308e7b kvm_vcpu_on_spin +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd84dc72c x86_decode_emulated_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xd8b784d0 __tracepoint_kvm_tdx_hypercall_done +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xda60f42e kvm_vcpu_gfn_to_hva +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xda681946 __SCK__tp_func_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdbbe3df6 kvm_cpu_get_interrupt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdc7369fe __traceiter_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdc76801e __SCK__tp_func_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdcb51ece __SCK__tp_func_kvm_nested_intercepts +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd272ac6 __SCK__tp_func_kvm_tdx_hypercall_done +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd780a56 kvm_set_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdd83b0bd kvm_emulate_invd +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xdffc1e4c __SCK__tp_func_kvm_tdx_sept_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe0113bf3 kvm_find_cpuid_entry_index +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe031fd26 __SCT__tp_func_kvm_tdx_page_promote +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe0e786a7 __SCT__tp_func_kvm_skinit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe22d171e kvm_write_guest_virt_system +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe3356913 kvm_vcpu_yield_to +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe371fb18 kvm_vcpu_reset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe38a8308 kvm_lmsw +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe5c49549 __SCK__tp_func_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe62046d6 handle_fastpath_set_msr_irqoff +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe6592596 kvm_set_or_clear_apicv_inhibit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe7267309 kvm_io_bus_write +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe769421a kvm_read_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe857c47e __SCK__tp_func_kvm_inj_virq +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xe93dfc8c __SCT__tp_func_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xea33fdc3 kvm_get_cr8 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xea5cda33 __SCT__tp_func_kvm_fast_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeaf8720c kvm_service_local_tlb_flush_requests +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xec934bdf kvm_emulate_halt +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xece4dec4 kvm_put_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeda84bab __SCK__tp_func_kvm_vmgexit_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xedeaa911 kvm_find_cpuid_entry +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeeb78ddf __tracepoint_kvm_avic_kick_vcpu_slowpath +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeedea3f0 __SCK__tp_func_kvm_write_tsc_offset +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xeee837a0 file_is_kvm +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef14fd98 kvm_calc_nested_tsc_multiplier +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef236696 kvm_clear_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xef6757f6 mark_page_dirty_in_slot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xefd545ee kvm_arch_end_assignment +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf03e348a __traceiter_kvm_exit +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf050ff35 __SCT__tp_func_kvm_tdx_page_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf055e097 gfn_to_pfn_prot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf084b57d __SCT__tp_func_kvm_msr +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf16ca745 kvm_task_switch +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf180beb6 __tracepoint_kvm_nested_vmexit_inject +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf19f6271 tdp_enabled +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf2df48f3 __SCT__tp_func_kvm_pml_full +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf32dff97 __SCT__tp_func_kvm_avic_unaccelerated_access +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf382ec07 __SCT__tp_func_kvm_tdx_sept_add +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf493c6ba __tracepoint_kvm_page_fault +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf4b5c4c7 kvm_apic_set_eoi_accelerated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf54e2886 __SCT__tp_func_kvm_vmgexit_msr_protocol_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf559f3fa kvm_vcpu_unmap +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf6f6ebaa kvm_set_cr4 +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf7500f43 kvm_emulate_instruction_from_buffer +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf80112dd kvm_destroy_vcpus +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf8b3645f kvm_user_return_update_cache +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf8e24dff __tracepoint_kvm_nested_vmenter_failed +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xf91b53c1 kvm_pmu_trigger_event +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfab33e4c enable_mmio_caching +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfac5d3f5 kvm_emulate_instruction +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfb98e74e __tracepoint_kvm_mmio +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfcf8e839 kvm_hv_get_assist_page +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd2dccd1 __tracepoint_kvm_avic_incomplete_ipi +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd32ffd1 kvm_apicv_activated +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd375994 kvm_vcpu_write_guest +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd528993 vcpu_load +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfd9f9828 gfn_to_hva_memslot +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xfec8202a kvm_cpu_caps +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff02792a __SCK__tp_func_kvm_vmgexit_msr_protocol_enter +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm 0xff8b781a kvm_gpc_check +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm-intel 0x2e2c8293 vmxoff_put +EXPORT_SYMBOL_GPL arch/x86/kvm/kvm-intel 0x4ed0ecbb vmxon_get +EXPORT_SYMBOL_GPL crypto/af_alg 0x0156f6ed af_alg_release_parent +EXPORT_SYMBOL_GPL crypto/af_alg 0x27e92408 af_alg_async_cb +EXPORT_SYMBOL_GPL crypto/af_alg 0x3c874ff5 af_alg_count_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x4856d58c af_alg_pull_tsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0x51eb76b8 af_alg_wait_for_data +EXPORT_SYMBOL_GPL crypto/af_alg 0x62778d0a af_alg_sendmsg +EXPORT_SYMBOL_GPL crypto/af_alg 0x634264a9 af_alg_free_sg +EXPORT_SYMBOL_GPL crypto/af_alg 0x71394466 af_alg_release +EXPORT_SYMBOL_GPL crypto/af_alg 0x7b23303e af_alg_wmem_wakeup +EXPORT_SYMBOL_GPL crypto/af_alg 0x89a5f596 af_alg_accept +EXPORT_SYMBOL_GPL crypto/af_alg 0xb9042573 af_alg_get_rsgl +EXPORT_SYMBOL_GPL crypto/af_alg 0xcf12c48f af_alg_register_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xd1d66f6c af_alg_unregister_type +EXPORT_SYMBOL_GPL crypto/af_alg 0xead3cf62 af_alg_alloc_areq +EXPORT_SYMBOL_GPL crypto/af_alg 0xf1b21014 af_alg_poll +EXPORT_SYMBOL_GPL crypto/af_alg 0xfa1c0892 af_alg_free_resources +EXPORT_SYMBOL_GPL crypto/aria_generic 0x4a61978a aria_encrypt +EXPORT_SYMBOL_GPL crypto/aria_generic 0xbdad6df6 aria_decrypt +EXPORT_SYMBOL_GPL crypto/aria_generic 0xeef61bc3 aria_set_key +EXPORT_SYMBOL_GPL crypto/async_tx/async_memcpy 0x30595199 async_memcpy +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x2f17d5ae async_syndrome_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_pq 0x6565a470 async_gen_syndrome +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0x721292ef async_raid6_datap_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_raid6_recov 0xc3b037b0 async_raid6_2data_recov +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x5b112a8f __async_tx_find_channel +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0x905517c0 async_trigger_callback +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xb0dfb3e5 async_tx_submit +EXPORT_SYMBOL_GPL crypto/async_tx/async_tx 0xcf52ca00 async_tx_quiesce +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0x64ea60e6 async_xor_val_offs +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xb1989a25 async_xor_offs +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xeaf44e66 async_xor_val +EXPORT_SYMBOL_GPL crypto/async_tx/async_xor 0xf0156762 async_xor +EXPORT_SYMBOL_GPL crypto/authenc 0x2479193e crypto_authenc_extractkeys +EXPORT_SYMBOL_GPL crypto/blowfish_common 0xdd5a01e5 blowfish_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0x188d9d26 __cast5_decrypt +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xd8be4e6e cast5_setkey +EXPORT_SYMBOL_GPL crypto/cast5_generic 0xef81a4af __cast5_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x3dbae082 __cast6_decrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0x8357ef55 cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xcfce512f __cast6_encrypt +EXPORT_SYMBOL_GPL crypto/cast6_generic 0xd76a5716 __cast6_setkey +EXPORT_SYMBOL_GPL crypto/cast_common 0x5609ce41 cast_s2 +EXPORT_SYMBOL_GPL crypto/cast_common 0x5b17be06 cast_s4 +EXPORT_SYMBOL_GPL crypto/cast_common 0xb9cba57f cast_s3 +EXPORT_SYMBOL_GPL crypto/cast_common 0xbd3e7542 cast_s1 +EXPORT_SYMBOL_GPL crypto/cryptd 0x1449e5be cryptd_shash_desc +EXPORT_SYMBOL_GPL crypto/cryptd 0x1f484bcd cryptd_skcipher_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x2c10cb41 cryptd_alloc_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x32ffc520 cryptd_free_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x43ad171e cryptd_alloc_ahash +EXPORT_SYMBOL_GPL crypto/cryptd 0x59601fd2 cryptd_ahash_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x72d885ae cryptd_free_skcipher +EXPORT_SYMBOL_GPL crypto/cryptd 0x7ec614c8 cryptd_aead_child +EXPORT_SYMBOL_GPL crypto/cryptd 0x8569c541 cryptd_ahash_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xbb0b631a cryptd_free_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xd2de2388 cryptd_aead_queued +EXPORT_SYMBOL_GPL crypto/cryptd 0xd5a85984 cryptd_alloc_aead +EXPORT_SYMBOL_GPL crypto/cryptd 0xf153fc7b cryptd_skcipher_queued +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x0485d8e2 crypto_transfer_kpp_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x3d699066 crypto_finalize_skcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x45e25627 crypto_engine_alloc_init_and_set +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x4e9e10aa crypto_engine_exit +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x5b939100 crypto_transfer_akcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x603fdcf0 crypto_engine_stop +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x6046ee3d crypto_transfer_skcipher_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0x775c462f crypto_engine_alloc_init +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xaa877e9a crypto_engine_start +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xb45e3451 crypto_transfer_hash_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xb9dfbdf1 crypto_transfer_aead_request_to_engine +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xba8f5c83 crypto_finalize_hash_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xc478d6ed crypto_finalize_kpp_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xdee9916a crypto_finalize_aead_request +EXPORT_SYMBOL_GPL crypto/crypto_engine 0xf92d451f crypto_finalize_akcipher_request +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x06477359 simd_unregister_skciphers +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x2cf9930e simd_register_skciphers_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x504cb053 simd_aead_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x66983e96 simd_skcipher_create +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x7618491e simd_unregister_aeads +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x851c747c simd_aead_create +EXPORT_SYMBOL_GPL crypto/crypto_simd 0x88638552 simd_skcipher_create_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xbfd26f15 simd_aead_free +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xd09d2695 simd_register_aeads_compat +EXPORT_SYMBOL_GPL crypto/crypto_simd 0xefe73979 simd_skcipher_free +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x33b866ce crypto_ecdh_decode_key +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0x7475be8e crypto_ecdh_key_len +EXPORT_SYMBOL_GPL crypto/ecdh_generic 0xb230d2ec crypto_ecdh_encode_key +EXPORT_SYMBOL_GPL crypto/polyval-generic 0x1936413e polyval_mul_non4k +EXPORT_SYMBOL_GPL crypto/polyval-generic 0x49dece42 polyval_update_non4k +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x4eb4c55e __serpent_encrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0x658c63d0 serpent_setkey +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xbcc074f3 __serpent_decrypt +EXPORT_SYMBOL_GPL crypto/serpent_generic 0xd4c9681a __serpent_setkey +EXPORT_SYMBOL_GPL crypto/sm2_generic 0x812d4078 sm2_compute_z_digest +EXPORT_SYMBOL_GPL crypto/sm3 0xa98edad1 sm3_update +EXPORT_SYMBOL_GPL crypto/sm3 0xf04338f9 sm3_final +EXPORT_SYMBOL_GPL crypto/sm3_generic 0x0bddca87 sm3_zero_message_hash +EXPORT_SYMBOL_GPL crypto/sm4 0x24e254e8 sm4_expandkey +EXPORT_SYMBOL_GPL crypto/sm4 0xfa81970e sm4_crypt_block +EXPORT_SYMBOL_GPL crypto/twofish_common 0x926a4df7 twofish_setkey +EXPORT_SYMBOL_GPL crypto/twofish_common 0xe22b7787 __twofish_setkey +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x3dafc48f acpi_nfit_ctl +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x427a06f5 __acpi_nvdimm_notify +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x4639bcda acpi_nfit_shutdown +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x499bbf57 nfit_get_smbios_id +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0x5b6b862e acpi_nfit_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xc9f409bb acpi_nfit_desc_init +EXPORT_SYMBOL_GPL drivers/acpi/nfit/nfit 0xd7c37129 __acpi_nfit_notify +EXPORT_SYMBOL_GPL drivers/acpi/platform_profile 0x67927a0d platform_profile_notify +EXPORT_SYMBOL_GPL drivers/acpi/platform_profile 0xbfe36436 platform_profile_remove +EXPORT_SYMBOL_GPL drivers/acpi/platform_profile 0xcac33cd4 platform_profile_register +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x1c8984c7 acpi_smbus_unregister_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x4f6c2360 acpi_smbus_read +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x87bd07bd acpi_smbus_register_callback +EXPORT_SYMBOL_GPL drivers/acpi/sbshc 0x96eb492d acpi_smbus_write +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0614651e ahci_save_initial_config +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x0e1280a9 ahci_init_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x1440d24d ahci_print_info +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x2cb39b64 ahci_reset_em +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x42db601a ahci_error_handler +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x4507f8cb ahci_host_activate +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x46667513 ahci_sdev_groups +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5627b1d5 ahci_handle_port_intr +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x56c7c8bc ahci_do_softreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5c015294 ahci_shost_groups +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x5ca2f355 ahci_dev_classify +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x711c2d29 ahci_fill_cmd_slot +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x7ce1fa16 ahci_qc_issue +EXPORT_SYMBOL_GPL drivers/ata/libahci 0x84d4c70a ahci_pmp_retry_srst_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa611fb93 ahci_reset_controller +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xa928122b ahci_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xbf325b61 ahci_set_em_messages +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xc187d67b ahci_do_hardreset +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xcd7e5442 ahci_start_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd905444f ahci_kick_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xd914294e ahci_port_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe0da0513 ahci_check_ready +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xe4f21dca ahci_start_fis_rx +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xea50dad3 ahci_ignore_sss +EXPORT_SYMBOL_GPL drivers/ata/libahci 0xec89d3f4 ahci_stop_engine +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x084819ad ahci_platform_disable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x099c5ec9 ahci_platform_enable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x16e4ea6b ahci_platform_suspend_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x2eb27fe3 ahci_platform_assert_rsts +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x3eb8cf3a ahci_platform_deassert_rsts +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x4c092106 ahci_platform_disable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x86b57959 ahci_platform_resume +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x930de8c3 ahci_platform_enable_phys +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x996ca9bd ahci_platform_disable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0x9a04756b ahci_platform_suspend +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa4dff95a ahci_platform_enable_regulators +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xa538774f ahci_platform_resume_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xb2751e96 ahci_platform_enable_resources +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xb7fd0194 ahci_platform_find_clk +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xc3e11acd ahci_platform_init_host +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xc8063516 ahci_platform_ops +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd14653b4 ahci_platform_shutdown +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xd698970c ahci_platform_disable_clks +EXPORT_SYMBOL_GPL drivers/ata/libahci_platform 0xefe7fadd ahci_platform_get_resources +EXPORT_SYMBOL_GPL drivers/ata/pata_parport/pata_parport 0x04337988 pata_parport_register_driver +EXPORT_SYMBOL_GPL drivers/ata/pata_parport/pata_parport 0x352aae75 pata_parport_unregister_driver +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x02ff9464 cfag12864b_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x0ecb2e5d cfag12864b_disable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x305dc3c6 cfag12864b_isenabled +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x3389f926 cfag12864b_enable +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0x9522a342 cfag12864b_getrate +EXPORT_SYMBOL_GPL drivers/auxdisplay/cfag12864b 0xc48e9d95 cfag12864b_buffer +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x09917359 charlcd_poke +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x6fd9cc4a charlcd_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0x8b45326c charlcd_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xd3e29970 charlcd_backlight +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xf3304696 charlcd_free +EXPORT_SYMBOL_GPL drivers/auxdisplay/charlcd 0xf883c540 charlcd_unregister +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x07b26ecc hd44780_common_gotoxy +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x1aa688fd hd44780_common_lines +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x23159a5b hd44780_common_clear_display +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x30e85287 hd44780_common_shift_display +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x36dc00a2 hd44780_common_print +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x3c4c183f hd44780_common_home +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x489c89e8 hd44780_common_redefine_char +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x64415593 hd44780_common_display +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x79e8e259 hd44780_common_alloc +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x8585e5fd hd44780_common_blink +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0x8d4f3fa4 hd44780_common_init_display +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0xa22afdaa hd44780_common_cursor +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0xc369090d hd44780_common_shift_cursor +EXPORT_SYMBOL_GPL drivers/auxdisplay/hd44780_common 0xf360d788 hd44780_common_fontsize +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x14102f23 ks0108_displaystate +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x48a70518 ks0108_writedata +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x4f506333 ks0108_startline +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0x6edae968 ks0108_isinited +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xbf4774db ks0108_writecontrol +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xedde6df2 ks0108_page +EXPORT_SYMBOL_GPL drivers/auxdisplay/ks0108 0xfee8ef7b ks0108_address +EXPORT_SYMBOL_GPL drivers/auxdisplay/line-display 0x271d6016 linedisp_register +EXPORT_SYMBOL_GPL drivers/auxdisplay/line-display 0xf5b96849 linedisp_unregister +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-i3c 0x92011ec7 __devm_regmap_init_i3c +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x606dd1b8 __devm_regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-sccb 0x9c058ba2 __regmap_init_sccb +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0x72ca0f29 __regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-slimbus 0xdefef04d __devm_regmap_init_slimbus +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spi-avmm 0x5b860ccf __regmap_init_spi_avmm +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spi-avmm 0x7e9d21a3 __devm_regmap_init_spi_avmm +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x440afaa7 __devm_regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x4b143e7c __regmap_init_spmi_base +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x6fc7aed8 __regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-spmi 0x71fa4191 __devm_regmap_init_spmi_ext +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x1742d117 __regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/base/regmap/regmap-w1 0x5d56ee52 __devm_regmap_init_w1 +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0da77cd8 bcma_chipco_chipctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x0de2cd74 bcma_host_pci_up +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x152ac6f3 bcma_core_pci_power_save +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x1966a27d bcma_chipco_b_mii_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x2d986a83 bcma_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x46b6cbb9 bcma_core_enable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x515fae69 bcma_chipco_pll_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x53c4d4e0 bcma_host_pci_irq_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6850f005 bcma_core_disable +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6c5122b8 bcma_driver_unregister +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x6ebb9af7 bcma_chipco_gpio_out +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x7ec94385 bcma_core_pll_ctl +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0x8985d2f7 bcma_host_pci_down +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xaf332c00 bcma_chipco_pll_write +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xca2287e5 bcma_chipco_gpio_control +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xd52c4643 bcma_chipco_gpio_outen +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xda187e9e bcma_chipco_get_alp_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdb43f9dc bcma_pmu_get_bus_clock +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xdf5518e9 bcma_chipco_pll_read +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe18d3487 bcma_find_core_unit +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe542dc80 __bcma_driver_register +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xe6f02f6d bcma_chipco_regctl_maskset +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf16349c1 bcma_core_is_enabled +EXPORT_SYMBOL_GPL drivers/bcma/bcma 0xf94d55e1 bcma_core_set_clockmode +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0x0ee12699 mhi_ep_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0x2f91f4d2 mhi_ep_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0x5cd045de mhi_ep_queue_is_empty +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0x76121a2c mhi_ep_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0x94b8ee6e __mhi_ep_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0xa074cde8 mhi_ep_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0xa38f15d5 mhi_ep_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/ep/mhi_ep 0xca62a4f9 mhi_ep_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x053707d0 mhi_device_get +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x05cab2ec mhi_alloc_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x08dadcab mhi_queue_skb +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x12df5b3a mhi_unprepare_from_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x2d6673b5 mhi_notify +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x2e53766f mhi_unprepare_after_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x44345ad6 mhi_get_exec_env +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x505b57a4 mhi_soc_reset +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x57f96b39 mhi_pm_suspend +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x5db6de08 __mhi_driver_register +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x5e2ad9ba mhi_register_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x77b9837e mhi_device_put +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x8b7db016 mhi_download_rddm_image +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x8c99a469 mhi_power_down +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0x8c9a20bc mhi_async_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xa1e9d20b mhi_device_get_sync +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xa444992b mhi_get_mhi_state +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xa9b65711 mhi_driver_unregister +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xaac03c23 mhi_force_rddm_mode +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xab6b4e29 mhi_prepare_for_power_up +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xae04c9ab mhi_free_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xba1d161b mhi_get_free_desc_count +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xbd76e6c5 mhi_pm_resume +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xbecbcd55 mhi_prepare_for_transfer +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xcdc652a2 mhi_prepare_for_transfer_autoqueue +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xceef691d mhi_pm_resume_force +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xddfebfdc mhi_unregister_controller +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xdf51a1e2 mhi_queue_dma +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xe1db415e mhi_queue_is_full +EXPORT_SYMBOL_GPL drivers/bus/mhi/host/mhi 0xedd56d45 mhi_queue_buf +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x0cd330f4 range_unknown +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x1320b9b9 comedi_nscans_left +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x1901b06b comedi_alloc_subdevices +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x21102f87 range_0_32mA +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x2e31a85d comedi_readback_insn_read +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x2f0ad9d3 range_bipolar5 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x2fc397ac comedi_set_spriv_auto_free +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x31c21fbb comedi_auto_unconfig +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x3b64af67 comedi_buf_write_free +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x4236eaaf range_4_20mA +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x4fe634f3 range_bipolar2_5 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x562a7bdf comedi_inc_scan_progress +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x57976fe2 comedi_handle_events +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x5b57865e comedi_dev_get_from_minor +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x5bb2038e comedi_buf_read_free +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x5cabec0e comedi_alloc_subdev_readback +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x5cfc60a9 comedi_timeout +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x5edb8f32 comedi_bytes_per_scan_cmd +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x67cdb51d comedi_driver_register +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x6bcf1a89 comedi_bytes_per_scan +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x76076da5 comedi_buf_write_alloc +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x7acd6193 comedi_driver_unregister +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x8113872c range_unipolar10 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x811bba60 comedi_auto_config +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x8f215231 comedi_check_chanlist +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x90fe0463 comedi_dio_update_state +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x9562c771 comedi_dio_insn_config +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x9b646555 comedi_is_subdevice_running +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0x9cba061f comedi_buf_read_n_available +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xaeede7f7 comedi_alloc_devpriv +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xafb1e1d5 comedi_buf_read_alloc +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xb679cebc range_0_20mA +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xbb52fc7f range_bipolar10 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xbdbe75c6 range_unipolar2_5 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xbf01d848 comedi_set_hw_dev +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xc2e1b18c comedi_dev_put +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xc3e0810e comedi_nsamples_left +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xc4f56b21 __comedi_request_region +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xc6811446 comedi_load_firmware +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xc88a7c2f comedi_request_region +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xd09b53d6 comedi_buf_write_samples +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xd219884e comedi_alloc_spriv +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xdb2044b2 range_unipolar5 +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xdd82e73d comedi_event +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xe658264d comedi_buf_read_samples +EXPORT_SYMBOL_GPL drivers/comedi/comedi 0xfeb82c9c comedi_legacy_detach +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0x3d5c5dc0 comedi_pci_enable +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0x567ce2b3 comedi_pci_auto_unconfig +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0x649ebbd5 comedi_pci_driver_register +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0x79fd3e92 comedi_pci_detach +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0x92f1b540 comedi_pci_driver_unregister +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0xb0ce2985 comedi_to_pci_dev +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0xd9bec8cc comedi_pci_disable +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pci 0xfa99a601 comedi_pci_auto_config +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0x4b90f72b comedi_to_pcmcia_dev +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0x52739203 comedi_pcmcia_driver_register +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0x743f9d12 comedi_pcmcia_enable +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0x7cbec151 comedi_pcmcia_auto_config +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0x87739bc7 comedi_pcmcia_auto_unconfig +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0xc0b69627 comedi_pcmcia_disable +EXPORT_SYMBOL_GPL drivers/comedi/comedi_pcmcia 0xc709439e comedi_pcmcia_driver_unregister +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0x13a24036 comedi_to_usb_dev +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0x696f9f91 comedi_usb_driver_unregister +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0x6a59f597 comedi_usb_auto_unconfig +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0x9bf4cd18 comedi_usb_driver_register +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0xa014e203 comedi_to_usb_interface +EXPORT_SYMBOL_GPL drivers/comedi/comedi_usb 0xa66becd0 comedi_usb_auto_config +EXPORT_SYMBOL_GPL drivers/comedi/drivers/addi_watchdog 0x79f4a6cf addi_watchdog_reset +EXPORT_SYMBOL_GPL drivers/comedi/drivers/addi_watchdog 0x7ad2134d addi_watchdog_init +EXPORT_SYMBOL_GPL drivers/comedi/drivers/amplc_pc236_common 0xf20c50c8 amplc_pc236_common_attach +EXPORT_SYMBOL_GPL drivers/comedi/drivers/comedi_8255 0x3fbf0525 subdev_8255_mm_init +EXPORT_SYMBOL_GPL drivers/comedi/drivers/comedi_8255 0x49de715c subdev_8255_regbase +EXPORT_SYMBOL_GPL drivers/comedi/drivers/comedi_8255 0x9d8a21bd subdev_8255_init +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x17df104a mite_dma_disarm +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x2062836c mite_sync_dma +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x2e6fbed2 mite_bytes_in_transit +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x42cb97a9 mite_release_channel +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x4598979b mite_init_ring_descriptors +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x4629d37e mite_request_channel +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0x5232e217 mite_request_channel_in_range +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xb9083616 mite_prep_dma +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xbcb57d9c mite_alloc_ring +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xd2e2ce7f mite_free_ring +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xd5cc11a0 mite_done +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xd89f1417 mite_detach +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xe2ac07a6 mite_dma_arm +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xe88cdf6a mite_attach +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xea055273 mite_ack_linkc +EXPORT_SYMBOL_GPL drivers/comedi/drivers/mite 0xf6595520 mite_buf_change +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x076bc308 ni_find_route_source +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x0921123e ni_lookup_route_register +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x1facf7f8 ni_is_cmd_dest +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x64443d67 ni_get_valid_routes +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x6c18c54e ni_count_valid_routes +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x85e75c94 ni_assign_device_routes +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x863a306d ni_sort_device_routes +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x8ab47ba4 ni_route_set_has_source +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0x8f0f0901 ni_find_route_set +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_routing 0xb3e302a3 ni_route_to_register +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x172c4e92 ni_tio_write +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x27036e7b ni_tio_set_gate_src_raw +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x3a50ea4a ni_tio_init_counter +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x3c91c371 ni_tio_set_gate_src +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x51b0790f ni_tio_get_soft_copy +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x52895ec9 ni_tio_read +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x582c3a39 ni_tio_insn_config +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x774be287 ni_tio_unset_routing +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x8a1a8b01 ni_tio_insn_write +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x936875a9 ni_tio_insn_read +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0x9c5c1c13 ni_tio_set_bits +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0xb3252fd0 ni_gpct_device_construct +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0xba144852 ni_tio_arm +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0xd5d7b152 ni_tio_get_routing +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0xd94552bd ni_tio_set_routing +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tio 0xf87db940 ni_gpct_device_destroy +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x100377b1 ni_tio_cmdtest +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x24108b9c ni_tio_handle_interrupt +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x264891a2 ni_tio_set_mite_channel +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x3e23a0f6 ni_tio_acknowledge +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x6555045d ni_tio_cmd +EXPORT_SYMBOL_GPL drivers/comedi/drivers/ni_tiocmd 0x75e2469c ni_tio_cancel +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0x243de009 comedi_dio_get_config +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0x26a8a1e6 comedi_find_subdevice_by_type +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0x589ec377 comedi_dio_config +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0x766fa913 comedi_close +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0xa35c7a55 comedi_open +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0xa98b4162 comedi_dio_bitfield2 +EXPORT_SYMBOL_GPL drivers/comedi/kcomedilib/kcomedilib 0xdbf7ede9 comedi_get_n_channels +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x1b1f2bda speedstep_get_freqs +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0x2b67f096 speedstep_get_frequency +EXPORT_SYMBOL_GPL drivers/cpufreq/speedstep-lib 0xd7ab2c0c speedstep_detect_processor +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x04773b60 ccp_present +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x2e6a6147 psp_copy_user_blob +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x3a1a3979 ccp_version +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x3e059f28 sev_guest_activate +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x4073e924 sev_guest_deactivate +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x6ea40704 psp_ring_platform_doorbell +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x843d6541 sev_guest_decommission +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x8fac14a2 sev_guest_df_flush +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x91722dce sev_platform_status +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0x98a356de psp_send_platform_access_msg +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xa5b72c9a sev_issue_cmd_external_user +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xbf36eb1a ccp_enqueue_cmd +EXPORT_SYMBOL_GPL drivers/crypto/ccp/ccp 0xd02e197f sev_platform_init +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x018b659a adf_exit_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x0a872684 adf_err_handler +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x0c560f2a adf_cfg_dev_remove +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x0c7e769c adf_gen2_get_num_accels +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x0d43c53c adf_enable_vf2pf_comms +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x0d921a4e adf_devmgr_add_dev +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x115ab649 adf_gen2_enable_ints +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x13eeb7cc adf_dev_get +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x15f3fd8b adf_cleanup_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x1897dd7a adf_dbgfs_exit +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x1c927afe adf_init_admin_comms +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x1e196e72 adf_dev_put +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x2013abea adf_devmgr_in_reset +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x20ca13df adf_flush_vf_wq +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x24fe3713 adf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x2b3721eb adf_vf2pf_notify_init +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x2be4e269 adf_gen2_get_arb_info +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x2f25b03e adf_gen2_init_pf_pfvf_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x36e203ca adf_gen4_ring_pair_reset +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x3e081909 adf_reset_sbr +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x3e707f37 adf_gen2_get_admin_info +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x4220b83f adf_gen2_init_vf_pfvf_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x46f8f6a7 adf_sriov_configure +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x4760d085 adf_disable_sriov +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x56c2e5af adf_dev_started +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x5ac988de adf_send_admin_init +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x5ffae07f adf_vf_isr_resource_free +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x64ad9949 adf_gen4_init_pf_pfvf_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x7095f844 adf_gen2_enable_error_correction +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x70ed77cf adf_disable_pf2vf_interrupts +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x7289ca75 adf_dev_up +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x7518dc5c adf_gen2_get_accel_cap +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x756c46ae adf_cfg_add_key_value_param +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x78875f6d adf_gen4_handle_pm_interrupt +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x806d54e4 adf_gen4_enable_pm +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x833162b5 adf_dbgfs_init +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x978e8847 adf_vf2pf_notify_shutdown +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x9be83f0a adf_enable_pf2vf_comms +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0x9e42ad03 adf_cfg_dev_add +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xa2e46190 adf_devmgr_update_class_index +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xa529ffec adf_dev_in_use +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xa7292779 adf_cfg_section_add +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xbd77fb92 adf_gen2_set_ssm_wdtimer +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xc13eca7b adf_devmgr_pci_to_accel_dev +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xc501ac82 adf_gen4_init_hw_csr_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xc56eb603 adf_init_etr_data +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xc6743bec adf_dev_down +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xcc1dd720 adf_devmgr_rm_dev +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xcc3b167a adf_clean_vf_map +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xce247482 adf_dev_restart +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xd481ec2d adf_init_arb +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xd64519f1 adf_gen2_init_hw_csr_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xd812b07d adf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xde36903a adf_reset_flr +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xe327f1f1 adf_gen4_init_dc_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xe45f3512 adf_gen2_init_dc_ops +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xe50155c0 adf_gen2_dev_config +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xe9723d88 adf_vf_isr_resource_alloc +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xed83f1f0 adf_pfvf_comms_disabled +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xf20d9a72 adf_sysfs_init +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xf6ffd2e5 adf_gen4_set_ssm_wdtimer +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xfb93d2e6 adf_gen2_cfg_iov_thds +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xfd0a2193 adf_gen2_get_num_aes +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xfe259299 adf_cfg_get_param_value +EXPORT_SYMBOL_GPL drivers/crypto/intel/qat/qat_common/intel_qat 0xfe43e111 adf_exit_arb +EXPORT_SYMBOL_GPL drivers/dca/dca 0x01a33ab9 dca_unregister_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0x0ea2d7c0 unregister_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x23f2f05c dca_remove_requester +EXPORT_SYMBOL_GPL drivers/dca/dca 0x27a11045 free_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0x90e62d0c register_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xaa634427 dca_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0xac34ecec dca_register_notify +EXPORT_SYMBOL_GPL drivers/dca/dca 0xcf1820de alloc_dca_provider +EXPORT_SYMBOL_GPL drivers/dca/dca 0xf87e5837 dca3_get_tag +EXPORT_SYMBOL_GPL drivers/dca/dca 0xfcba51f6 dca_add_requester +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x4bb1f9fa dw_edma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw-edma/dw-edma 0x6a1d3912 dw_edma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x03f84bf8 idma32_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x10ad8f44 dw_dma_acpi_controller_free +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x336dda28 do_dw_dma_disable +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x441ee174 dw_dma_probe +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x59a71718 dw_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0x7da96e2f idma32_dma_remove +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xbfffece4 dw_dma_acpi_controller_register +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xd8711957 dw_dma_filter +EXPORT_SYMBOL_GPL drivers/dma/dw/dw_dmac_core 0xe9c437c3 do_dw_dma_enable +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0x2e302801 hidma_mgmt_init_sys +EXPORT_SYMBOL_GPL drivers/dma/qcom/hdma_mgmt 0xe245eed1 hidma_mgmt_setup +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x0be1a4d8 amd_unregister_ecc_decoder +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x1d34e996 pp_msgs +EXPORT_SYMBOL_GPL drivers/edac/edac_mce_amd 0x8592d892 amd_register_ecc_decoder +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xabb5547d fw_request_get_timestamp +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xad55543d __fw_send_request +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xb5f6d6ff fw_card_read_cycle_time +EXPORT_SYMBOL_GPL drivers/firewire/firewire-core 0xe86fb5c7 fw_card_release +EXPORT_SYMBOL_GPL drivers/fpga/altera-pr-ip-core 0xdc7e12e9 alt_pr_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x05f8a18d dfl_fpga_dev_feature_uinit +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x06982d5e dfl_fpga_cdev_config_ports_vf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x0ec07fa8 dfl_fpga_cdev_config_ports_pf +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x193ab16d dfl_fpga_port_ops_del +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x1b2298ac dfl_fpga_enum_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x2a4f6595 dfl_fpga_dev_ops_unregister +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x399ce4b2 dfl_fpga_feature_devs_enumerate +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x47cef797 dfl_fpga_feature_devs_remove +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x4bd8155a dfl_fpga_set_irq_triggers +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x516dff1a __dfl_fpga_cdev_find_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x538d5f85 dfl_fpga_port_ops_add +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x5d6bee61 dfl_fpga_enum_info_free +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x5f3dbb70 dfl_fpga_dev_feature_init +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x6c5c7784 dfl_fpga_cdev_release_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x75a42690 dfl_fpga_enum_info_add_irq +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x7e13403b dfl_fpga_port_ops_get +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x86554311 dfh_find_param +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x885acb57 dfl_fpga_enum_info_add_dfl +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0x9652cfad dfl_fpga_check_port_id +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xb97c6969 dfl_fpga_cdev_assign_port +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xc1a0f198 dfl_fpga_dev_ops_register +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xcb2bde79 dfl_feature_ioctl_get_num_irqs +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xd3d7bfbe dfl_feature_ioctl_set_irq +EXPORT_SYMBOL_GPL drivers/fpga/dfl 0xeccdf658 dfl_fpga_port_ops_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0633c4b9 fpga_bridges_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x0b2b884c fpga_bridges_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x2c8167cf fpga_bridges_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x378b2014 fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x405c9558 fpga_bridge_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x500407e7 of_fpga_bridge_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x5c65df6a fpga_bridge_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x630f11d4 fpga_bridge_enable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x78fedcb3 fpga_bridge_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0x9b836ca7 of_fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xe3c42286 fpga_bridge_disable +EXPORT_SYMBOL_GPL drivers/fpga/fpga-bridge 0xfab9876d fpga_bridge_get_to_list +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x101512d8 fpga_mgr_lock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2857f727 fpga_mgr_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x2c29089b fpga_mgr_unlock +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x389abeca fpga_image_info_free +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x6a660224 fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x80e4bb6f devm_fpga_mgr_register_full +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x81ddbc39 fpga_mgr_load +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0x959738ff fpga_image_info_alloc +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xa182de65 fpga_mgr_put +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xc017d93d fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xcba3fad9 of_fpga_mgr_get +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xf9aae1f8 devm_fpga_mgr_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-mgr 0xfb64b188 fpga_mgr_register_full +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x01c58fe7 fpga_region_register +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0x2ac93f0c fpga_region_register_full +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xb1089f61 fpga_region_unregister +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xbcaf7e42 fpga_region_program_fpga +EXPORT_SYMBOL_GPL drivers/fpga/fpga-region 0xcd286fed fpga_region_class_find +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x392807fb gnss_deregister_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x4be0d6dd gnss_put_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x50718e4b gnss_insert_raw +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x589535b4 gnss_register_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss 0x9aaf3ea8 gnss_allocate_device +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x3d318979 gnss_serial_register +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x817ad6fb gnss_serial_free +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0x91e84400 gnss_serial_pm_ops +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xc569c2eb gnss_serial_deregister +EXPORT_SYMBOL_GPL drivers/gnss/gnss-serial 0xdc8acbd1 gnss_serial_allocate +EXPORT_SYMBOL_GPL drivers/gpio/gpio-idio-16 0x5d0e4276 idio_16_set +EXPORT_SYMBOL_GPL drivers/gpio/gpio-idio-16 0x6495f119 idio_16_get_multiple +EXPORT_SYMBOL_GPL drivers/gpio/gpio-idio-16 0x68830314 idio_16_state_init +EXPORT_SYMBOL_GPL drivers/gpio/gpio-idio-16 0x70e2b625 idio_16_get +EXPORT_SYMBOL_GPL drivers/gpio/gpio-idio-16 0xae1139f5 idio_16_set_multiple +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0x445da4f3 __max730x_probe +EXPORT_SYMBOL_GPL drivers/gpio/gpio-max730x 0xee158a69 __max730x_remove +EXPORT_SYMBOL_GPL drivers/gpio/gpio-regmap 0x496ce291 gpio_regmap_get_drvdata +EXPORT_SYMBOL_GPL drivers/gpio/gpio-regmap 0x7a75fb7b devm_gpio_regmap_register +EXPORT_SYMBOL_GPL drivers/gpio/gpio-regmap 0xb7066570 gpio_regmap_unregister +EXPORT_SYMBOL_GPL drivers/gpio/gpio-regmap 0xeeef0ba9 gpio_regmap_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x0a6ce4d5 analogix_dp_stop_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x3ee0dd60 anx_dp_aux_transfer +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x5fe82a46 analogix_dp_bind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x70b43aac analogix_dp_start_crc +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0x9dd1e561 analogix_dp_unbind +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xa3916eb1 analogix_dp_suspend +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xb6486e5d analogix_dp_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xc62281cb analogix_dp_resume +EXPORT_SYMBOL_GPL drivers/gpu/drm/bridge/analogix/analogix_dp 0xf600ac46 analogix_dp_probe +EXPORT_SYMBOL_GPL drivers/gpu/drm/display/drm_display_helper 0x1f168c69 drm_hdcp_check_ksvs_revoked +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x16e41748 drm_do_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x27255f41 drm_gem_dumb_map_offset +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x310b3dd9 drm_class_device_register +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x4cbb5352 accel_open +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x59f3a4a7 drm_bridge_get_modes +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x60b3df58 drm_bridge_get_edid +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x6101439d drm_bridge_detect +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x615c43d3 drm_bridge_hpd_enable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x66cf2f64 drm_display_mode_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x708ab6ba drm_class_device_unregister +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x80c36427 drm_crtc_add_crc_entry +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x8541f3ec drm_bridge_hpd_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0x903f2c16 drm_bridge_hpd_notify +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xad885165 drm_bus_flags_from_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xc709f7a3 drmm_kstrdup +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm 0xfe9f72f3 drm_display_mode_to_videomode +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x0975105b drm_gem_dma_dumb_create_internal +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x0d268903 drm_gem_dma_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x23238dc7 drm_gem_dma_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x299fcb0f drm_fb_dma_get_gem_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x30d8ae9a drm_gem_dma_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x4f22d389 drm_fb_dma_get_gem_addr +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x69906151 drm_fb_dma_sync_non_coherent +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x80c79e03 drm_gem_dma_vmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0x9a34ddce drm_gem_dma_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0xaf4a1ecb drm_gem_dma_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0xd2e1129c drm_gem_dma_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_dma_helper 0xf450cb9e drm_gem_dma_free +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x08383812 drm_gem_fb_create_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x268d7280 drm_gem_plane_helper_prepare_fb +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x35f95d15 drm_bridge_connector_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4249c391 drm_gem_fb_create_with_dirty +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x4b717383 drm_gem_fb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0x6249117c drm_gem_fb_init_with_funcs +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xc0f84e72 drm_gem_fb_afbc_init +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_kms_helper 0xd343a58b drm_gem_fb_get_obj +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0x07415e06 drm_gem_shmem_get_pages_sgt +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0x1b679ca1 drm_gem_shmem_vm_ops +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0x60883212 drm_gem_shmem_free +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0x720847e9 drm_gem_shmem_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0x7fc1de59 drm_gem_shmem_get_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0xa4aa4ebf drm_gem_shmem_mmap +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0xbf35ea95 drm_gem_shmem_dumb_create +EXPORT_SYMBOL_GPL drivers/gpu/drm/drm_shmem_helper 0xe399e559 drm_gem_shmem_prime_import_sg_table +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x05876c69 i915_gpu_busy +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x08a7896d i915_gpu_raise +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x402468e9 i915_gpu_lower +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0x500858b9 i915_read_mch_val +EXPORT_SYMBOL_GPL drivers/gpu/drm/i915/i915 0xe7237b0b i915_gpu_turbo_disable +EXPORT_SYMBOL_GPL drivers/gpu/drm/solomon/ssd130x 0x4a980e64 ssd130x_shutdown +EXPORT_SYMBOL_GPL drivers/gpu/drm/solomon/ssd130x 0xb3bdb1d9 ssd130x_remove +EXPORT_SYMBOL_GPL drivers/gpu/drm/solomon/ssd130x 0xe2c37e38 ssd130x_probe +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x03476506 __traceiter_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x04e202fe gb_connection_destroy +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0585f9e6 greybus_data_rcvd +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0ad10a4e __traceiter_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0ad79e3b greybus_deregister_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0b3f8dca __traceiter_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x0d66fbe1 gb_operation_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x10d1b03e __SCT__tp_func_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x11a7b568 __traceiter_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x15d1942f greybus_disabled +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1948f633 __tracepoint_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x1ef7137c gb_connection_latency_tag_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x243fece7 gb_connection_enable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x25da2353 gb_operation_unidirectional_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x34b84d18 gb_hd_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x3df8b336 gb_connection_enable_tx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4ac79167 gb_connection_disable_rx +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x4e9f16fd gb_operation_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x573d0145 __SCK__tp_func_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5abe85a4 gb_hd_cport_release_reserved +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5b8e00be greybus_register_driver +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x5eee08e6 greybus_message_sent +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x665d2379 __tracepoint_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x709eed81 gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x78fedb98 __SCT__tp_func_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x79e4a37d gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x8c8fdada gb_hd_shutdown +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0x9b75ba3d gb_operation_result +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa210ff61 gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa2ac9f4e gb_operation_get_payload_size_max +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xa9f81148 __SCK__tp_func_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xadd7926d __SCT__tp_func_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xae877457 __SCT__tp_func_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb13509f0 gb_connection_create_offloaded +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xb3778e47 gb_connection_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbfb52284 __SCT__tp_func_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xbfec75b3 __tracepoint_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc14a9f68 gb_debugfs_get +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xc71b067a gb_hd_cport_reserve +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xca5682af gb_interface_request_mode_switch +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xcd6100a0 __SCK__tp_func_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd2afd562 gb_operation_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd3294e93 __tracepoint_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd3d20de4 gb_operation_cancel +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd4efe68f __traceiter_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd5610dca gb_operation_response_alloc +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd5a415d8 gb_operation_put +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xd9cc8fd2 gb_connection_create_flags +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdc561639 __traceiter_gb_hd_del +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xdf932cc9 __SCK__tp_func_gb_hd_in +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe175c5bb gb_svc_intf_set_power_mode +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe4a772df __SCK__tp_func_gb_hd_create +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe6b45fb6 __SCT__tp_func_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xe78de63e __tracepoint_gb_hd_add +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xeaf35cac gb_connection_latency_tag_disable +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xed159be0 gb_operation_request_send_sync_timeout +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xee1940ad __SCK__tp_func_gb_message_submit +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xee1b9db9 gb_connection_disable_forced +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xf256fc2c __tracepoint_gb_hd_release +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfa0526e3 gb_operation_request_send +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfa90fc68 gb_hd_output +EXPORT_SYMBOL_GPL drivers/greybus/greybus 0xfb5ebddc gb_connection_disable +EXPORT_SYMBOL_GPL drivers/hid/hid 0x008451f6 hid_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x03f05149 hid_allocate_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0431b6f4 hidinput_count_leds +EXPORT_SYMBOL_GPL drivers/hid/hid 0x07fcab08 hidinput_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x091eea91 hidraw_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x095c6bed __hid_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0dc54970 hid_report_raw_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x0f019fa3 hid_dump_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x11df954d hid_validate_values +EXPORT_SYMBOL_GPL drivers/hid/hid 0x14bc1079 __hid_register_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0x19d52f1f hid_quirks_exit +EXPORT_SYMBOL_GPL drivers/hid/hid 0x1cc6d851 hid_hw_raw_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x2ecf1c5c hid_destroy_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x31451911 hid_hw_request +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3b70543f hid_add_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3c0049a7 hid_dump_input +EXPORT_SYMBOL_GPL drivers/hid/hid 0x3eee6e72 hid_lookup_quirk +EXPORT_SYMBOL_GPL drivers/hid/hid 0x467e6151 hid_alloc_report_buf +EXPORT_SYMBOL_GPL drivers/hid/hid 0x49af2608 hid_field_extract +EXPORT_SYMBOL_GPL drivers/hid/hid 0x50a52ae0 hid_register_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5a71475e hid_hw_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5cefedb0 hid_set_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x5ec3c042 hid_debug_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0x64f4fac3 hid_match_device +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6a56d9f2 hid_hw_stop +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6b2a98e9 hid_setup_resolution_multiplier +EXPORT_SYMBOL_GPL drivers/hid/hid 0x6fa969d4 hid_dump_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0x75f0972f hid_input_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x7c6216c1 hid_open_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x81159114 hid_output_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0x86c831c9 hid_driver_resume +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8a6d6b14 hidinput_connect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8a8aa8ab hid_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0x8b13a8b8 hid_snto32 +EXPORT_SYMBOL_GPL drivers/hid/hid 0x94a7772b hid_hw_open +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa23bca9d hid_hw_start +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa3c490d9 hid_unregister_driver +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa4beaa53 hid_dump_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa5ae871e hid_compare_device_paths +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa5d4c3c7 hid_driver_reset_resume +EXPORT_SYMBOL_GPL drivers/hid/hid 0xa7469ed5 hidinput_calc_abs_res +EXPORT_SYMBOL_GPL drivers/hid/hid 0xb5f259a1 hid_match_id +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbc21304e hid_parse_report +EXPORT_SYMBOL_GPL drivers/hid/hid 0xbc290921 hid_resolv_usage +EXPORT_SYMBOL_GPL drivers/hid/hid 0xc49a4ad5 hidraw_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xcb7999ae hid_driver_suspend +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd0342f33 hid_check_keys_pressed +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd0e01783 hid_ignore +EXPORT_SYMBOL_GPL drivers/hid/hid 0xd2b3703d hidinput_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe3297884 hidraw_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe715af9a hidinput_get_led_field +EXPORT_SYMBOL_GPL drivers/hid/hid 0xe7aab38b hid_hw_close +EXPORT_SYMBOL_GPL drivers/hid/hid 0xfa355613 hid_quirks_init +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x2f622ea1 roccat_disconnect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x3e4427c8 roccat_report_event +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat 0x9cb6a102 roccat_connect +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x0e4fd1e5 roccat_common2_send +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x16f2dcb9 roccat_common2_sysfs_write +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x2c19d622 roccat_common2_receive +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0x98614784 roccat_common2_device_init_struct +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc4723099 roccat_common2_send_with_status +EXPORT_SYMBOL_GPL drivers/hid/hid-roccat-common 0xc6f7de45 roccat_common2_sysfs_read +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x3747db4f sensor_hub_set_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x6c09aa58 hid_sensor_get_usage_index +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x70af7eef sensor_hub_input_attr_get_raw_value +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x83bb6e3e sensor_hub_get_feature +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9246b395 sensor_hub_device_open +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0x9a098751 sensor_hub_register_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xa3f9765d sensor_hub_input_get_attribute_info +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xb671bfc7 sensor_hub_remove_callback +EXPORT_SYMBOL_GPL drivers/hid/hid-sensor-hub 0xdddac4e7 sensor_hub_device_close +EXPORT_SYMBOL_GPL drivers/hid/hid-vivaldi-common 0x020a0790 vivaldi_attribute_groups +EXPORT_SYMBOL_GPL drivers/hid/hid-vivaldi-common 0x8154351a vivaldi_feature_mapping +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0x0eed25cf i2c_hid_core_probe +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0x3e79c651 i2c_hid_core_pm +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xd901be8e i2c_hid_core_shutdown +EXPORT_SYMBOL_GPL drivers/hid/i2c-hid/i2c-hid 0xf946a36c i2c_hid_core_remove +EXPORT_SYMBOL_GPL drivers/hid/intel-ish-hid/intel-ishtp 0x88af43ba ishtp_wait_resume +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xdc0aa601 hiddev_hid_event +EXPORT_SYMBOL_GPL drivers/hid/usbhid/usbhid 0xf1158712 hid_is_usb +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x11583388 hsi_new_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x14d2eb8e hsi_unregister_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x1feaa4ed hsi_register_client_driver +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x408d4c75 hsi_alloc_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x41041235 hsi_claim_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5210a5bf hsi_board_list +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5cef6699 hsi_register_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x5f7289e2 hsi_alloc_msg +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x65209373 hsi_get_channel_id_by_name +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x814abdfe hsi_port_unregister_clients +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x86dd6fce hsi_async +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x8b369dea hsi_put_controller +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9268b9c4 hsi_remove_client +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x98064068 hsi_release_port +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9894aa7b hsi_unregister_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0x9c499f6d hsi_register_port_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb844a402 hsi_event +EXPORT_SYMBOL_GPL drivers/hsi/hsi 0xb87e8038 hsi_free_msg +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x039fcd61 vmbus_hvsock_device_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x1163ab23 vmbus_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x12b372c4 vmbus_establish_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x1fdea5d7 vmbus_alloc_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x316bc0bd hv_pkt_iter_first +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x31e2e77f vmbus_free_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x321055cb vmbus_prep_negotiate_resp +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x3884194d vmbus_connection +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x3adac1e5 __vmbus_request_addr_match +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x3c70bb62 vmbus_allocate_mmio +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x414f5001 __vmbus_driver_register +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x46a417ca vmbus_proto_version +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x4b2210b8 vmbus_send_tl_connect_request +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x62a1c177 __hv_pkt_iter_next +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x674e657e hv_ringbuffer_get_debuginfo +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x679bc4e6 vmbus_open +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x69b9e8d4 vmbus_sendpacket_mpb_desc +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x6a141257 vmbus_setevent +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x72b0df52 vmbus_free_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x8034c250 vmbus_teardown_gpadl +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x829b7dae vmbus_set_chn_rescind_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0x929fa587 vmbus_next_request_id +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xa8c1ce3b hv_ringbuffer_spinlock_busy +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb43b12d3 hv_pkt_iter_close +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xb8632760 vmbus_send_modifychannel +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xbdb77a60 vmbus_recvpacket_raw +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xc23e6fb6 vmbus_driver_unregister +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xcc4c471d vmbus_request_addr +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd2eb231e vmbus_connect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xd863e842 vmbus_request_addr_match +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xdb26ecaf vmbus_disconnect_ring +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xe224a104 vmbus_sendpacket_pagebuffer +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xeb302fe8 vmbus_set_sc_create_callback +EXPORT_SYMBOL_GPL drivers/hv/hv_vmbus 0xfcf5ebf5 vmbus_set_event +EXPORT_SYMBOL_GPL drivers/hwmon/adt7x10 0xd01498b1 adt7x10_probe +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0x5cbb5274 ltc2947_core_probe +EXPORT_SYMBOL_GPL drivers/hwmon/ltc2947-core 0xbc54f93e ltc2947_of_match +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0x1c643bc4 nct6775_show_alarm +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0x2459a4f1 nct6775_update_device +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0xcb94ccf4 nct6775_show_beep +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0xd7f14d32 nct6775_store_beep +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0xda56df45 nct6775_probe +EXPORT_SYMBOL_GPL drivers/hwmon/nct6775-core 0xfbbc08c6 nct6775_reg_is_word_sized +EXPORT_SYMBOL_GPL drivers/hwmon/occ/occ-hwmon-common 0x752a119e occ_shutdown +EXPORT_SYMBOL_GPL drivers/hwmon/occ/occ-hwmon-common 0xdd6410c7 occ_setup +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x0ac309c0 intel_th_trace_switch +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x2a6c7bfc intel_th_driver_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x31425abe intel_th_free +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x478cd708 intel_th_alloc +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x4d71b142 intel_th_set_output +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x63c76158 intel_th_driver_register +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6b40f9ce intel_th_output_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x6ca5231e intel_th_trace_disable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th 0x81c4cc6a intel_th_trace_enable +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x21b414ae intel_th_msu_buffer_unregister +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0x24e6ce0a intel_th_msc_window_unlock +EXPORT_SYMBOL_GPL drivers/hwtracing/intel_th/intel_th_msu 0xce07d351 intel_th_msu_buffer_register +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x2c150cab stm_register_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x437541cf stm_data_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x74f9bfa7 stm_source_write +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x7bfe18e2 to_pdrv_policy_node +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0x7f4f4e18 stm_unregister_protocol +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xaa3c2f88 stm_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xceed69e3 stm_source_unregister_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xe2208cda stm_source_register_device +EXPORT_SYMBOL_GPL drivers/hwtracing/stm/stm_core 0xfdd967e6 stm_unregister_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x2180169c amd_mp2_bus_enable_set +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x2f68e423 amd_mp2_register_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0x3ebd26b7 amd_mp2_process_event +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xa16e3f01 amd_mp2_rw_timeout +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xb9d9ee63 amd_mp2_unregister_cb +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xba686fd0 amd_mp2_find_device +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-amd-mp2-pci 0xff577831 amd_mp2_rw +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-ccgx-ucsi 0xf63efcec i2c_new_ccgx_ucsi +EXPORT_SYMBOL_GPL drivers/i2c/busses/i2c-nforce2 0x6c5ec47c nforce2_smbus +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x20528a0c i2c_root_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x31d4ed9e i2c_mux_alloc +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x4feb4864 i2c_mux_del_adapters +EXPORT_SYMBOL_GPL drivers/i2c/i2c-mux 0x53112495 i2c_mux_add_adapter +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0x89e5f0b6 i2c_register_spd +EXPORT_SYMBOL_GPL drivers/i2c/i2c-smbus 0xb6317423 i2c_handle_smbus_alert +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x167cbcda i3c_master_get_free_addr +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x17a5e4ca i3c_driver_register_with_owner +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x1f4a221a i3c_generic_ibi_alloc_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x23c3e5e0 i3c_master_disec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x2b29dcb4 i3c_device_do_priv_xfers +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x34d3c702 i3c_device_do_setdasa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x3e6689ae i3c_master_entdaa_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4151eaff i3c_device_free_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x46dea4e6 i3c_master_add_i3c_dev_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x4d97b4cd i3cdev_to_dev +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x51e9ddb6 i3c_device_request_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x51f5915d i3c_master_unregister +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x588909f9 i3c_device_disable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x73be6dd6 i3c_device_match_id +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x76fe3e05 i3c_generic_ibi_free_pool +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0x856df70f i3c_master_set_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xb8190978 i3c_generic_ibi_get_free_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xc7c30eb3 i3c_master_queue_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xcfc69e60 i3c_master_enec_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd1173a33 i3c_master_defslvs_locked +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd549e225 i3c_master_register +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xd7e4c5ca i3c_device_enable_ibi +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xde6067d8 i3c_generic_ibi_recycle_slot +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xeb4532d8 i3c_device_get_info +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xeddbec8f i3c_master_do_daa +EXPORT_SYMBOL_GPL drivers/i3c/i3c 0xef0abfc0 i3c_driver_unregister +EXPORT_SYMBOL_GPL drivers/i3c/master/dw-i3c-master 0xc5b5673f dw_i3c_common_remove +EXPORT_SYMBOL_GPL drivers/i3c/master/dw-i3c-master 0xcf9bd56e dw_i3c_common_probe +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x035f5b0f iio_channel_get_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x267c0508 iio_channel_release_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x2a1fab3c iio_channel_stop_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x3ada3356 iio_channel_cb_get_channels +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x7a711aef iio_channel_start_all_cb +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0x9acf62ab iio_channel_cb_set_buffer_watermark +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-cb 0xa6df4703 iio_channel_cb_get_iio_dev +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x3457ff3c iio_dma_buffer_release +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x36f27df6 iio_dma_buffer_read +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x3ffaf4c9 iio_dma_buffer_request_update +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x5f596d86 iio_dma_buffer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x66c7dee2 iio_dma_buffer_block_list_abort +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x77d0143e iio_dma_buffer_exit +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x83b6a750 iio_dma_buffer_init +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0x9b2de529 iio_dma_buffer_set_length +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xa23897f1 iio_dma_buffer_set_bytes_per_datum +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xa6009d49 iio_dma_buffer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xb5d7bb4b iio_dma_buffer_data_available +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dma 0xe0e927b3 iio_dma_buffer_block_done +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-buffer-dmaengine 0xfe94c0e6 devm_iio_dmaengine_buffer_setup +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x3391543d iio_hw_consumer_disable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x55d8bf33 devm_iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0x9671bc15 iio_hw_consumer_free +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0xbf358fa9 iio_hw_consumer_enable +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-hw-consumer 0xd8df5645 iio_hw_consumer_alloc +EXPORT_SYMBOL_GPL drivers/iio/buffer/industrialio-triggered-buffer 0xe6ecc59f devm_iio_triggered_buffer_setup_ext +EXPORT_SYMBOL_GPL drivers/iio/buffer/kfifo_buf 0xf3bd7d37 devm_iio_kfifo_buffer_setup_ext +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x03c2f8dc cros_ec_sensors_ext_info +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x1fd5f227 cros_ec_sensors_read_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x31bb7aa2 cros_ec_motion_send_host_cmd +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x41727038 cros_ec_sensors_core_read +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x5cf33dee cros_ec_sensors_read_lpc +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x61f56242 cros_ec_sensors_push_data +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x6a0bfcc3 cros_ec_sensors_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x6faa797f cros_ec_sensors_core_init +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0x9971dac4 cros_ec_sensors_capture +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xd7c696cf cros_ec_sensors_core_register +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xda33d1f7 cros_ec_sensors_core_write +EXPORT_SYMBOL_GPL drivers/iio/common/cros_ec_sensors/cros_ec_sensors_core 0xeadb74dd cros_ec_sensors_core_read_avail +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0x03d0f523 bmg160_pm_ops +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xb854015b bmg160_core_remove +EXPORT_SYMBOL_GPL drivers/iio/gyro/bmg160_core 0xe85c66d7 bmg160_core_probe +EXPORT_SYMBOL_GPL drivers/iio/imu/fxos8700_core 0x9c31dbf5 fxos8700_core_probe +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0772ac17 iio_read_max_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x0c0587c2 iio_device_claim_buffer_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x11f69bf6 iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x18458a1e iio_read_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x195f07b1 devm_iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1c88ac64 iio_device_get_current_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x1d4407c0 iio_read_avail_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x219423a6 iio_update_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x26f6b499 iio_str_to_fixpoint +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x29493b89 iio_write_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2d708b80 iio_read_channel_offset +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2e85373c iio_channel_release +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2f0eb95d iio_read_channel_scale +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x2f3e4fc7 iio_push_to_buffers_with_ts_unaligned +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x33c9e896 devm_iio_map_array_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x370e49ba devm_iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x381e69ec iio_validate_scan_mask_onehot +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x393a3221 iio_enum_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x48b5db1b iio_device_release_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4d251af2 devm_iio_device_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x4dce7dd4 iio_format_value +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x51cadeb3 iio_alloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x560c2ae6 iio_channel_get_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x58fe75e2 iio_validate_own_trigger +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x5c9b1ead __devm_iio_trigger_alloc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x639c7f82 iio_channel_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6b1bf7aa iio_read_channel_ext_info +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x6f518a96 iio_convert_raw_to_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x72ae09f7 iio_dealloc_pollfunc +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x76c8f9b7 fwnode_iio_channel_get_by_name +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x7c1b070b iio_get_channel_type +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x86a213e6 iio_read_channel_processed +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x878fc913 iio_channel_release_all +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x8c467795 iio_buffer_enabled +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x92178fae iio_read_avail_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9542617d iio_push_to_buffers +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x974906cd iio_write_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x99e6ff26 iio_read_channel_attribute +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0x9c202938 iio_map_array_unregister +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa40ffe7e __devm_iio_device_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xa73435c1 iio_buffer_get +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb5bd6ba3 iio_device_claim_direct_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb5ca6d55 iio_get_debugfs_dentry +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb7b727dc devm_fwnode_iio_channel_get_by_name +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xb8c40ec1 iio_get_channel_ext_info_count +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xc6ed2ebd iio_enum_available_read +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xd4c7b9f7 iio_write_channel_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xdfabc611 iio_device_id +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe5352f1b iio_pop_from_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe7936307 iio_buffer_put +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe8da8fcd devm_iio_trigger_register +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe92b031b iio_show_mount_matrix +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xe98bb85e iio_device_attach_buffer +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf0be64da iio_read_channel_average_raw +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf10d377a iio_device_release_buffer_mode +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xf8bf5719 iio_enum_write +EXPORT_SYMBOL_GPL drivers/iio/industrialio 0xff1c62cf iio_read_channel_processed_scale +EXPORT_SYMBOL_GPL drivers/infiniband/core/ib_core 0xdbd019c4 ib_wq +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x03916127 rtrs_iu_alloc +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2c6075c4 rtrs_iu_free +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x2f40964a rtrs_stop_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x357b0038 rtrs_iu_post_recv +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x45a29576 rtrs_post_recv_empty +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x521ba135 rtrs_iu_post_rdma_write_imm +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5d74bd25 rtrs_iu_post_send +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x5e9a9ed7 rtrs_send_hb_ack +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x69f398b5 rtrs_cq_qp_create +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7249498e rtrs_start_hb +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0x7ed7847c rtrs_cq_qp_destroy +EXPORT_SYMBOL_GPL drivers/infiniband/ulp/rtrs/rtrs-core 0xd84dc855 rtrs_init_hb +EXPORT_SYMBOL_GPL drivers/input/ff-memless 0xf2d4a32f input_ff_create_memless +EXPORT_SYMBOL_GPL drivers/input/matrix-keymap 0x59ba2a44 matrix_keypad_parse_properties +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0x848ac71b adxl34x_pm +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xb3f5deb0 adxl34x_probe +EXPORT_SYMBOL_GPL drivers/input/misc/adxl34x 0xec511022 adxl34x_remove +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x56eb20fb rmi_of_property_read_u32 +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x5b9ee61e rmi_driver_suspend +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x60d6cc14 rmi_set_attn_data +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x72963646 rmi_2d_sensor_abs_report +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x86081ed1 rmi_driver_resume +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x885f8580 rmi_2d_sensor_of_probe +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0x983f27a6 rmi_2d_sensor_configure_input +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa273917a rmi_dbg +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xa9a41e06 rmi_register_transport_device +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xb7b0e8ed __rmi_register_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xc97f3314 rmi_2d_sensor_abs_process +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xf9b41f13 rmi_unregister_function_handler +EXPORT_SYMBOL_GPL drivers/input/rmi4/rmi_core 0xfaae78c1 rmi_2d_sensor_rel_report +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xa0cad0b9 cyttsp4_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xbe649440 cyttsp4_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp4_core 0xd766b78e cyttsp4_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0x5fb8e50d cyttsp_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_core 0xcc5eecfd cyttsp_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0x292ee8fe cyttsp_i2c_read_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/cyttsp_i2c_common 0xb581d64e cyttsp_i2c_write_block_data +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x608f2348 tsc200x_remove +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x650dd3cb tsc200x_pm_ops +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0x8286530e tsc200x_probe +EXPORT_SYMBOL_GPL drivers/input/touchscreen/tsc200x-core 0xd66f5c94 tsc200x_regmap_config +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0978cb0d ipack_bus_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x0ccc3f6d ipack_driver_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x103dab57 ipack_get_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x25895ccb ipack_driver_unregister +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x40635a57 ipack_device_init +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0x8a629a72 ipack_put_device +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xc81abff5 ipack_device_add +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xcc16463b ipack_bus_register +EXPORT_SYMBOL_GPL drivers/ipack/ipack 0xfdef94e8 ipack_device_del +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x45943115 led_update_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x5035d73f devm_led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0x5bbfeb2c led_set_flash_timeout +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xa87019fa led_get_flash_fault +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xb8b9e5d3 led_set_flash_brightness +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xc6261ca8 devm_led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xc929badb led_classdev_flash_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-flash 0xdd950e75 led_classdev_flash_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-multicolor 0x821600cb devm_led_classdev_multicolor_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-multicolor 0x8d628010 led_mc_calc_color_components +EXPORT_SYMBOL_GPL drivers/leds/led-class-multicolor 0xed2e065a led_classdev_multicolor_unregister +EXPORT_SYMBOL_GPL drivers/leds/led-class-multicolor 0xf222461e led_classdev_multicolor_register_ext +EXPORT_SYMBOL_GPL drivers/leds/led-class-multicolor 0xfa778b78 devm_led_classdev_multicolor_unregister +EXPORT_SYMBOL_GPL drivers/leds/simple/simatic-ipc-leds-gpio-core 0x530319a9 simatic_ipc_leds_gpio_remove +EXPORT_SYMBOL_GPL drivers/leds/simple/simatic-ipc-leds-gpio-core 0xf4cb7e04 simatic_ipc_leds_gpio_probe +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-audio 0x3bd45b0d ledtrig_audio_set +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-audio 0xce593c22 ledtrig_audio_get +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x749e05f2 ledtrig_flash_ctrl +EXPORT_SYMBOL_GPL drivers/leds/trigger/ledtrig-camera 0x7903e46e ledtrig_torch_ctrl +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x02d17bc3 __SCK__tp_func_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x05545033 __SCK__tp_func_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x0ef655c7 __SCK__tp_func_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1284ef61 __traceiter_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x130aa15c __tracepoint_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1351053d __SCK__tp_func_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x136441d6 __SCK__tp_func_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x16669463 __tracepoint_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x17a83e40 __traceiter_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x195c39e7 __SCK__tp_func_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x19ae294d __traceiter_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1a94a2cb __SCK__tp_func_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1b9563fb __traceiter_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x1c599ebe __traceiter_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x21b87a42 __SCT__tp_func_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x25cacb14 __SCT__tp_func_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x25f070af __traceiter_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x264a094a __tracepoint_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2766fb04 __traceiter_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x287090dc __SCT__tp_func_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x297e0da3 __SCT__tp_func_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2ac644a2 __tracepoint_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x2bd8b866 __traceiter_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x300c8ff4 __SCT__tp_func_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x32aa1fe2 __traceiter_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x367dc9fe __tracepoint_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x36a06e0c __tracepoint_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x36f317a4 __SCT__tp_func_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x3bfcf752 __traceiter_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x3f35502a __tracepoint_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4067090b __tracepoint_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x43b4a33c __SCK__tp_func_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4543b49b __SCT__tp_func_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x471da949 __tracepoint_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x472aaa68 __traceiter_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4d1b5def __tracepoint_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4d8f9d2e __SCK__tp_func_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4e94a30a __SCK__tp_func_bcache_btree_set_root +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x4f368e2f __tracepoint_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x58589231 __SCK__tp_func_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x59298793 __tracepoint_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x59531e4c __traceiter_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x5dd80bd5 __SCT__tp_func_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x629c9180 __SCT__tp_func_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x64e39418 __traceiter_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6595d892 __tracepoint_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6677ebf0 __SCT__tp_func_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x69c3768f __traceiter_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x6a65967a __tracepoint_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x71e371f0 __tracepoint_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x752f7fa4 __SCT__tp_func_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7671bcaf __SCK__tp_func_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x787810b2 __SCT__tp_func_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7ae10c8f __SCK__tp_func_bcache_writeback_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7af391bc __tracepoint_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7c688354 __tracepoint_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7e7074ca __SCK__tp_func_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x7f252e00 __SCT__tp_func_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x817ad796 __SCT__tp_func_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x822db771 __SCT__tp_func_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x891f39eb __tracepoint_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8ca27c0a __traceiter_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8e8d7149 __traceiter_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x8eac5b1e __tracepoint_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x90f3b08b __tracepoint_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x94a0a0ff __traceiter_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x950fd670 __traceiter_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x951b8b3c __SCK__tp_func_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x972aa384 __SCT__tp_func_bcache_btree_insert_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9c719d98 __SCK__tp_func_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9cbcf007 __SCK__tp_func_bcache_btree_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9d28d153 __SCT__tp_func_bcache_btree_node_split +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0x9f2f280e __tracepoint_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa15bd7c4 __SCT__tp_func_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa5633b78 __tracepoint_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa5a3a462 __traceiter_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xa784e073 __SCT__tp_func_bcache_btree_node_compact +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaca9f240 __SCK__tp_func_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xad6440b4 __traceiter_bcache_gc_copy +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xae07916f __tracepoint_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xae881893 __traceiter_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xaee07efc __SCK__tp_func_bcache_read_retry +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb1ddc464 __SCK__tp_func_bcache_gc_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb5a62a8c __traceiter_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb7353714 __SCK__tp_func_bcache_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb7e5379d __SCT__tp_func_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xb86d7f11 __traceiter_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xba9a70d5 __SCK__tp_func_bcache_btree_node_free +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbb8793d9 __SCK__tp_func_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbdb414b5 __traceiter_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbe23e10e __tracepoint_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xbe2b2fa8 __traceiter_bcache_btree_node_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc04849d8 __SCK__tp_func_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc0610f4a __tracepoint_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc4d5caf8 __SCK__tp_func_bcache_btree_gc_coalesce +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc73e0c99 __SCT__tp_func_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xc9a99e1c __SCK__tp_func_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xcccdb19e __traceiter_bcache_journal_write +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xcd66fc2a __traceiter_bcache_btree_node_alloc +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xce451ad8 __SCT__tp_func_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd1e104a5 __tracepoint_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd27b31d9 __tracepoint_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd299e2da __tracepoint_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd2d72dff __SCK__tp_func_bcache_btree_cache_cannibalize +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd30206ff __SCT__tp_func_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd7a376b3 __SCT__tp_func_bcache_gc_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd7a7fbec __SCT__tp_func_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xd824a353 __tracepoint_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdb0682eb __SCT__tp_func_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdd97b266 __tracepoint_bcache_journal_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xdef91cca __SCK__tp_func_bcache_bypass_congested +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe28182cb __SCK__tp_func_bcache_cache_insert +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe2b1466e __traceiter_bcache_alloc_fail +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe398489f __traceiter_bcache_request_start +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe4511e2f __SCK__tp_func_bcache_journal_replay_key +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xe74ea4d7 __tracepoint_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xec29e22a __traceiter_bcache_gc_copy_collision +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xedf90bb3 __SCT__tp_func_bcache_read +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf57f81ae __SCT__tp_func_bcache_bypass_sequential +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf7488006 __traceiter_bcache_invalidate +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xf7a5edc7 __SCT__tp_func_bcache_journal_entry_full +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfb767f16 __SCT__tp_func_bcache_writeback +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfce76b1e __SCT__tp_func_bcache_request_end +EXPORT_SYMBOL_GPL drivers/md/bcache/bcache 0xfdd5c862 __SCK__tp_func_bcache_btree_read +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x09aa956c dm_cell_quiesce_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x17dd39d6 dm_deferred_set_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1c46f46a dm_cell_get_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x1f22d7c7 dm_bio_prison_free_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2536296e dm_bio_detain +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x28269135 dm_cell_visit_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x2eb01e04 dm_deferred_set_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x45172044 dm_cell_put_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x4e2f78a5 dm_cell_unlock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5a75ed60 dm_cell_release_no_holder +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x5e8f0f68 dm_bio_prison_alloc_cell_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6791a44e dm_deferred_entry_dec +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x6f4207bb dm_get_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x753e20b2 dm_bio_prison_create +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x828e2cc1 dm_cell_lock_promote_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0x9ff3ed1e dm_bio_prison_free_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xace9b57b dm_bio_prison_destroy_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb6d5c65d dm_deferred_set_add_work +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xb70b342a dm_bio_prison_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xca2e3a88 dm_deferred_entry_inc +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xcb1ed3b8 dm_cell_lock_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xd99e003d dm_bio_prison_create_v2 +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xe0a19a26 dm_cell_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xea7ce964 dm_cell_promote_or_release +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf044ba48 dm_cell_error +EXPORT_SYMBOL_GPL drivers/md/dm-bio-prison 0xf61771d9 dm_bio_prison_alloc_cell +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x0ad0dc4f dm_bufio_mark_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x23c30545 dm_bufio_client_create +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x24772bfe dm_bufio_get +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x2e0774dc dm_bufio_get_block_number +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x656100cc dm_bufio_client_reset +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6a2f40e1 dm_bufio_mark_partial_buffer_dirty +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6aebce95 dm_bufio_issue_discard +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6cdb2d56 dm_bufio_prefetch +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d3f57bd dm_bufio_get_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x6d83826d dm_bufio_get_block_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x74dcd98c dm_bufio_get_aux_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x867e87eb dm_bufio_get_dm_io_client +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0x91f00abc dm_bufio_set_minimum_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xa82b2066 dm_bufio_write_dirty_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xb04f56ab dm_bufio_read +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc0d7df85 dm_bufio_new +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xc9a3422d dm_bufio_write_dirty_buffers_async +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xcd2ba798 dm_bufio_forget +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd4bddf5c dm_bufio_issue_flush +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xd991e3b9 dm_bufio_get_device_size +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xe6024e59 dm_bufio_release +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xebcc64a4 dm_bufio_get_block_data +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xeca7949e dm_bufio_client_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xed3283a4 dm_bufio_set_sector_offset +EXPORT_SYMBOL_GPL drivers/md/dm-bufio 0xf241a6eb dm_bufio_forget_buffers +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x0efbca4c btracker_promotion_already_present +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x1c852cab btracker_nr_demotions_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x23ddc5ab dm_cache_policy_get_version +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x37ef59a5 dm_cache_policy_get_name +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x481a0b15 btracker_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x4becb830 dm_cache_policy_get_hint_size +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x50b3c64c dm_cache_policy_create +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5adc2807 btracker_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x5f802f7d dm_cache_policy_unregister +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x65eea825 btracker_nr_writebacks_queued +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x6b31f429 dm_cache_policy_register +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0x87bee547 btracker_queue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa2365f44 btracker_issue +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xa7eadcb5 btracker_complete +EXPORT_SYMBOL_GPL drivers/md/dm-cache 0xf9f3e74b dm_cache_policy_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x2aef22ce dm_unregister_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-multipath 0x9d4d7e7c dm_register_path_selector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x01d2f9ac dm_rh_recovery_start +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x2dc7a081 dm_rh_delay +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38972f23 dm_rh_region_to_sector +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x38efaf5a dm_region_hash_destroy +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3a18389a dm_rh_update_states +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x3b3f9f4d dm_rh_dirty_log +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5049018f dm_region_hash_create +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x57e16c3e dm_rh_get_state +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5a021adc dm_rh_mark_nosync +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x5f4a6e61 dm_rh_dec +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7774620f dm_rh_stop_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d053fc5 dm_rh_start_recovery +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0x7d5e1815 dm_rh_get_region_key +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa53387c7 dm_rh_flush +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xa83588eb dm_rh_recovery_end +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xbe38a431 dm_rh_recovery_prepare +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xd8aa4284 dm_rh_region_context +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf0f49db5 dm_rh_bio_to_region +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf2fd3979 dm_rh_inc_pending +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xf92b8a3d dm_rh_get_region_size +EXPORT_SYMBOL_GPL drivers/md/dm-region-hash 0xfd93482e dm_rh_recovery_in_flight +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0054f69d dm_tm_pre_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x01f7c2b0 dm_btree_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0211c39e dm_tm_with_runs +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x07ed9022 dm_bitset_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x088a5b30 dm_btree_find_lowest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0cf7c42f dm_btree_remove +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x0d251167 dm_array_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x109eae1f dm_btree_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x15a2bf57 dm_btree_lookup_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1ae16d40 dm_tm_dec_range +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1d0d53f7 dm_array_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x1e3f728d dm_block_data +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2842d760 dm_bitset_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2bc1a8d9 dm_tm_open_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x2f40da68 dm_bm_set_read_write +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x30c37cc0 dm_bm_write_lock_zero +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x32bf4f4b dm_bitset_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3646e38f dm_tm_issue_prefetches +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3896f8d8 dm_array_walk +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x38d53eec dm_array_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ad0f55b dm_bm_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x3ae50a4a dm_tm_inc_range +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x40720a25 dm_bitset_set_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x418204e4 dm_array_set_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x46c56110 dm_bitset_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x48e323be dm_bm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4f2c653e dm_btree_insert_notify +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x4f477261 dm_bm_checksum +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x51005cef dm_bitset_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5375ca71 dm_bm_write_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5475ba9e dm_block_location +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x563946a0 dm_btree_remove_leaves +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x5b04d3fe dm_bitset_clear_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x67c6c5b9 dm_array_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x68f34c27 dm_array_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6bfa88c8 dm_bitset_cursor_begin +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6c600395 dm_btree_del +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x6fac2256 dm_array_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x703aa099 dm_block_manager_reset +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x72289260 dm_block_manager_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7612cd9c dm_bm_block_size +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x79bdc649 dm_sm_disk_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7ade1071 dm_tm_destroy +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b047bd9 dm_tm_create_non_blocking_clone +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x7b6b3af5 dm_bm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x836693c5 dm_disk_bitset_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x87419c51 dm_array_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x87c934be dm_tm_inc +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x88295b96 dm_tm_unlock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x8e057e61 dm_array_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x900896b9 dm_btree_cursor_skip +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x91baa32f dm_btree_find_highest_key +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9290e07a dm_tm_read_lock +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x932a6ffc dm_tm_shadow_block +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x93bb8ef1 dm_block_manager_create +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x94daa188 dm_bitset_cursor_next +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x95a52abd dm_bm_is_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9718cffa dm_sm_disk_open +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0x9e798e22 dm_bm_set_read_only +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa0bc1801 dm_btree_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xa99029b9 dm_bitset_cursor_end +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xb940af6a dm_array_info_init +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xbdde4031 dm_btree_empty +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd017c9c7 dm_array_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd163cade dm_tm_commit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xd8682982 dm_btree_insert +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xdb2c8e97 dm_btree_lookup +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xdf3a4e7d dm_tm_create_with_sm +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe07a2542 dm_bitset_new +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe0e68183 dm_array_resize +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xe781f874 dm_tm_dec +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xecc1aeba dm_bitset_test_bit +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xedf5036f dm_bitset_flush +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf2b4509a dm_btree_cursor_get_value +EXPORT_SYMBOL_GPL drivers/md/persistent-data/dm-persistent-data 0xf71f197e dm_btree_cursor_next +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x08917af4 cec_delete_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x13715310 cec_notifier_cec_adap_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x258f4f26 cec_s_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x495bb59c cec_s_log_addrs +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x57d8c890 cec_queue_pin_hpd_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x5821117a cec_notifier_cec_adap_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x6218ed2f cec_register_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x64d8f1cf cec_queue_pin_cec_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x65d2f996 cec_unregister_adapter +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7dd34f35 cec_notifier_conn_register +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7e41de07 cec_received_msg_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x7e593d43 cec_notifier_parse_hdmi_phandle +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0x8f4cf571 cec_transmit_msg +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa01fbb6b cec_notifier_set_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xa60823f8 cec_s_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xabc9f24b cec_fill_conn_info_from_drm +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xac400456 cec_queue_pin_5v_event +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xaee236c6 cec_notifier_conn_unregister +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xbe4de675 cec_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc16f2887 cec_notifier_set_phys_addr_from_edid +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc68b9653 cec_transmit_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xc82f6b78 cec_transmit_attempt_done_ts +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xcead4e30 cec_s_conn_info +EXPORT_SYMBOL_GPL drivers/media/cec/core/cec 0xf9b1bb24 cec_allocate_adapter +EXPORT_SYMBOL_GPL drivers/media/common/b2c2/b2c2-flexcop 0x66c0289a b2c2_flexcop_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x013f0eb3 saa7146_i2c_adapter_prepare +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x11e0a663 saa7146_pgtable_free +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x237b75b1 saa7146_setgpio +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0x40e86364 saa7146_vfree_destroy_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xa362729d saa7146_vmalloc_build_pgtable +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xabe7da59 saa7146_wait_for_debi_done +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xae1172e5 saa7146_pgtable_build_single +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xb8a5dae4 saa7146_pgtable_alloc +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe3cd9b5c saa7146_debug +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xe811cc94 saa7146_register_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146 0xec0ad5ef saa7146_unregister_extension +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x51647505 saa7146_register_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x5aaf9ff3 saa7146_vv_init +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x609166c1 saa7146_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x6785c767 saa7146_set_hps_source_and_sync +EXPORT_SYMBOL_GPL drivers/media/common/saa7146/saa7146_vv 0x8682ea8c saa7146_vv_release +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x1b643100 smscore_getbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x21e36bf2 smscore_registry_getmode +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x224911b6 smscore_unregister_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x25841763 smscore_onresponse +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x34bf0e61 smscore_translate_msg +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x37d91069 smsendian_handle_tx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x3fb1cec6 smscore_register_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x45284ae9 smsendian_handle_rx_message +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4707f024 smscore_start_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x4ea26519 sms_board_led_feedback +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x553fd1b3 smscore_register_hotplug +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x5b9b4a75 smscore_register_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x74ee9098 sms_board_load_modules +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x7c576277 smsendian_handle_message_header +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x844539ae sms_get_board +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x99a81ab3 smsclient_sendrequest +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0x9ec4a959 smscore_set_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xa15d17e7 sms_board_setup +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xbbdb5c42 smscore_unregister_client +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xc31a2cd8 smscore_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xd2a02215 sms_board_lna_control +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xda449e90 sms_board_power +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdc584aac sms_board_event +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xdd286565 smscore_putbuffer +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xe1bfe5c7 smscore_get_board_id +EXPORT_SYMBOL_GPL drivers/media/common/siano/smsmdtv 0xf0ccc6ab smscore_get_device_mode +EXPORT_SYMBOL_GPL drivers/media/common/uvc 0x08c5db3e uvc_format_by_guid +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x040dc7cd tpg_aspect_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x21bfae4e tpg_gen_text +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x4a738cc1 tpg_g_interleaved_plane +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x7e83543f tpg_s_crop_compose +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0x80aaf962 tpg_g_color_order +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xa8a3f406 tpg_free +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xaa5503d9 tpg_set_font +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xb052969d tpg_init +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xbbc315dd tpg_update_mv_step +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xcaede3e2 tpg_fill_plane_buffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xce8159bb tpg_pattern_strings +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xe2169014 tpg_log_status +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xe6f04b89 tpg_alloc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xe7ee5819 tpg_s_fourcc +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf064e392 tpg_fillbuffer +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf7a5f765 tpg_calc_text_basep +EXPORT_SYMBOL_GPL drivers/media/common/v4l2-tpg/v4l2-tpg 0xf7ec0949 tpg_reset_source +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x014e08c0 vb2_core_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0bb352a7 vb2_core_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x0c369ae0 __traceiter_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x1b2845de vb2_core_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x226d1210 vb2_buffer_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2ae91f08 __SCK__tp_func_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x2b5551d5 __SCT__tp_func_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3a4e276a vb2_core_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x3c7d3fa7 vb2_thread_stop +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x44510dd3 vb2_request_object_is_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x46d2cfac vb2_core_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4a237caa vb2_request_buffer_cnt +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4bfbb92a vb2_queue_error +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x4ed3fb1b __SCT__tp_func_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x535c3f60 vb2_plane_vaddr +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5c6547b6 __tracepoint_vb2_buf_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x5d460821 vb2_core_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x63991224 __tracepoint_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x67099787 vb2_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6a8005e3 vb2_core_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x6e163919 vb2_core_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x7d96a649 __SCK__tp_func_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x82fdda3d vb2_core_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x95c2621d vb2_core_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0x96a33a0d vb2_thread_start +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xa16b0b4e vb2_discard_done +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc0763049 vb2_core_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc54c863e __SCT__tp_func_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc7920841 __SCT__tp_func_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xc9d7c1ee vb2_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xcd2f34cd vb2_plane_cookie +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd3da89fc vb2_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd4da5670 __tracepoint_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xd8ff2d52 __SCK__tp_func_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xdc5d812b __traceiter_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe0de039d __traceiter_vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xe7c74421 __SCK__tp_func_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf39ec370 vb2_core_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf4503f81 __tracepoint_vb2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf49567be vb2_wait_for_all_buffers +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-common 0xf568d924 __traceiter_vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0x429a6bcc vb2_dma_contig_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-contig 0xbdbd326c vb2_dma_contig_set_max_seg_size +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-dma-sg 0xfea20fea vb2_dma_sg_memops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-memops 0x545fa229 vb2_common_vm_ops +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x057097ee vb2_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x0d8deee4 vb2_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x13ab7fad vb2_queue_change_type +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x174f7d5f vb2_fop_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x18d9278d vb2_queue_init +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x193b6033 vb2_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x2a676181 vb2_request_queue +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x32caa4eb vb2_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x418a8bc9 vb2_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x46cc9add vb2_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x556c0c63 _vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x678be2e5 vb2_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6856b647 vb2_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x6c83ebc4 vb2_find_buffer +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x74794c0f vb2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x7485e8fb vb2_fop_write +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x764b26ef vb2_video_unregister_device +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x794f4eb0 vb2_qbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x86a4e5fe vb2_ops_wait_prepare +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x86b68e3d vb2_request_validate +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0x88fdef59 vb2_fop_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa8e71c3e vb2_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa940972b vb2_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xa99087f9 vb2_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb3e45511 vb2_streamon +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xb57309ca vb2_ops_wait_finish +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xc5f31a05 vb2_streamoff +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xcf381a52 vb2_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xd53a34d3 vb2_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdb819aef vb2_poll +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xdb8b2cd7 vb2_fop_read +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xe925cca5 vb2_queue_release +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xf2efd2c3 vb2_queue_init_name +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-v4l2 0xfb6a572c vb2_expbuf +EXPORT_SYMBOL_GPL drivers/media/common/videobuf2/videobuf2-vmalloc 0x39fcd354 vb2_vmalloc_memops +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x236c5e3a dvb_module_probe +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x28f04d07 dvb_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/dvb-core/dvb-core 0x4df53140 dvb_module_release +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/as102_fe 0x95e69cde as102_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ascot2e 0xe10423ea ascot2e_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/atbm8830 0x21b3fe29 atbm8830_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/au8522_dig 0x5677a3aa au8522_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/bcm3510 0xf9413192 bcm3510_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx22700 0x42bd99e6 cx22700_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx22702 0xe0b971c0 cx22702_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24110 0xe6b30e49 cx24110_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24113 0x44ecf706 cx24113_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24116 0xc8d64227 cx24116_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24117 0x0dc38a4e cx24117_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24120 0x82986783 cx24120_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cx24123 0x2871dbb8 cx24123_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cxd2820r 0xdfc91731 cxd2820r_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cxd2841er 0x61fe79a3 cxd2841er_attach_s +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cxd2841er 0xeeb98671 cxd2841er_attach_t_c +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/cxd2880/cxd2880 0x3699b12f cxd2880_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib0070 0x6dac4779 dib0070_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib0090 0x5bb7f075 dib0090_register +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib0090 0xca693816 dib0090_fw_register +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib3000mb 0xfd41efde dib3000mb_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib3000mc 0x11ac3fb6 dib3000mc_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib7000m 0xb34d7f50 dib7000m_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib7000p 0x0c9a1120 dib7000p_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib8000 0x6f4cdc23 dib8000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dib9000 0x1bf4593e dib9000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/drx39xyj/drx39xyj 0xd8658347 drx39xxj_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/drxd 0x5325b94f drxd_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/drxk 0x2dab51ab drxk_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ds3000 0x28ce09aa ds3000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/dvb-pll 0xc2a75b66 dvb_pll_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ec100 0x79db1ab2 ec100_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/gp8psk-fe 0x5396e95d gp8psk_fe_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/helene 0x2fa9f525 helene_attach_s +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/helene 0x7b8c4e84 helene_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/horus3a 0x6487d4a2 horus3a_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/isl6405 0x2df893ed isl6405_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/isl6421 0x2256dd7e isl6421_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/isl6423 0x6ad2cead isl6423_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/itd1000 0xed442b38 itd1000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ix2505v 0xd8891d0f ix2505v_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/l64781 0x47dbd64e l64781_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lg2160 0x241fd99b lg2160_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lgdt3305 0xd440ee24 lgdt3305_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lgdt3306a 0xbc6dff65 lgdt3306a_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lgdt330x 0x3090ca2f lgdt330x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lgs8gxx 0x658e6548 lgs8gxx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lnbh25 0x67a03866 lnbh25_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lnbp21 0x9efc1f3f lnbp21_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lnbp21 0xb81a2750 lnbh24_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/lnbp22 0xf05fdd8c lnbp22_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/m88ds3103 0x22ce7e8a m88ds3103_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/m88rs2000 0xc0cddd9b m88rs2000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mb86a16 0xca88d80e mb86a16_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mb86a20s 0x3fce3bcc mb86a20s_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mt312 0x83cf42a8 mt312_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mt352 0xf526e4c7 mt352_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/mxl5xx 0x7f2bcb7d mxl5xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/nxt200x 0x8acfc0a2 nxt200x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/nxt6000 0xdbb118b1 nxt6000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/or51132 0x7c430874 or51132_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/or51211 0x030103d9 or51211_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/s5h1409 0x775c79f4 s5h1409_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/s5h1411 0x0b44e717 s5h1411_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/s5h1420 0x21acfbf7 s5h1420_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/s5h1432 0x8546ab88 s5h1432_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/s921 0xc895a694 s921_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/si21xx 0xe1f42c10 si21xx_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/sp887x 0x3332e2a9 sp887x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stb0899 0x592098b9 stb0899_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stb6000 0xdc2c4901 stb6000_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stb6100 0x7eead3c9 stb6100_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0288 0x3aa61b3a stv0288_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0297 0x20de0be4 stv0297_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0299 0xa3416a43 stv0299_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0367 0x20f477ed stv0367ddb_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0367 0x53802488 stv0367cab_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0367 0x873c91ca stv0367ter_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0900 0x8dfd8754 stv0900_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv090x 0x351fdaad stv090x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv0910 0x3999920f stv0910_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6110 0xae084f22 stv6110_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6110x 0x73ee4bd2 stv6110x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/stv6111 0xab3cc011 stv6111_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda10021 0x2bfa6d20 tda10021_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda10023 0xc7e7e818 tda10023_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda10048 0xf244bdb5 tda10048_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda1004x 0x02e6ff41 tda10045_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda1004x 0xf685291b tda10046_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda10086 0x37006c8e tda10086_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda18271c2dd 0x0b1a3d77 tda18271c2dd_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda665x 0x9d063950 tda665x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda8083 0x5dcc4137 tda8083_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda8261 0x949b6a57 tda8261_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tda826x 0x79424f81 tda826x_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ts2020 0xdf71cb87 ts2020_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/tua6100 0x7a16bc64 tua6100_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ves1820 0x00b6589b ves1820_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/ves1x93 0x7715c5ae ves1x93_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/zl10036 0xb71eca29 zl10036_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/zl10039 0x9896172e zl10039_attach +EXPORT_SYMBOL_GPL drivers/media/dvb-frontends/zl10353 0x40e08bb2 zl10353_attach +EXPORT_SYMBOL_GPL drivers/media/i2c/aptina-pll 0xd9b9a319 aptina_pll_calculate +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x1d6bde9b max9271_set_gpios +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x40c2d306 max9271_set_high_threshold +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x718d00c8 max9271_configure_gmsl_link +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x7600eea3 max9271_verify_id +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x7cbbdffc max9271_clear_gpios +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0x84557f75 max9271_wake_up +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xa7512570 max9271_set_serial_link +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xb1b97e55 max9271_set_address +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xb4e99e27 max9271_configure_i2c +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xb9f78c56 max9271_set_translation +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xc1eac596 max9271_disable_gpios +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xd0ef7dd1 max9271_set_deserializer_address +EXPORT_SYMBOL_GPL drivers/media/i2c/max9271 0xe5ab86f5 max9271_enable_gpios +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x10b3db84 __media_device_usb_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1245dc0a media_get_pad_index +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x178defbc media_devnode_remove +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1aca915a media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x1b410fc4 media_device_unregister_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x209d719b media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x28e12141 media_graph_walk_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x43874b68 media_request_object_bind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x43ca12fc media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x468c4e50 media_device_unregister_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x46a2d046 media_request_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x4801d684 media_pipeline_alloc_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x54927834 media_device_usb_allocate +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x56e7dde2 media_request_object_find +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x57b1d9a2 media_graph_walk_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x5b4f7227 media_request_object_unbind +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x65dd67e0 media_pipeline_entity_iter_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x6afba5a2 media_device_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x76af2028 __media_entity_remove_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x77543546 media_entity_enum_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x785a1121 media_devnode_create +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x78fd66db __media_pipeline_pad_iter_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x840057f9 __media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x85355fc5 media_device_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8cbf7298 media_remove_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x8fee4463 media_device_delete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9462bc82 __media_entity_next_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x967c0db0 media_request_object_put +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9a3c581b media_device_register_entity +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9b41e2a5 __media_remove_intf_links +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9cfca733 media_pipeline_entity_iter_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9d21b71d media_graph_walk_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0x9f10d8b7 media_create_pad_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa24b1b94 media_device_register_entity_notify +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa39ef71e media_device_pci_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xa9946be7 __media_pipeline_entity_iter_next +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb2842950 media_entity_pipeline +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb728982e media_create_ancillary_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb7efb4d9 media_create_intf_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xb9ad11ae media_entity_pads_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xbc2367da media_request_object_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc01331f9 __media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc1ccb4dc __media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc2fb8f98 media_entity_get_fwnode_pad +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xc678d39e media_entity_remote_pad_unique +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd06e1198 media_request_get_by_fd +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd16a7a83 __media_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd3575639 media_entity_setup_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd429690d media_pad_remote_pad_unique +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xd6223f88 media_device_unregister +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xdc5aadec __media_device_register +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe0240de1 media_request_object_complete +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe4400d34 media_graph_walk_init +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe5ceecd6 media_entity_enum_cleanup +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe6e9b466 media_pad_remote_pad_first +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xe8bc369a media_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xea676ea6 media_entity_find_link +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xf7ec1dc5 media_pad_pipeline +EXPORT_SYMBOL_GPL drivers/media/mc/mc 0xff46990f media_create_pad_links +EXPORT_SYMBOL_GPL drivers/media/pci/bt8xx/dst 0x03a09fc3 dst_attach +EXPORT_SYMBOL_GPL drivers/media/pci/bt8xx/dst_ca 0x7878ee85 dst_ca_attach +EXPORT_SYMBOL_GPL drivers/media/pci/cx88/cx88xx 0xc6f5c8c5 cx88_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/pci/ddbridge/ddbridge-dummy-fe 0xf82e53a7 ddbridge_dummy_fe_qam_attach +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x1009e5f9 mantis_dvb_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x38534fa7 mantis_uart_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x42b2d1ff mantis_stream_control +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4b803019 mantis_dma_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x4febc39a mantis_i2c_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x51974660 mantis_frontend_power +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x52cc0fe6 mantis_ca_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x62da38c1 mantis_input_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x6bf43c6b mantis_pci_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x83d16ec4 mantis_frontend_soft_reset +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8aa6f947 mantis_uart_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x8e0b7737 mantis_dvb_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0x9549645a mantis_gpio_set_bits +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xa41e09f1 mantis_input_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xc266a255 mantis_ca_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd1e95154 mantis_i2c_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xd582a2d7 mantis_dma_init +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xdb4c0b1b mantis_pci_exit +EXPORT_SYMBOL_GPL drivers/media/pci/mantis/mantis_core 0xeba2dc29 mantis_get_mac +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x0a013d24 saa7134_ts_buffer_init +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x20894bd6 saa7134_g_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x30dd5d20 saa7134_s_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x30de9a66 saa7134_g_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x41656bbf saa7134_ts_qops +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x4f7609c7 saa7134_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x515d2de5 saa7134_querystd +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8132478d saa7134_ts_buffer_prepare +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x877c4642 saa7134_s_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0x8e5c348d saa7134_enum_input +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xa573465a saa7134_s_std +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xae2b0b31 saa7134_ts_stop_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb0492619 saa7134_g_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xb4c9af7c saa7134_s_frequency +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xc8a56e7e saa7134_ts_queue_setup +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xda66f051 saa7134_vb2_buffer_queue +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xe0954308 saa7134_querycap +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xee4f0c96 saa7134_g_tuner +EXPORT_SYMBOL_GPL drivers/media/pci/saa7134/saa7134 0xfc1a3b75 saa7134_ts_start_streaming +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x5a9497d0 ttpci_budget_init_hooks +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x5db8b659 ttpci_budget_deinit +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x7948c222 budget_debug +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x89f24275 ttpci_budget_init +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0x8a851479 ttpci_budget_debiread +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xc8f481a0 ttpci_budget_set_video_port +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfc9dd0e3 ttpci_budget_irq10_handler +EXPORT_SYMBOL_GPL drivers/media/pci/ttpci/budget-core 0xfdbff547 ttpci_budget_debiwrite +EXPORT_SYMBOL_GPL drivers/media/platform/marvell/mcam-core 0x13b13c6c mccic_shutdown +EXPORT_SYMBOL_GPL drivers/media/platform/marvell/mcam-core 0x377ee5bb mccic_register +EXPORT_SYMBOL_GPL drivers/media/platform/marvell/mcam-core 0x4893c9da mccic_suspend +EXPORT_SYMBOL_GPL drivers/media/platform/marvell/mcam-core 0x84f636bb mccic_irq +EXPORT_SYMBOL_GPL drivers/media/platform/marvell/mcam-core 0xb69a3e7f mccic_resume +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x10bc1b47 radio_tea5777_init +EXPORT_SYMBOL_GPL drivers/media/radio/shark2 0x9f01df4c radio_tea5777_exit +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0x2babed08 si470x_viddev_template +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xa82fb8ab si470x_ctrl_ops +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xb5e45cd2 si470x_set_freq +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xc4946839 si470x_start +EXPORT_SYMBOL_GPL drivers/media/radio/si470x/radio-si470x-common 0xc749feaa si470x_stop +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x09942834 rc_unregister_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x2ed90ced rc_map_unregister +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3574fbe7 lirc_scancode_event +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x3e585d21 ir_raw_event_store_with_timeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4428dd07 rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4e3906e7 devm_rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4e653eb1 devm_rc_register_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x4f1a349b ir_raw_event_store_edge +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6803a509 rc_free_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x6b3b7099 rc_keydown +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x76933b39 ir_raw_event_store_with_filter +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0x78a928ec rc_keyup +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xa21a601d rc_repeat +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xaaca14a6 rc_g_keycode_from_table +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb44c9716 ir_raw_event_handle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xb960f15c rc_map_register +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xc519d4c5 ir_raw_event_set_idle +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xdeff6932 ir_raw_event_store +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xf0b50186 rc_keydown_notimeout +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfb15b37e rc_allocate_device +EXPORT_SYMBOL_GPL drivers/media/rc/rc-core 0xfc5d3079 rc_map_get +EXPORT_SYMBOL_GPL drivers/media/tuners/fc0011 0xcb319213 fc0011_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/fc0012 0x4ad3e37b fc0012_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/fc0013 0x21101d05 fc0013_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/max2165 0x2baa2178 max2165_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mc44s803 0x86353376 mc44s803_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2060 0x178fbbdc mt2060_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2063 0x2f05faa5 mt2063_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt20xx 0xee4990ca microtune_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2131 0x9840da75 mt2131_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mt2266 0x6d67e138 mt2266_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5005s 0xe690fa7f mxl5005s_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/mxl5007t 0xb5f4ff3b mxl5007t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/qt1010 0x40cd2448 qt1010_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/r820t 0x97b9b48e r820t_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18218 0x430162e3 tda18218_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda18271 0x52504cf9 tda18271_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda827x 0x4409905f tda827x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0x68519933 tda829x_probe +EXPORT_SYMBOL_GPL drivers/media/tuners/tda8290 0xce79c321 tda829x_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tda9887 0x5054374b tda9887_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x76b53184 tea5761_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5761 0x9eca682c tea5761_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x0acbedf4 tea5767_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/tea5767 0x54478b54 tea5767_autodetection +EXPORT_SYMBOL_GPL drivers/media/tuners/tuner-simple 0x84d3bc1e simple_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/xc2028 0x723d1d0a xc2028_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/xc4000 0x489fba92 xc4000_attach +EXPORT_SYMBOL_GPL drivers/media/tuners/xc5000 0xb93b1be3 xc5000_attach +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x017ea7c7 cx231xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0cbfb31a is_fw_load +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0e2c68a2 cx231xx_set_alt_setting +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x0ec33849 cx231xx_dev_init +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4610a13d cx231xx_demod_reset +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4769e17d cx231xx_enable_i2c_port_3 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x4d3689b8 cx231xx_enable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x56c36ea2 cx231xx_capture_start +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x58b3bebd cx231xx_uninit_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x629b2f63 cx231xx_dev_uninit +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8272ca1f cx231xx_init_vbi_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x8e17db7e cx231xx_uninit_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9767de2e cx231xx_send_usb_command +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9859b8a1 cx231xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0x9c85648e cx231xx_init_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa04fb3a6 cx231xx_uninit_isoc +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa15b3c15 cx231xx_send_gpio_cmd +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xa1cd4cad cx231xx_unmute_audio +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd20222ae cx231xx_disable656 +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd5b63909 cx231xx_get_i2c_adap +EXPORT_SYMBOL_GPL drivers/media/usb/cx231xx/cx231xx 0xd6987d10 cx231xx_init_bulk +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-demod 0xe9a2fecd mxl111sf_demod_attach +EXPORT_SYMBOL_GPL drivers/media/usb/dvb-usb-v2/mxl111sf-tuner 0x82c6c951 mxl111sf_tuner_attach +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x1d8a338b em28xx_setup_xc3028 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x327f158b em28xx_audio_setup +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x42eb9d3e em28xx_write_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4bb950f8 em28xx_init_camera +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x4e9e3833 em28xx_read_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x6bf78d4e em28xx_uninit_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x721f7cc7 em28xx_free_device +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x78ccb265 em28xx_init_usb_xfer +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x7fc8652c em28xx_tuner_callback +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0x921d7c65 em28xx_boards +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa5f38680 em28xx_write_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa6404eb5 em28xx_audio_analog_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xa7397386 em28xx_toggle_reg_bits +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb52c54c8 em28xx_gpio_set +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xb6f17e6e em28xx_write_reg +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc16c7c74 em28xx_stop_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xc3fa5591 em28xx_write_regs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xd425aac6 em28xx_set_mode +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf6d53f7a em28xx_alloc_urbs +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf910bfc7 em28xx_read_ac97 +EXPORT_SYMBOL_GPL drivers/media/usb/em28xx/em28xx 0xf9afc727 em28xx_find_led +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-async 0x037a400e __v4l2_async_nf_add_fwnode +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-async 0x8e082ce4 v4l2_async_nf_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-async 0xa18bf4b2 __v4l2_async_nf_add_i2c +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-async 0xadc1f70d __v4l2_async_nf_add_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-async 0xc3e66d9f __v4l2_async_nf_add_fwnode_remote +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x01612c0b v4l2_detect_gtf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x08402862 v4l2_print_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x0958448b v4l2_set_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x0af3d134 v4l2_valid_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x2bf67def v4l2_calc_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x370cfe6e v4l2_dv_timings_presets +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x3aa68d7a v4l2_find_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x4839762f v4l2_calc_timeperframe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x7b6ac78f v4l2_phys_addr_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x8f8d4341 v4l2_get_edid_phys_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0x922ecd29 v4l2_enum_dv_timings_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xa22fbfeb v4l2_hdmi_rx_colorimetry +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xa97e00eb v4l2_detect_cvt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xae575c8f v4l2_phys_addr_for_input +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xd034392d v4l2_match_dv_timings +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xf56238f4 v4l2_find_dv_timings_cea861_vic +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-dv-timings 0xff585440 v4l2_dv_timings_aspect_ratio +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0x8d31ce0a v4l2_flash_indicator_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xa86d855a v4l2_flash_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-flash-led-class 0xf597343d v4l2_flash_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x17f0956c v4l2_fwnode_parse_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x23db7a4b v4l2_fwnode_put_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x3ca03123 v4l2_fwnode_connector_add_link +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x51c9e57d v4l2_async_register_subdev_sensor +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x5d435c12 v4l2_fwnode_connector_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x612ddce5 v4l2_fwnode_connector_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x624f1648 v4l2_async_nf_parse_fwnode_endpoints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x6cff0bb1 v4l2_fwnode_device_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x86a8b86d v4l2_fwnode_endpoint_alloc_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0x969a6b62 v4l2_fwnode_endpoint_parse +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-fwnode 0xb0890878 v4l2_fwnode_endpoint_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x055126ba v4l2_m2m_fop_mmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x057e5484 v4l2_m2m_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x05dc2977 v4l2_m2m_ioctl_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x109c02b8 v4l2_m2m_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x10e91aa0 v4l2_m2m_ioctl_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x16240590 v4l2_m2m_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x174a6a49 v4l2_m2m_ioctl_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x24759acf v4l2_m2m_create_bufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x249c1434 v4l2_m2m_buf_remove_by_idx +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x25004246 v4l2_m2m_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2e02c42a v4l2_m2m_ioctl_stateless_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x2f4d95ec v4l2_m2m_fop_poll +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x3dd34d90 v4l2_m2m_ioctl_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x429ff6f2 v4l2_m2m_register_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x4f492278 v4l2_m2m_ioctl_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x50d2c6d0 v4l2_m2m_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x56ce7013 v4l2_m2m_buf_remove +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x5cd36d03 v4l2_m2m_next_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x64e9dd28 v4l2_m2m_ioctl_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x730f2eae v4l2_m2m_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x77714d75 v4l2_m2m_ioctl_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x7c39bf60 v4l2_m2m_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x83dcec88 v4l2_m2m_last_buffer_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x83ee362e v4l2_m2m_update_start_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x856a1206 v4l2_m2m_ioctl_stateless_try_decoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x90e3710c v4l2_m2m_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x95b66fb8 v4l2_m2m_request_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x96159fa9 v4l2_m2m_ctx_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9aa13966 v4l2_m2m_ioctl_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9aae877c v4l2_m2m_ioctl_try_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0x9bc06abb v4l2_m2m_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xa96e3a01 v4l2_m2m_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xac4c8090 v4l2_m2m_buf_remove_by_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb4751d12 v4l2_m2m_update_stop_streaming_state +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xb68121e5 v4l2_m2m_buf_copy_metadata +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xbed242c6 v4l2_m2m_try_schedule +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xc6fca5ad v4l2_m2m_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd2f5490a v4l2_m2m_ioctl_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd94463cf v4l2_m2m_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xd97a60c1 v4l2_m2m_encoder_cmd +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe2f148be v4l2_m2m_ioctl_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe53ab591 v4l2_m2m_ioctl_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xe7f03931 v4l2_m2m_ioctl_prepare_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf0e42440 v4l2_m2m_last_buf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf13ff84d v4l2_m2m_unregister_media_controller +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xf830aec8 v4l2_m2m_expbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/v4l2-mem2mem 0xff034fd3 v4l2_m2m_ctx_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x09cca6d5 videobuf_alloc_vb +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x0c2c1f25 videobuf_queue_to_vaddr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x1c553a9b videobuf_querybuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4d1216fe __videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x4fcec9d6 videobuf_mmap_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x50ebb2d7 videobuf_streamoff +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x636a6049 videobuf_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6952716b videobuf_queue_is_busy +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6a8a0b0f videobuf_queue_cancel +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x6d613dbc videobuf_next_field +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x706db851 videobuf_iolock +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x7829eacb videobuf_reqbufs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x807b91ee videobuf_mmap_mapper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x85e3a301 videobuf_queue_core_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0x8c5abb11 videobuf_read_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xa9cdf098 videobuf_mmap_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xaf4561e1 videobuf_read_one +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbb6e3c44 videobuf_waiton +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xbf5803be videobuf_streamon +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xdc523bc7 videobuf_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe0e00b4c videobuf_read_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xe5a40598 videobuf_poll_stream +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xf651c785 videobuf_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-core 0xfbbfa23e videobuf_read_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x30cf9f03 videobuf_dma_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x4a018a76 videobuf_to_dma +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x553a86d0 videobuf_sg_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0x6a96165d videobuf_queue_sg_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videobuf-dma-sg 0xa207e231 videobuf_dma_unmap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x09b1dbb4 v4l2_pipeline_pm_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x0c1598e1 v4l2_src_change_event_subdev_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x14ceb86e v4l2_subdev_enable_streams +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x17307f0b v4l2_fh_del +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x195d2ddf v4l_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1a5631c2 __SCK__tp_func_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1ad2d928 v4l2_fh_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x1f0cf11c v4l2_pipeline_link_notify +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x20d9b76a v4l2_subdev_s_stream_helper +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x211dd0ba __tracepoint_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x239d4ab9 v4l2_fh_is_singular +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x292a7c61 v4l_vb2q_enable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2b3ea225 __traceiter_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2e58dc94 v4l2_i2c_subdev_addr +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x2e9d3d66 v4l2_create_fwnode_links_to_pad +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x33c8289a video_device_pipeline_alloc_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x38a255b8 v4l2_event_subdev_unsubscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3c174f6e __v4l2_subdev_init_finalize +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x3eefcdfb v4l_disable_media_source +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4566ed82 v4l2_device_disconnect +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4894cd55 v4l2_subdev_state_xlate_streams +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4e6ea7a8 v4l2_subdev_cleanup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x4f9088f7 v4l2_device_unregister +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5074e573 v4l2_fraction_to_interval +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x51198e2e __tracepoint_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x540d5f6d __SCK__tp_func_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x54de9e19 v4l2_g_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x54ea0b7d v4l2_subdev_set_routing_with_fmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x558fbab2 v4l2_spi_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x5ee409c3 v4l2_mc_create_media_graph +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x61da6128 v4l2_spi_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x636ad808 v4l2_event_wake_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x65d7839c v4l2_subdev_state_get_opposite_stream_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x66dd82ba v4l2_event_queue_fh +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6d3d6bc6 __SCT__tp_func_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x6e9acc41 v4l2_fill_pixfmt_mp +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x71cb9894 __tracepoint_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7b6ee763 v4l2_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7ba10ea3 v4l2_compat_ioctl32 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7c94fd5d v4l2_fh_add +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x7f0d6159 v4l2_event_unsubscribe_all +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x83950e85 v4l2_get_link_freq +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8774879f v4l2_create_fwnode_links +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8c243c3e video_device_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8e1a3f53 __SCK__tp_func_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x8eb0a687 v4l2_subdev_notify_event +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x982f301a __v4l2_device_register_subdev_nodes +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9b4af70a v4l2_i2c_subdev_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0x9fef35ac v4l2_apply_frmsize_constraints +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa09f3f8d v4l2_subdev_disable_streams +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa1893d14 __SCT__tp_func_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa2750515 v4l2_pipeline_pm_get +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa6aafaf5 video_device_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xa75e904b v4l2_device_put +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaca2cd8b v4l2_device_set_name +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xad5c3c93 v4l2_simplify_fraction +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xae153e14 v4l2_event_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xae3dd8d6 __v4l2_subdev_next_active_route +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaef8e2e5 v4l2_src_change_event_subscribe +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xafd07325 v4l2_event_dequeue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xaff12bc7 __video_device_pipeline_start +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb45086f2 __v4l2_ctrl_handler_setup +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb56c4265 v4l2_subdev_routing_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb5a337db v4l2_subdev_state_get_stream_compose +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb6f62e45 video_device_pipeline +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb7e3b0d5 v4l2_device_register_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xb8119b5a __traceiter_vb2_v4l2_buf_done +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xbe4dcbf4 __traceiter_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc5719476 __tracepoint_vb2_v4l2_qbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc6b1af65 v4l2_subdev_get_privacy_led +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc86897a7 v4l2_subdev_state_get_stream_format +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xc8dd867f __SCT__tp_func_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcb013e21 v4l2_fh_open +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcc501597 v4l2_fill_pixfmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xceda68b4 v4l2_subdev_link_validate +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xcf754c8f v4l2_subdev_routing_find_opposite_end +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd4b01496 __v4l2_subdev_state_alloc +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd541e31a __SCT__tp_func_vb2_v4l2_dqbuf +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xd9540db4 v4l2_device_unregister_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdae9ef0f v4l2_fh_exit +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdd2ca423 v4l2_subdev_put_privacy_led +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xdd957571 v4l2_fh_release +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xde6e37d9 __v4l2_subdev_state_free +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe175e22f v4l2_i2c_subdev_init +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe2822320 __v4l2_find_nearest_size +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe5595cc5 __SCK__tp_func_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe56ace0e v4l2_subdev_has_pad_interdep +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe5fb0533 v4l2_subdev_link_validate_default +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe7d5128f __traceiter_vb2_v4l2_buf_queue +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe890f74d v4l2_subdev_get_fmt +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xe9d9657f v4l2_device_register +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xed6c9ccf v4l2_subdev_state_get_stream_crop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xede4b757 v4l2_ctrl_request_hdl_ctrl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xeffa42a8 v4l2_i2c_new_subdev_board +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf07c70d2 __video_device_pipeline_stop +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a353ac v4l2_i2c_tuner_addrs +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2a81e81 v4l2_ctrl_request_hdl_find +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf2ba1c03 v4l2_subdev_set_routing +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf3318a79 v4l2_s_parm_cap +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf4bc6e05 v4l2_event_pending +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf5ef842e v4l_bound_align_image +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xf8b8b712 v4l2_subdev_get_fwnode_pad_1_to_1 +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfc5ee766 v4l2_i2c_new_subdev +EXPORT_SYMBOL_GPL drivers/media/v4l2-core/videodev 0xfd209dd3 v4l2_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x21788a1f pm80x_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x6bcc7885 pm80x_regmap_config +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0x833b6521 pm80x_init +EXPORT_SYMBOL_GPL drivers/mfd/88pm80x 0xd99fd720 pm80x_deinit +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x02b2fecf cs47l24_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x05096e78 wm5110_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x1949d8fa wm5110_revd_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x1ada42c7 cs47l24_patch +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x212eb6f8 arizona_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x3501187e wm5110_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x39419a43 wm8997_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x4631af34 wm5110_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x5d65f1c8 wm5110_patch +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x652da262 arizona_set_irq_wake +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x80bef0df wm8997_patch +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x837c432b cs47l24_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0x8de0f8c8 wm8997_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xaa902dfd wm8998_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xacd2865e arizona_request_irq +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xbb62fb09 wm5102_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xc783677d arizona_clk32k_disable +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xcf2fdf62 arizona_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xd3fee6a6 wm5110_aod +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xdddf1dd8 arizona_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xde909a48 arizona_clk32k_enable +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xdfbe649b wm8997_aod +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xe3eae8bb arizona_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/arizona 0xf85a3a45 wm5102_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/atc260x-core 0x2d5ab850 atc260x_match_device +EXPORT_SYMBOL_GPL drivers/mfd/atc260x-core 0x7717947f atc260x_device_probe +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x7c245a7f da9150_read_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0x94cdc3c0 da9150_bulk_read +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xa8819f6b da9150_bulk_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xae29bcaf da9150_write_qif +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xb8e0b974 da9150_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xd2189648 da9150_set_bits +EXPORT_SYMBOL_GPL drivers/mfd/da9150-core 0xf1ca80c6 da9150_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x3ae45361 intel_lpss_suspend +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x8dffa686 intel_lpss_remove +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0x964593b3 intel_lpss_prepare +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xb3139d23 intel_lpss_probe +EXPORT_SYMBOL_GPL drivers/mfd/intel-lpss 0xe09dada0 intel_lpss_resume +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x87572b25 intel_pmc_gcr_read64 +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0x941b554e intel_pmc_s0ix_counter_read +EXPORT_SYMBOL_GPL drivers/mfd/intel_pmc_bxt 0xc2edfd19 intel_pmc_gcr_update +EXPORT_SYMBOL_GPL drivers/mfd/iqs62x 0xa436f4de iqs62x_events +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x246a8e7b kempld_read32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x28d9586b kempld_write16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x3f240919 kempld_release_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x688bcf20 kempld_write8 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x903c617e kempld_read16 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0x9c926eb6 kempld_write32 +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xb3911adb kempld_get_mutex +EXPORT_SYMBOL_GPL drivers/mfd/kempld-core 0xccdaa0a2 kempld_read8 +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x764e26cd lm3533_write +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0x78e951f3 lm3533_read +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-core 0xd672278d lm3533_update +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x02d6d608 lm3533_ctrlbank_set_max_current +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x693e093f lm3533_ctrlbank_get_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0x90c7804a lm3533_ctrlbank_set_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xc04c8b30 lm3533_ctrlbank_disable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xea927986 lm3533_ctrlbank_enable +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xf26b56d4 lm3533_ctrlbank_set_brightness +EXPORT_SYMBOL_GPL drivers/mfd/lm3533-ctrlbank 0xfc8e3a84 lm3533_ctrlbank_get_pwm +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0x4a93d49f lp3943_write_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xaebc87cd lp3943_read_byte +EXPORT_SYMBOL_GPL drivers/mfd/lp3943 0xc98661bd lp3943_update_bits +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x0f379262 madera_of_match +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x190577ab cs47l15_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x1908abeb cs47l15_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5a306aa7 cs47l15_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x5a3db6e7 cs47l15_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8d02d9a3 madera_dev_init +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8dd5375e cs47l92_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8dd8eb1e cs47l92_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x8ed0e67c cs47l92_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x90f3c06b cs47l35_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0x90fe1c2b cs47l35_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa2815b13 cs47l85_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xa28c8753 cs47l85_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xaf62fcd9 madera_dev_exit +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xba542ca3 cs47l90_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xba59f0e3 cs47l90_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xbc78dfda cs47l15_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xc52e6867 cs47l85_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xcee02a52 cs47l92_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xceedf612 cs47l92_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd3c6dd67 cs47l35_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd3cb0127 cs47l35_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xd8702de2 cs47l35_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe1b4461f cs47l85_32bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe1b99a5f cs47l85_16bit_i2c_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xe455999b madera_pm_ops +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xebe384cb madera_name_from_type +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xed8a1e65 cs47l90_patch +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf96131af cs47l90_32bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/madera 0xf96cedef cs47l90_16bit_spi_regmap +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0x631d8bce mc13xxx_common_exit +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xa1dc5b30 mc13xxx_variant_mc13783 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xb3d3ae58 mc13xxx_variant_mc34708 +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xbc3fc6b6 mc13xxx_adc_do_conversion +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xcfa0de32 mc13xxx_common_init +EXPORT_SYMBOL_GPL drivers/mfd/mc13xxx-core 0xe1661010 mc13xxx_variant_mc13892 +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x1bdd0b95 pcf50633_write_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4814c48b pcf50633_free_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x49827e6d pcf50633_irq_unmask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x49c2ffb7 pcf50633_reg_clear_bits +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x4bbffc2d pcf50633_reg_write +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x6582bc2c pcf50633_reg_set_bit_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x8ce55399 pcf50633_pm +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0x98f013aa pcf50633_reg_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbbf42ab8 pcf50633_irq_mask_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xbe8821f5 pcf50633_irq_mask +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xd1fc08ad pcf50633_read_block +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633 0xe3446730 pcf50633_register_irq +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0x8ba3b4a0 pcf50633_adc_sync_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-adc 0xe130c89f pcf50633_adc_async_read +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x41fb841e pcf50633_gpio_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0x976cf683 pcf50633_gpio_power_supply_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb1a2a36d pcf50633_gpio_invert_get +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xb5851857 pcf50633_gpio_invert_set +EXPORT_SYMBOL_GPL drivers/mfd/pcf50633-gpio 0xc827d50f pcf50633_gpio_get +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0x43e53ef9 rave_sp_exec +EXPORT_SYMBOL_GPL drivers/mfd/rave-sp 0xe9d59c5c devm_rave_sp_register_event_notifier +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0x56d1a8c5 retu_read +EXPORT_SYMBOL_GPL drivers/mfd/retu-mfd 0xa074c8b6 retu_write +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0287755a si476x_core_cmd_am_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0d5f5dd8 si476x_core_is_a_primary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x0eac6f95 si476x_core_set_power_state +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19d3874e si476x_core_cmd_power_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x19f945e2 si476x_core_i2c_xfer +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2332a0c1 si476x_core_cmd_fm_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x294f7c80 si476x_core_stop +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x2de017c2 si476x_core_cmd_func_info +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x36ad37f5 si476x_core_cmd_agc_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x3b58820a si476x_core_cmd_fm_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x43d34161 si476x_core_cmd_fm_phase_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x46a20426 si476x_core_cmd_am_tune_freq +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x46e06c40 si476x_core_cmd_ana_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4b2c1ef5 si476x_core_cmd_fm_rds_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x4b767197 si476x_core_is_powered_up +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x563df592 si476x_core_cmd_fm_rds_blockcount +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x61b7bda3 si476x_core_cmd_power_down +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x61d0b5d4 si476x_core_cmd_am_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x707f3e87 si476x_core_cmd_zif_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x88adcd26 si476x_core_cmd_intb_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x940fc64f si476x_core_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0x9e46a71e si476x_core_cmd_ic_link_gpo_ctl_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa3d855d8 si476x_core_cmd_fm_phase_div_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xa6eb3509 si476x_core_has_diversity +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc15877da si476x_core_cmd_fm_seek_start +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xc6a35339 si476x_core_has_am +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xd8442a3a si476x_core_cmd_am_rsq_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xeac7e864 si476x_core_cmd_fm_acf_status +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xed360d59 si476x_core_cmd_set_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xee669d56 si476x_core_is_a_secondary_tuner +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf2939f61 devm_regmap_init_si476x +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf66861f1 si476x_core_cmd_get_property +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf726020a si476x_core_cmd_dig_audio_pin_cfg +EXPORT_SYMBOL_GPL drivers/mfd/si476x-core 0xf7474ec5 si476x_core_is_in_am_receiver_mode +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x2da166e1 sm501_unit_power +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x46dbece8 sm501_find_clock +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x85ffb8aa sm501_misc_control +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x896cebb9 sm501_modify_reg +EXPORT_SYMBOL_GPL drivers/mfd/sm501 0x9b44663f sm501_set_clock +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x330b1c70 am335x_tsc_se_clr +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x472b8c0c am335x_tsc_se_adc_done +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0x75f728b8 am335x_tsc_se_set_once +EXPORT_SYMBOL_GPL drivers/mfd/ti_am335x_tscadc 0xa72d6721 am335x_tsc_se_set_cache +EXPORT_SYMBOL_GPL drivers/mfd/tps6594-core 0x6ea5e31b tps6594_device_init +EXPORT_SYMBOL_GPL drivers/mfd/tps6594-core 0x8499fea7 tps6594_is_volatile_reg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x23888dd5 alcor_write8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x353ebe37 alcor_read8 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x3e485286 alcor_read32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x5777e23b alcor_read32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0x67881317 alcor_write16 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xf3b64866 alcor_write32be +EXPORT_SYMBOL_GPL drivers/misc/cardreader/alcor_pci 0xf55b536b alcor_write32 +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x01adbaf9 rtsx_pci_send_cmd_no_wait +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x11deab7e rtsx_pci_dma_unmap_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x227a7d28 rtsx_pci_card_exist +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x26461652 rtsx_pci_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x3450347f rtsx_pci_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x3da4834b rtsx_pci_stop_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x408bbf46 rtsx_pci_read_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x49758bde rtsx_pci_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x52847e8a rtsx_pci_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x53b61dd2 rtsx_pci_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x54fa35b5 rtsx_pci_complete_unfinished_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x59a5747c rtsx_pci_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x69058f53 rtsx_pci_card_power_on +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x71398e88 rtsx_pci_card_power_off +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x76692a26 rtsx_pci_card_pull_ctl_enable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x81484c7a rtsx_pci_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x87f1d87a rtsx_pci_switch_output_voltage +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9149eda8 rtsx_pci_dma_map_sg +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0x9b51544f rtsx_pci_write_phy_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xb19415a6 rtsx_pci_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xc94f91c2 rtsx_pci_dma_transfer +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xd4abea45 rtsx_pci_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xda077d7c rtsx_pci_start_run +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_pci 0xe00f3539 rtsx_pci_card_pull_ctl_disable +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x073bce38 rtsx_usb_add_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x0a2d97e1 rtsx_usb_ep0_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x2b17fd15 rtsx_usb_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x3aa92b40 rtsx_usb_transfer_data +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5124a38e rtsx_usb_ep0_write_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x5c10b187 rtsx_usb_switch_clock +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0x9093d54d rtsx_usb_get_card_status +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xa50b23f2 rtsx_usb_card_exclusive_check +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xac10c719 rtsx_usb_read_register +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xb0620793 rtsx_usb_send_cmd +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xbc76fcbf rtsx_usb_get_rsp +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xbe5f2ca9 rtsx_usb_write_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cardreader/rtsx_usb 0xc74a2fb2 rtsx_usb_read_ppbuf +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x13c4a0de cb710_sg_dwiter_write_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x485e5d6a cb710_sg_dwiter_read_next_block +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0x8ee46428 cb710_pci_update_config_reg +EXPORT_SYMBOL_GPL drivers/misc/cb710/cb710 0xb7595384 cb710_set_irq_handler +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x0b008db0 oslec_hpf_tx +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x296a8983 oslec_update +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x3115970d oslec_create +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x4b711f77 oslec_adaption_mode +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x5909e701 oslec_snapshot +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x780d3f01 oslec_flush +EXPORT_SYMBOL_GPL drivers/misc/echo/echo 0x84eba96d oslec_free +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x3cb83d5b eeprom_93cx6_multireadb +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x63d2ff63 eeprom_93cx6_wren +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x870b53e9 eeprom_93cx6_write +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0x884deb9d eeprom_93cx6_read +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0xc9c6bb25 eeprom_93cx6_readb +EXPORT_SYMBOL_GPL drivers/misc/eeprom/eeprom_93cx6 0xff7a0fdf eeprom_93cx6_multiread +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x14892485 enclosure_find +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x1a0363cb enclosure_component_alloc +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x21702381 enclosure_for_each_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x5cd7d653 enclosure_add_device +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x63e91640 enclosure_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0x88e87046 enclosure_unregister +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xbc69b957 enclosure_component_register +EXPORT_SYMBOL_GPL drivers/misc/enclosure 0xea9a8126 enclosure_remove_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x4f519187 lis3lv02d_init_dt +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x50224b5e lis3lv02d_poweron +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x73253c40 lis3lv02d_joystick_disable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x7e3aacb1 lis3lv02d_joystick_enable +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0x8231d3cf lis3_dev +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xbb0a5d34 lis3lv02d_init_device +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xcb1f1c7e lis3lv02d_remove_fs +EXPORT_SYMBOL_GPL drivers/misc/lis3lv02d/lis3lv02d 0xfff17f12 lis3lv02d_poweroff +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0afdec76 mei_hbm_pg_resume +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x0c5c0f2b mei_irq_write_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x11c5bb20 mei_cldev_dma_unmap +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1447e934 mei_cldev_ver +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x17c2d9ef mei_restart +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x18a6b4ab mei_cldev_get_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1960145b mei_cancel_work +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x1f0fc792 mei_cldev_recv_nonblock_vtag +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x215fbc7a mei_hbm_pg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x2823cdbd mei_reset +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x31e39c02 mei_deregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x3efa687c mei_cldev_recv_nonblock +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x63afd27a mei_start +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x699f676a mei_cldev_enable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7a075308 __mei_cldev_driver_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x7fbbbbd3 mei_cldev_driver_unregister +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x8dbb7ae8 mei_device_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x902ccfd8 mei_cldev_enabled +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0x90a24af4 mei_fw_status2str +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xa4785823 mei_cldev_send +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xb2763f4f mei_cldev_register_notif_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xc64c18d8 mei_irq_read_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd4af9542 mei_cldev_send_gsc_command +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd57e79ad mei_irq_compl_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xd5fb0983 mei_cldev_uuid +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xdcadf44f mei_cldev_register_rx_cb +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xdf38eb25 mei_cldev_disable +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe8368a49 mei_cldev_recv +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe9424a7c mei_cldev_recv_vtag +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xe9bc842f mei_cl_all_disconnect +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xebad6efc mei_register +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xec9b4816 mei_write_is_idle +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf21ec6c4 mei_stop +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xf5bc8ea5 mei_cldev_send_vtag +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xfd0996c8 mei_cldev_dma_map +EXPORT_SYMBOL_GPL drivers/misc/mei/mei 0xfea17ff2 mei_cldev_set_drvdata +EXPORT_SYMBOL_GPL drivers/misc/mei/mei-me 0x051f202c mei_me_polling_thread +EXPORT_SYMBOL_GPL drivers/misc/mei/mei-me 0x922c6ae5 mei_me_irq_quick_handler +EXPORT_SYMBOL_GPL drivers/misc/mei/mei-me 0xc334c8ed mei_me_dev_init +EXPORT_SYMBOL_GPL drivers/misc/mei/mei-me 0xc75b3d26 mei_me_get_cfg +EXPORT_SYMBOL_GPL drivers/misc/mei/mei-me 0xd0eef98f mei_me_irq_thread_handler +EXPORT_SYMBOL_GPL drivers/misc/pvpanic/pvpanic 0xeb4dfdfe devm_pvpanic_probe +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0x5b8bb699 gru_get_next_message +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0x8dc51bdd gru_create_message_queue +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0x9c7283a1 gru_copy_gpa +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0xd3d2bf04 gru_free_message +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0xde08c325 gru_read_gpa +EXPORT_SYMBOL_GPL drivers/misc/sgi-gru/gru 0xeed7d505 gru_send_message_gpa +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x1018eee0 xp_restrict_memprotect +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x12333991 xpc_set_interface +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x345c9217 xpc_disconnect +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x39046c7a xpc_clear_interface +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x48e62c9f xp_region_size +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x6285dfe8 xp_cpu_to_nasid +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x64ba5017 xp_pa +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x68d27065 xp_expand_memprotect +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x68fa7d28 xp_remote_memcpy +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0x8d146cd0 xpc_registrations +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0xc04c7267 xpc_connect +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0xe68acd6c xpc_interface +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0xead4f7fe xp_max_npartitions +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0xed1d3813 xp_socket_pa +EXPORT_SYMBOL_GPL drivers/misc/sgi-xp/xp 0xf3b47f67 xp_partition_id +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0x675e2442 st_register +EXPORT_SYMBOL_GPL drivers/misc/ti-st/st_drv 0xecca78ec st_unregister +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0x7eff4b64 uacce_alloc +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xa747b4d9 uacce_remove +EXPORT_SYMBOL_GPL drivers/misc/uacce/uacce 0xb4bfbfcf uacce_register +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x024d14bc vmci_qpair_produce_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x046dd187 vmci_datagram_create_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x056837fb vmci_get_context_id +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x1fd4782d vmci_qpair_get_produce_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x2449459d vmci_event_subscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x3a22fa8a vmci_datagram_destroy_handle +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4ba5c46b vmci_qpair_peek +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x4d09d9c6 vmci_qpair_peekv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x5591b58e vmci_context_get_priv_flags +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x5e949e0a vmci_doorbell_destroy +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x612df9ae vmci_qpair_detach +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x676bd843 vmci_qpair_consume_free_space +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x75fe065a vmci_send_datagram +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x787f0fe8 vmci_register_vsock_callback +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x7c74d7a6 vmci_qpair_consume_buf_ready +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0x81d61eef vmci_qpair_dequeue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xa39877cc vmci_qpair_dequev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xb572e830 vmci_doorbell_create +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xbcb85f62 vmci_doorbell_notify +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xc04c7e84 vmci_qpair_get_consume_indexes +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xc403cafe vmci_is_context_owner +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xd9b50f99 vmci_qpair_enquev +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xde3abc2e vmci_datagram_create_handle_priv +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe0cc9c92 vmci_qpair_alloc +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe11895c1 vmci_event_unsubscribe +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xe67343c1 vmci_qpair_enqueue +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xea143610 vmci_datagram_send +EXPORT_SYMBOL_GPL drivers/misc/vmw_vmci/vmw_vmci 0xea61eefe vmci_qpair_produce_buf_ready +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x0b743b5d sdhci_start_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1258fe4a sdhci_set_bus_width +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x187f42e8 sdhci_reset +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x1b757fac sdhci_set_uhs_signaling +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x21aa07ac sdhci_switch_external_dma +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x226a0eb3 sdhci_set_power +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x2277146b sdhci_get_cd_nogpio +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x247e1fa5 sdhci_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x29c29629 __sdhci_set_timeout +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x33f4f148 sdhci_enable_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3d60f441 sdhci_cleanup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x3da28903 sdhci_set_data_timeout_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x45a9a65f __sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x495b8400 sdhci_cqe_enable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x49f5efc6 sdhci_runtime_suspend_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x55683f23 sdhci_runtime_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x60c08ad2 sdhci_remove_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6464e5bb sdhci_abort_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6974fcb6 sdhci_adma_write_desc +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x6ab5cdf2 sdhci_cqe_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x7018bb97 __sdhci_read_caps +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x81e5aee5 sdhci_setup_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x85a22037 sdhci_cqe_disable +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x861fe31c sdhci_set_power_and_bus_voltage +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x86539862 sdhci_enable_v4_mode +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x89900841 sdhci_dumpregs +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8a80c8a1 sdhci_start_signal_voltage_switch +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x8fbdb4e9 sdhci_request_atomic +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x966a155b sdhci_resume_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9c6bd650 sdhci_end_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0x9d21d4ae sdhci_set_power_noreg +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xa1fa5657 sdhci_calc_clk +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xacc6687a sdhci_add_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xaf3a3f9a sdhci_send_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xb1c5fa69 sdhci_free_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc1842ac8 sdhci_enable_sdio_irq +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xc2968a83 sdhci_alloc_host +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd3c70797 sdhci_request +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd4e890a5 sdhci_reset_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xd765acfc sdhci_set_ios +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xddcff388 sdhci_execute_tuning +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci 0xf0d51db1 sdhci_set_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x260bf6ab sdhci_pltfm_free +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x506598f5 sdhci_pltfm_suspend +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x65e14990 sdhci_pltfm_pmops +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x7275d49d sdhci_pltfm_init +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x74ff09f4 sdhci_pltfm_unregister +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x8707c7e5 sdhci_get_property +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0x9d4f438a sdhci_pltfm_resume +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xb52e5885 sdhci_pltfm_clk_get_max_clock +EXPORT_SYMBOL_GPL drivers/mmc/host/sdhci-pltfm 0xf583cf55 sdhci_pltfm_register +EXPORT_SYMBOL_GPL drivers/most/most_core 0x061ace03 most_deregister_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0x1c59a732 channel_has_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x4f6857e4 most_deregister_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0x511ef3b1 most_resume_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0x73224a96 most_start_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0x74d8a854 most_submit_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0x83adf7b8 most_deregister_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x90e2d229 most_register_component +EXPORT_SYMBOL_GPL drivers/most/most_core 0x9fa8f9f4 most_stop_channel +EXPORT_SYMBOL_GPL drivers/most/most_core 0xa067d1f3 most_stop_enqueue +EXPORT_SYMBOL_GPL drivers/most/most_core 0xd2273949 most_put_mbo +EXPORT_SYMBOL_GPL drivers/most/most_core 0xdae70a31 most_register_configfs_subsys +EXPORT_SYMBOL_GPL drivers/most/most_core 0xdc05f7d0 most_register_interface +EXPORT_SYMBOL_GPL drivers/most/most_core 0xf1becaee most_get_mbo +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0x3dbcacd4 cfi_cmdset_0200 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xc0a28942 cfi_cmdset_0003 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0001 0xff8bacaa cfi_cmdset_0001 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0x2ccfd430 cfi_cmdset_0701 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xa1645066 cfi_cmdset_0006 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0002 0xdf361bb6 cfi_cmdset_0002 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_cmdset_0020 0x4ef17d31 cfi_cmdset_0020 +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0x8c488220 cfi_qry_present +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xb558c2be cfi_qry_mode_on +EXPORT_SYMBOL_GPL drivers/mtd/chips/cfi_util 0xeb0e72eb cfi_qry_mode_off +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0x731eac8f hyperbus_register_device +EXPORT_SYMBOL_GPL drivers/mtd/hyperbus/hyperbus-core 0xac2f9e0a hyperbus_unregister_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x029efa31 of_get_mtd_device_by_node +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x08a5ae5f mtd_writev +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x090000c0 mtd_write_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x0f977b10 mtd_erase_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x11f2a53c mtd_ooblayout_set_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x142b9231 mtd_block_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1977df04 mtd_is_locked +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x1aa98c93 mtd_get_unmapped_area +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x25fdd00e mtd_ooblayout_count_freebytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2cd3fa05 mtd_read_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x2f84ef28 __register_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x359082b2 mtd_add_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x382adc4b get_tree_mtd +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3e3eac5b __get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x3e542d7d mtd_ooblayout_get_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x40f8da0f mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x42b3776d mtd_read_fact_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x466cf80f deregister_mtd_parser +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x4fef52df mtd_block_isbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x50dabc2f mtd_table_mutex +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5a6b592b mtd_lock_user_prot_reg +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5ca2eb5f put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x5e78cb5f mtd_kmalloc_up_to +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x696357cb mtd_pairing_groups +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x6f2ef10f get_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7483bf1c mtd_unpoint +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x7b4a4fbf __put_mtd_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x84c12a8a mtd_read +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x85d3d4c5 mtd_device_unregister +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x8ee130bc mtd_wunit_to_pairing_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x90125c32 mtd_panic_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9213ce35 kill_mtd_super +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9bcb2f43 mtd_pairing_info_to_wunit +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9d234886 mtd_ooblayout_free +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9e13c540 mtd_del_partition +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0x9e6d49b9 mtd_device_parse_register +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa22d2ebf mtd_unlock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xa7756afd mtd_ooblayout_count_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xac5b762b register_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb40c4253 mtd_get_fact_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb69c0994 mtd_point +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb7075882 mtd_check_expert_analysis_mode +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xb9303b76 unregister_mtd_user +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc026bb83 mtd_get_device_size +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc4957c12 mtd_block_markbad +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc64b1021 __mtd_next_device +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xc894873f mtd_ooblayout_get_databytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xce73d8a4 mtd_ooblayout_set_eccbytes +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xd45cd411 mtd_ooblayout_find_eccregion +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe028720f mtd_write +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xe39de11f get_mtd_device_nm +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf23b923c mtd_write_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf266fb11 mtd_ooblayout_ecc +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf70bcbb4 mtd_get_user_prot_info +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xf83523fd mtd_lock +EXPORT_SYMBOL_GPL drivers/mtd/mtd 0xfeef8920 mtd_read_oob +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0x631e4339 register_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xa1099c42 del_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xab0f6412 add_mtd_blktrans_dev +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xb3f3b2c6 mtd_blktrans_cease_background +EXPORT_SYMBOL_GPL drivers/mtd/mtd_blkdevs 0xf84718c8 deregister_mtd_blktrans +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x00d8031c nanddev_bbt_set_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x04235362 mxic_ecc_get_pipelined_ops +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x11bbc01c nand_ecc_cleanup_req_tweaking +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x12479e50 nanddev_bbt_get_block_status +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x149b18a3 nand_ecc_tweak_req +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x1836127a mxic_ecc_get_pipelined_engine +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2888e989 nanddev_mtd_erase +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x2c75c4b7 nand_get_large_page_ooblayout +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x4087dc5f nand_ecc_restore_req +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x41798780 nanddev_isreserved +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x47e70160 nanddev_ecc_engine_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x700ca274 nand_ecc_init_req_tweaking +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x89d22d65 mxic_ecc_process_data_pipelined +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8b5386bc nanddev_bbt_update +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x8cec8792 nanddev_bbt_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x91a63e04 nanddev_mtd_max_bad_blocks +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0x9584a4bc mxic_ecc_put_pipelined_engine +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xa3b27488 nand_get_large_page_hamming_ooblayout +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xc0d52a9b nanddev_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xd64ebcd3 nanddev_isbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe4a94735 nanddev_markbad +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xe8262d81 nanddev_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xf2dc4e6a nand_get_small_page_ooblayout +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xf3618cf6 nanddev_ecc_engine_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/nandcore 0xf7fa1300 nanddev_bbt_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0x055e1deb onenand_scan +EXPORT_SYMBOL_GPL drivers/mtd/nand/onenand/onenand 0xa9bbe12f onenand_release +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/denali 0x5e0271f2 denali_chip_init +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x00aab6f1 nand_reset_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x028edaf6 nand_deselect_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x11091291 nand_extract_bits +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x148ea73c nand_prog_page_end_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x227949f9 nand_ecc_choose_conf +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x2d368c4c nand_subop_get_addr_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x3e5323b0 nand_readid_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x4840a331 nand_reset +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5032b9bc nand_gpio_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x51bb16cc nand_read_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x523e5161 nand_decode_ext_id +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5521782f nand_soft_waitrdy +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5632e63d nand_subop_get_num_addr_cyc +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x5c48cf11 nand_cleanup +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x6f81b0f5 nand_change_write_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x79c30f31 nand_read_page_hwecc_oob_first +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x8aecb514 nand_prog_page_begin_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x8f235546 nand_read_oob_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0x92a2d500 nand_write_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa0847f67 nand_op_parser_exec_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa380eaa9 nand_erase_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xa9649c52 nand_read_data_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xad3b9d4b nand_select_target +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xb7cdac18 nand_prog_page_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xc9a22387 nand_status_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xcadf8af2 nand_wait_ready +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd18fbe1f nand_change_read_column_op +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd3c672b8 nand_subop_get_data_len +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/nand 0xd41ff2ac nand_subop_get_data_start_off +EXPORT_SYMBOL_GPL drivers/mtd/nand/raw/sm_common 0xe20955be sm_register_device +EXPORT_SYMBOL_GPL drivers/mtd/spi-nor/spi-nor 0x118137e9 spi_nor_scan +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x07c6eddd ubi_leb_unmap +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x28cb4d4c ubi_leb_change +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x2c7a310d ubi_leb_erase +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x38e10c1d ubi_flush +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x42801d20 ubi_sync +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x66011ab6 ubi_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x6bcb46ac ubi_open_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x711ba822 ubi_close_volume +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x84ed1e33 ubi_open_volume_nm +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x85a8ee76 ubi_unregister_volume_notifier +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x8dcaa88d ubi_get_volume_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9e1383da ubi_leb_write +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0x9f2ef1c2 ubi_leb_map +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xaafbfad1 ubi_is_mapped +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xb10fd308 ubi_open_volume_path +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xbeefdbd4 ubi_leb_read_sg +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xc6fc8708 ubi_do_get_device_info +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xd9ba274b ubi_leb_read +EXPORT_SYMBOL_GPL drivers/mtd/ubi/ubi 0xf5ee9ba8 ubi_register_volume_notifier +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x019ff52b mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0a2e14d0 mux_control_put +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x0a65c89f mux_state_try_select_delay +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x131d9f01 devm_mux_chip_register +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x3e82cd59 mux_control_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x419940e2 mux_control_states +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x4a0fb1b4 devm_mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x5f3b4f9f mux_control_try_select_delay +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x6c6dca75 mux_control_select_delay +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x7cf08396 mux_state_deselect +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x87835012 mux_chip_unregister +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x8dd1d096 mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0x9a706d02 devm_mux_control_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xab82483f devm_mux_state_get +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xd3aecda9 mux_chip_alloc +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xf59c97de mux_chip_free +EXPORT_SYMBOL_GPL drivers/mux/mux-core 0xfa76e911 mux_state_select_delay +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x3454c908 devm_arcnet_led_init +EXPORT_SYMBOL_GPL drivers/net/arcnet/arcnet 0x939782ab arcnet_led_event +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x05b7edec c_can_power_down +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x3d1814cf c_can_power_up +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0x5125341b register_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xbbcc432f unregister_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xc62294aa free_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/c_can/c_can 0xe6615ba0 alloc_c_can_dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x17d1fc08 unregister_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x39ad4d23 free_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0x73356ef1 register_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/cc770/cc770 0xd1ba1937 alloc_cc770dev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x068042b5 can_rx_offload_queue_tail +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x0dd39f66 can_rx_offload_threaded_irq_finish +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x10d892eb can_get_state_str +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x19d3bcf9 can_rx_offload_queue_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x1de77d78 can_rx_offload_add_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x1e66ec6f alloc_can_err_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x1f156488 can_rx_offload_add_manual +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x21098a31 can_dropped_invalid_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x2dbc8915 free_candev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x3706fa91 alloc_canxl_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x39d3030a safe_candev_priv +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x3f01f254 can_change_mtu +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x45b30efa can_rx_offload_del +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x56bd7779 alloc_can_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x6047ede6 can_fd_len2dlc +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x610d647f can_change_state +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x6c4047ec can_bus_off +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x6cc3ad4f can_rx_offload_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x6f6ca812 unregister_candev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x71c13fa3 can_put_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x8bf6c684 can_rx_offload_add_fifo +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x8cf40069 open_candev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x8da8a241 can_skb_get_frame_len +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0x917ba77e alloc_candev_mqs +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xa9501ef9 alloc_canfd_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xbabc9926 can_rx_offload_irq_offload_timestamp +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xcd0e0e4c close_candev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xcd86d20e can_rx_offload_irq_finish +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xe532e762 can_get_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xe6049223 can_rx_offload_enable +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xec1ab61c can_free_echo_skb +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xeeed130c register_candev +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xf0c7cee2 can_rx_offload_irq_offload_fifo +EXPORT_SYMBOL_GPL drivers/net/can/dev/can-dev 0xf12d9387 can_fd_dlc2len +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x10becb46 m_can_class_register +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x2fc355fb m_can_class_allocate_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0x427d28c8 m_can_class_get_clocks +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xa97cc900 m_can_init_ram +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xb1b4cec3 m_can_class_suspend +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xc86abb26 m_can_class_unregister +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xdebecc59 m_can_class_free_dev +EXPORT_SYMBOL_GPL drivers/net/can/m_can/m_can 0xe681311b m_can_class_resume +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x269b46f2 register_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x37f2da85 free_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0x49ebd0d2 sja1000_interrupt +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xc5622984 alloc_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/can/sja1000/sja1000 0xfde48a8a unregister_sja1000dev +EXPORT_SYMBOL_GPL drivers/net/dsa/lan9303-core 0xe0f1eef6 lan9303_indirect_phy_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/microchip/ksz_switch 0xecc4aaf5 ksz_switch_chips +EXPORT_SYMBOL_GPL drivers/net/dsa/mt7530 0x4492f44b mt7530_probe_common +EXPORT_SYMBOL_GPL drivers/net/dsa/mt7530 0x7813e32b mt7530_switch_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/mt7530 0x93a2919f mt753x_table +EXPORT_SYMBOL_GPL drivers/net/dsa/mt7530 0xdae2b29d mt7530_remove_common +EXPORT_SYMBOL_GPL drivers/net/dsa/ocelot/mscc_felix_dsa_lib 0x3fd194d5 felix_switch_ops +EXPORT_SYMBOL_GPL drivers/net/dsa/ocelot/mscc_felix_dsa_lib 0x95dc62f2 felix_port_to_netdev +EXPORT_SYMBOL_GPL drivers/net/dsa/ocelot/mscc_felix_dsa_lib 0x9bdf4f64 felix_netdev_to_port +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8365mb 0xec0f976b rtl8365mb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x10893f9e rtl8366_get_strings +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x118973fd rtl8366_reset_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x4c801511 rtl8366_vlan_add +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x4e8bd5db rtl8366_get_ethtool_stats +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x58dc503d rtl8366_set_pvid +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x5f08338e rtl8366_vlan_del +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x6ee17b67 rtl8366_mc_is_used +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0x82c3e3a6 rtl8366_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0xa69f7596 rtl8366rb_variant +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0xb62501f2 rtl8366_enable_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0xd01f2453 rtl8366_set_vlan +EXPORT_SYMBOL_GPL drivers/net/dsa/realtek/rtl8366 0xea36cb62 rtl8366_enable_vlan4k +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0x37325aa9 pdsc_get_pf_struct +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0x45b87b4f pdsc_register_notify +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0x81e4273a pds_client_register +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0x9096171b pds_client_adminq_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0x9266b9a4 pds_client_unregister +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0xc45181c0 pdsc_adminq_post +EXPORT_SYMBOL_GPL drivers/net/ethernet/amd/pds_core/pds_core 0xce714617 pdsc_unregister_notify +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x001ad907 octeon_setup_output_queues +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x02a04078 octeon_free_soft_command +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x04a5a538 octeon_delete_droq +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x04ef7c01 lio_get_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x084e4565 cn23xx_fw_loaded +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x0bf65971 octeon_alloc_soft_command_resp +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x0d1da937 lio_enable_irq +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x0df646f0 octnet_send_nic_data_pkt +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x0fc1dd04 cn23xx_octeon_pfvf_handshake +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x19074748 setup_rx_oom_poll_fn +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x19cb4e69 liquidio_link_ctrl_cmd_completion +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x1b68252a lio_wait_for_instr_fetch +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x1ffc98bd octeon_mem_access_ok +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x241a2a6c lio_fetch_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x28d159eb lio_delete_glists +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x2c1ef97b liquidio_set_ethtool_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x2d36b252 octeon_droq_check_hw_for_pkts +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x343ffe35 octeon_register_reqtype_free_fn +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x35f1ffaa octeon_setup_response_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x35f44678 octeon_write_device_mem32 +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x362106cd octeon_delete_dispatch_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x37e42ba2 octeon_get_rx_qsize +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x4960a3c5 octeon_setup_interrupt +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x4ce07d03 octeon_read_device_mem64 +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x55434881 lio_setup_cn68xx_octeon_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x5c6bf74a octeon_allocate_ioq_vector +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x67ef0465 octeon_init_dispatch_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x68116416 lio_wait_for_clean_oq +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x68c78ea2 octeon_delete_instr_queue +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x6b6521ce cleanup_rx_oom_poll_fn +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x6d0d28ef octeon_init_device_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x7284b0ed lio_process_ordered_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x7487c2ca octeon_allocate_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x760c4062 lio_pci_writeq +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x7c918f10 cn23xx_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x7cc701fd octeon_get_conf +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x7e9fffff octeon_prepare_soft_command +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x808dd414 octeon_read_device_mem32 +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x87faaef8 octeon_pci_read_core_mem +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x89b323b5 liquidio_get_fec +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x8aa7c626 cn23xx_vf_ask_pf_to_do_flr +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x8ed5d578 octeon_get_tx_qsize +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x901d556c octeon_setup_sc_buffer_pool +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x943649d1 octeon_free_sc_done_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x965d16b1 octeon_delete_response_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x9a2c0e84 liquidio_set_feature +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0x9b413e83 octeon_free_sc_buffer_pool +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xa0e936f2 lio_pci_readq +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xa482cc73 octeon_setup_instr_queues +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xaae991a4 octeon_register_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xab433018 octeon_free_device_mem +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xb2d5a4f0 octnet_send_nic_ctrl_pkt +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xb5011ecd cn23xx_tell_vf_its_macaddr_changed +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xb6c873cd liquidio_change_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xb956f24f octeon_send_command +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xbc35851b octeon_unregister_droq_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xbec8d6b0 octeon_register_dispatch_fn +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xc193715d octeon_free_ioq_vector +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xc6abc5b1 octeon_core_drv_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xc76b947c octeon_set_io_queues_off +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xcab193bc octeon_alloc_soft_command +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xcf374669 lio_process_iq_request_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xd1843674 octeon_deregister_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xe0142d36 octeon_send_soft_command +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xe1c0934e lio_setup_glists +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xe577192c lio_setup_cn66xx_octeon_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xe669088e cn23xx_setup_octeon_vf_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xec29fc3d octeon_free_sc_zombie_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xec7f00a5 lio_get_state_string +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xefa98c81 octeon_droq_process_packets +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xeff8d11b octeon_wait_for_ddr_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xf04da0cb liquidio_setup_io_queues +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xf298957a liquidio_get_speed +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xf6c66326 octeon_pci_write_core_mem +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xf846d373 setup_cn23xx_octeon_pf_device +EXPORT_SYMBOL_GPL drivers/net/ethernet/cavium/liquidio/liquidio-core 0xff61ed64 octeon_ring_doorbell_locked +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x0a01b03b fun_free_ring_mem +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x107dacb2 fun_serv_sched +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x3951a649 fun_get_res_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x4bc1e19b fun_cq_create +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x4c93e040 fun_bind +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x502bb515 fun_serv_stop +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x64b4092d fun_submit_admin_sync_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0x720a3916 fun_res_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0xc4fe08c0 fun_serv_restart +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0xe2573ff4 fun_alloc_ring_mem +EXPORT_SYMBOL_GPL drivers/net/ethernet/fungible/funcore/funcore 0xfd39c94b fun_sq_create +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/i40e/i40e 0x0c90bbe0 i40e_client_device_register +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/i40e/i40e 0x227c4040 i40e_client_device_unregister +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/ice/ice 0x25297da3 ice_rdma_request_reset +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/ice/ice 0xad9ecd2b ice_rdma_update_vsi_filter +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/ice/ice 0xadfcfd13 ice_del_rdma_qset +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/ice/ice 0xb92fe598 ice_get_qos_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/intel/ice/ice 0xe440de90 ice_add_rdma_qset +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x00151507 __mlx4_replace_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x011147c0 mlx4_update_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0191bc84 mlx4_db_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x072a5954 mlx4_mtt_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x08e13b96 mlx4_mr_hw_change_access +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0cfedf41 mlx4_multicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x0e7a0875 mlx4_srq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x11a8d84c mlx4_counter_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x121e4017 mlx4_get_devlink_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x18a7434f mlx4_pd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1bbaffd2 mlx4_hw_rule_sz +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x1ffcf667 mlx4_get_counter_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x209fbd32 mlx4_cq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x240ecb02 mlx4_set_vf_spoofchk +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2531705b mlx4_free_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x286826f0 mlx4_set_vf_rate +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2b710f74 mlx4_phys_to_slaves_pport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x2db4ff3f mlx4_map_sw_to_hw_steering_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x3344a0ef mlx4_unicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x336cfadc mlx4_flow_steer_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x34516636 mlx4_mr_hw_write_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x347724dc mlx4_mr_hw_change_pd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x35164485 mlx4_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x38e5be09 mlx4_bf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x41d1d54d mlx4_config_vxlan_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4504d3cc mlx4_qp_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4e31e64c mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x4ed85ad1 mlx4_register_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x53ac8cd6 mlx4_pd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x53f662a1 mlx4_unicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x590c8825 mlx4_set_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5e659c5c mlx4_CLOSE_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5ed2e06b mlx4_unicast_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x5eed1d68 mlx4_multicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x617fbca9 mlx4_alloc_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x61e87dee mlx4_get_default_counter_index +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x62c2fae6 mlx4_alloc_cmd_mailbox +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x645825ac mlx4_cq_resize +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x670938d5 mlx4_qp_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x67350949 mlx4_mr_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x683488ef mlx4_get_vf_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x69e3d256 mlx4_mr_hw_put_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6ac3357e mlx4_srq_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c5622ec mlx4_qp_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6c6bbadd mlx4_xrcd_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cddb324 mlx4_mw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x6cf58b7e mlx4_qp_reserve_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x712a1ed1 mlx4_phys_to_slave_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x72910dbc mlx4_multicast_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7370e4c5 mlx4_INIT_PORT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x777d56f7 mlx4_get_active_ports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x78d30cfd mlx4_get_internal_clock_params +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7c46d2fa mlx4_qp_to_ready +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7dd626e1 mlx4_wol_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x7ee7b126 mlx4_vf_get_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x80bc8b9d mlx4_mr_hw_get_mpt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x833cc077 mlx4_get_base_qpn +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x841b8080 mlx4_read_clock +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x84a5d0ee mlx4_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x867452e7 mlx4_free_hwq_res +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x87ed209d mlx4_mr_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x889a37d7 mlx4_ACCESS_PTYS_REG +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x88da8633 mlx4_set_vf_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8edcbe52 mlx4_unbond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x8efccab9 mlx4_buf_write_mtt +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x910585c4 mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x91eb6bfd mlx4_config_roce_v2_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x928f004b mlx4_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x952914d4 mlx4_counter_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ca271de mlx4_flow_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9e215795 mlx4_uar_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9ef088b2 mlx4_config_dev_retrieval +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9f227128 mlx4_vf_set_enable_smi_admin +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0x9fa6cfb6 mlx4_bond +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa3781393 mlx4_replace_zero_macs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa6a2d73a mlx4_register_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa7df6b71 mlx4_cq_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xa9fdfc98 mlx4_FLOW_STEERING_IB_UC_QP_RANGE +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaacbe149 mlx4_qp_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xab85725b mlx4_port_map_set +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xad575482 __mlx4_unregister_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xaf6dccb6 mlx4_mr_rereg_mem_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb01765be mlx4_mtt_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb2d266e7 __mlx4_cmd +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb48e17fd mlx4_slave_convert_port +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xb9b8ec7c mlx4_unregister_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xba2354a7 mlx4_mr_rereg_mem_cleanup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbd9be25d mlx4_get_protocol_dev +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbea3aedd mlx4_unregister_interface +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xbf9f5f81 mlx4_unicast_detach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc0e5edc7 mlx4_srq_lookup +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc2fb6199 mlx4_SYNC_TPT +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xc96c4dc1 mlx4_find_cached_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xca28ae2f mlx4_phys_to_slaves_pport_actv +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcb1b1485 mlx4_get_admin_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcdbb514f mlx4_uar_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcea4be37 mlx4_mtt_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xcf82d98c mlx4_qp_release_range +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd0727a33 mlx4_xrcd_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd2d717d8 mlx4_qp_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd43fc87e __mlx4_register_mac +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4cd87b6 mlx4_buf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd4de1006 mlx4_multicast_promisc_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd6d798a5 mlx4_find_cached_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd7123ab7 mlx4_srq_query +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd941c7aa mlx4_mr_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xd9c9bef9 mlx4_set_vf_link_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xde63e154 mlx4_wol_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xdf0d7455 mlx4_map_sw_to_hw_steering_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe2edeef2 mlx4_bf_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe647b1e1 mlx4_set_vf_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe6b74812 mlx4_get_slave_default_vlan +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xe76d5f1e mlx4_flow_steer_promisc_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xec362622 mlx4_cq_modify +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xeeee561b mlx4_get_vf_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2cd1a6f mlx4_vf_smi_enabled +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf2ec0fd2 mlx4_srq_arm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf43ec283 mlx4_mw_enable +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf4b0999f mlx4_put_qp +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf6c37fce mlx4_mw_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xf94884d5 mlx4_flow_attach +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx4/mlx4_core 0xfd49b892 mlx4_get_base_gid_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x04009b10 mlx5_query_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x05c391e0 mlx5_query_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x072460c4 mlx5_fill_page_frag_array +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x07f7cd11 mlx5_query_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0a467ffc mlx5_core_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0b389438 mlx5_ipsec_device_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0db5cdcf mlx5_modify_port_ets_rate_limit +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x0dbbb857 mlx5_nic_vport_unaffiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x14639a30 mlx5_query_nic_vport_min_inline +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2169fede mlx5_frag_buf_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x282d9962 mlx5_query_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2d989081 mlx5_query_port_max_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x2dc61132 mlx5_query_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x34966b1d mlx5_core_reserved_gids_count +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3738a598 mlx5_set_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x3c7627ce mlx5_access_reg +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x4086d086 mlx5_query_hca_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x42b29202 mlx5_set_port_wol +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x439d0350 mlx5_query_nic_vport_qkey_viol_cntr +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x43e0ca40 mlx5_set_port_admin_status +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x46215cbb mlx5_set_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x495c993a mlx5_set_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x497c49dc mlx5_query_hca_vport_pkey +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x50907b34 mlx5_dm_sw_icm_dealloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x573c8db7 mlx5_modify_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x5a7f02ab mlx5_query_port_ptys +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x60a657ed mlx5_query_port_prio_tc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x61ce20d0 mlx5_modify_nic_vport_vlans +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x63bb7c89 mlx5_query_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x640d81b9 mlx5_dm_sw_icm_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6bd7f8d7 mlx5_set_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6d9cb313 mlx5_vport_get_other_func_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x6fcf3d1f mlx5_eswitch_get_total_vports +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7014016d mlx5_nic_vport_query_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x75d71c14 mlx5_query_port_pfc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x761bfd7e mlx5_query_port_vl_hw_cap +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7e9c0e03 mlx5_modify_nic_vport_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x7fd1dd67 mlx5_query_module_eeprom +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x81aadc6a mlx5_fill_page_frag_array_perm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x82503c9e mlx5_nic_vport_update_local_lb +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x84b2c854 mlx5_query_hca_vport_gid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x8b4a98e6 mlx5_query_module_eeprom_by_page +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x90c10a00 mlx5_core_query_vport_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0x956b2c8c mlx5_core_modify_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa3868e2a mlx5_set_port_caps +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xa5cfe935 mlx5_db_free +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xae058a35 mlx5_query_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb42849cf mlx5_query_port_tc_group +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xb70ce04b mlx5_set_port_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xbf71a8c7 mlx5_query_nic_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xc97c2eb2 mlx5_query_hca_vport_context +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb6f32c8 mlx5_query_port_oper_mtu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xcb7a7bd1 mlx5_query_port_pause +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdac3f18f mlx5_query_nic_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdc82beb3 mlx5_db_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xdd493e1b mlx5_toggle_port_link +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe6675bd3 mlx5_query_nic_vport_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe68a293f mlx5_query_nic_vport_system_image_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe88968d9 mlx5_eswitch_mode +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xe904ecd6 mlx5_query_hca_vport_node_guid +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xea88979c mlx5_query_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf184a70c mlx5_set_port_tc_bw_alloc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf6462dd0 mlx5_frag_buf_alloc_node +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xf93046c7 mlx5_core_query_sq_state +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfab7dd12 mlx5_modify_nic_vport_promisc +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfb792ff2 mlx5_modify_nic_vport_mac_list +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfdc39d18 mlx5_query_mac_address +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xfe21bdd6 mlx5_nic_vport_enable_roce +EXPORT_SYMBOL_GPL drivers/net/ethernet/mellanox/mlx5/core/mlx5_core 0xff5384dc mlx5_nic_vport_affiliate_multiport +EXPORT_SYMBOL_GPL drivers/net/ethernet/micrel/ks8851_common 0x8d46c078 ks8851_probe_common +EXPORT_SYMBOL_GPL drivers/net/ethernet/micrel/ks8851_common 0x992de40e ks8851_remove_common +EXPORT_SYMBOL_GPL drivers/net/ethernet/micrel/ks8851_common 0xc8fbf83f ks8851_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/micrel/ks8851_common 0xead97ae0 ks8851_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0x88240446 devm_regmap_init_encx24j600 +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0xcc4fa41a regmap_encx24j600_spi_write +EXPORT_SYMBOL_GPL drivers/net/ethernet/microchip/encx24j600-regmap 0xe8c8c6c2 regmap_encx24j600_spi_read +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x00d858a0 ocelot_port_assigned_dsa_8021q_cpu_mask +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x10dbde3a ocelot_mm_irq +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x17a83373 __ocelot_bulk_read_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x1d59d5fd ocelot_port_teardown_dsa_8021q_cpu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2c1d16d8 ocelot_port_get_rmon_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2de7fe70 ocelot_port_rmwl +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x2e1272d0 ocelot_port_get_eth_phy_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x37bddb5d __ocelot_write_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x435c14ff ocelot_port_get_eth_ctrl_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x4847d880 ocelot_port_setup_dsa_8021q_cpu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x52d75549 ocelot_get_bridge_fwd_mask +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x5b218582 ocelot_port_set_default_prio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x6045dd71 ocelot_port_mirror_del +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x68e02284 ocelot_lag_fdb_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x6dd643c7 ocelot_port_readl +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x74570b89 __ocelot_rmw_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x7606338d ocelot_regfields_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x85924a12 ocelot_lag_fdb_del +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x888140d1 ocelot_port_writel +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x89dde91d ocelot_port_get_pause_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x8a70a133 ocelot_bridge_num_find +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x8cadb62f ocelot_port_mqprio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x9a5621b5 ocelot_port_assign_dsa_8021q_cpu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x9b0815d2 ocelot_port_get_eth_mac_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0x9b778b90 ocelot_port_get_mm_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xa8012d78 __ocelot_read_ix +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xa9e32ab2 ocelot_port_get_mm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xaa4949ed ocelot_port_get_dscp_prio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb17a0632 ocelot_migrate_mdbs +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb5766086 ocelot_phylink_mac_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xb6dc0e6f ocelot_port_del_dscp_prio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xba144f05 ocelot_phylink_mac_link_up +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xbe894b90 ocelot_cls_flower_stats +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xcbab1653 ocelot_mact_flush +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd10f1612 ocelot_port_get_default_prio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd3c9d06b ocelot_bond_get_id +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd629c788 ocelot_regmap_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xd663ae64 ocelot_cls_flower_destroy +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xda311bb4 ocelot_port_add_dscp_prio +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xe760e1a6 ocelot_port_mirror_add +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf1b6ec67 ocelot_phylink_mac_link_down +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf38c9771 ocelot_port_set_mm +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xf54509ab ocelot_port_unassign_dsa_8021q_cpu +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xfd201923 ocelot_cls_flower_replace +EXPORT_SYMBOL_GPL drivers/net/ethernet/mscc/mscc_ocelot_switch_lib 0xfd70b3a2 ocelot_port_configure_serdes +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x03ee42d2 stmmac_bus_clks_config +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x545572d4 stmmac_set_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x72b1f00b stmmac_dvr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x92d778bb stmmac_get_mac_addr +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0x99f60f85 stmmac_resume +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xa9536ef3 stmmac_suspend +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xad5f8afa stmmac_dvr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac 0xbfbf5cd8 stmmac_init_tstamp_counter +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x145c66e3 devm_stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x1a449a4e stmmac_pltfr_exit +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x21b9cb66 stmmac_probe_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x2d8867e4 stmmac_remove_config_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x3dc1d7df stmmac_pltfr_remove +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x4de966e7 stmmac_pltfr_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x4e49e666 stmmac_get_platform_resources +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x65609865 stmmac_pltfr_init +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x6cb41c5a stmmac_pltfr_remove_no_dt +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x7b118ae1 devm_stmmac_pltfr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/stmicro/stmmac/stmmac-platform 0x8f784f93 stmmac_pltfr_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x131f0f50 w5100_probe +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x1fffe30b w5100_pm_ops +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0x55d79686 w5100_ops_priv +EXPORT_SYMBOL_GPL drivers/net/ethernet/wiznet/w5100 0xf5d967dc w5100_remove +EXPORT_SYMBOL_GPL drivers/net/geneve 0x298d1c5f geneve_dev_create_fb +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x330479f3 ipvlan_link_setup +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x5b40a3fb ipvlan_link_delete +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x5c495c13 ipvlan_link_new +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0x8ca1838d ipvlan_count_rx +EXPORT_SYMBOL_GPL drivers/net/ipvlan/ipvlan 0xb280e187 ipvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/macsec 0xb5b756fa macsec_pn_wrapped +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x51bb874b macvlan_common_newlink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0x73143a0c macvlan_common_setup +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xa637a013 macvlan_dellink +EXPORT_SYMBOL_GPL drivers/net/macvlan 0xc0d20a4c macvlan_link_register +EXPORT_SYMBOL_GPL drivers/net/mdio/mdio-i2c 0x1e4f707f mdio_i2c_alloc +EXPORT_SYMBOL_GPL drivers/net/mdio/mdio-regmap 0xd2afa954 devm_mdio_regmap_register +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs-lynx 0x6adddba6 lynx_pcs_create_fwnode +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x08859528 xpcs_destroy +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x330ebce7 xpcs_do_config +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x4badcf8c xpcs_get_an_mode +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x76009c93 xpcs_config_eee +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x87c91a52 xpcs_get_interfaces +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0x9b430bc5 xpcs_link_up +EXPORT_SYMBOL_GPL drivers/net/pcs/pcs_xpcs 0xdc4a1791 xpcs_create_mdiodev +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x04240202 bcm_phy_cable_test_get_status +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x0c535686 bcm_phy_cable_test_get_status_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x112b0d74 bcm_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x165423be bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x193f9aaf bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x228ca53b bcm_phy_enable_apd +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x28b2a679 bcm_phy_get_stats +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x291125b6 bcm54xx_auxctl_read +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x31482c20 bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x330eb21a bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x358be0eb __bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3e17d133 bcm_phy_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3f625556 bcm_phy_read_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x3fb9c158 bcm_phy_enable_jumbo +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x4c8ef015 bcm_phy_get_sset_count +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5b4be274 bcm_phy_read_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x5bda544a bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x61eabeea bcm_phy_28nm_a0b0_afe_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x658196c7 bcm_phy_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x6ab89abe bcm_phy_led_brightness_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x7183254d bcm_phy_ack_intr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x72cd6a9c bcm_phy_write_misc +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x74875d29 bcm_phy_downshift_get +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x880e6be6 bcm_phy_downshift_set +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x94471791 bcm_phy_write_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0x9b82a8c6 bcm_phy_write_shadow +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa0f0ddfd bcm_phy_wol_isr +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa8f5f15e __bcm_phy_modify_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xa9ab45cd bcm_phy_handle_interrupt +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xaab36f64 __bcm_phy_modify_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb2c1e58a __bcm_phy_read_exp +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xb798d4c4 __bcm_phy_write_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xc0a84d95 bcm_phy_get_strings +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xd1b183cb bcm_phy_cable_test_start +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xe3de7627 bcm_phy_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xefe8d676 bcm_phy_r_rc_cal_reset +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xf0242b6f __bcm_phy_read_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-lib 0xfcd522c5 bcm_phy_cable_test_start_rdb +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-ptp 0x7f913212 bcm_ptp_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-ptp 0xe54c4503 bcm_ptp_stop +EXPORT_SYMBOL_GPL drivers/net/phy/bcm-phy-ptp 0xefbcdbb6 bcm_ptp_probe +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x08213956 phylink_ethtool_get_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x0a32e570 phylink_mii_c22_pcs_config +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x12135396 phylink_mac_change +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x157c3f16 phylink_generic_validate +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x15c4e3e2 phylink_ethtool_set_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x16ca1a8a phylink_suspend +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x2c8e28ee phylink_ethtool_get_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x37c04a96 phylink_connect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x3abe6fe5 phylink_validate_mask_caps +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x40a56deb phylink_of_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x4278d56a phylink_expects_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x57727285 phylink_ethtool_set_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x59e0695d phylink_speed_down +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5d0c4dcc phylink_speed_up +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x5dc19747 phylink_mii_c22_pcs_encode_advertisement +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x62104126 phylink_ethtool_set_wol +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x66e8b5b0 phylink_caps_to_linkmodes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x6fa426d2 phylink_ethtool_nway_reset +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x825c7340 phylink_get_eee_err +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x911fcd6c phylink_start +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x94299178 phylink_decode_usxgmii_word +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9616a255 phylink_ethtool_ksettings_get +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x97b10dc4 phylink_mii_c22_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x983276da phylink_disconnect_phy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0x9b652b6e phylink_resolve_c73 +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xa16449b4 phylink_ethtool_ksettings_set +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xb1b3f6ed phylink_mii_c22_pcs_decode_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc0a8f4be phylink_resume +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xc1d15a4c phylink_set_port_modes +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd1a305db phylink_mii_c22_pcs_an_restart +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd22202b2 phylink_fwnode_phy_connect +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd2ef6a40 phylink_mii_ioctl +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xd903f419 phylink_get_capabilities +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xdcb0a2c0 phylink_stop +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xec02ebe0 phylink_init_eee +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf3083a1d phylink_destroy +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf351062f phylink_create +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf7cae865 phylink_mii_c45_pcs_get_state +EXPORT_SYMBOL_GPL drivers/net/phy/phylink 0xf8fe5642 phylink_ethtool_get_pauseparam +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0x2dca3eb9 smsc_phy_probe +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0x5df1408a smsc_phy_config_intr +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0x63324d82 lan87xx_read_status +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0x6f663813 smsc_phy_config_init +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0x992a6f2f smsc_phy_get_tunable +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0xd3ae7c96 smsc_phy_set_tunable +EXPORT_SYMBOL_GPL drivers/net/phy/smsc 0xf0486246 smsc_phy_handle_interrupt +EXPORT_SYMBOL_GPL drivers/net/tap 0x092ce043 tap_get_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x13bb2e98 tap_handle_frame +EXPORT_SYMBOL_GPL drivers/net/tap 0x321ffd8b tap_create_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x4ba0f531 tap_free_minor +EXPORT_SYMBOL_GPL drivers/net/tap 0x6c0fc04d tap_get_socket +EXPORT_SYMBOL_GPL drivers/net/tap 0x7261bde1 tap_get_ptr_ring +EXPORT_SYMBOL_GPL drivers/net/tap 0x95d06a38 tap_destroy_cdev +EXPORT_SYMBOL_GPL drivers/net/tap 0x9e2c00b4 tap_queue_resize +EXPORT_SYMBOL_GPL drivers/net/tap 0xeab51f23 tap_del_queues +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x3493d5cb usbnet_cdc_update_filter +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x3a0b9fab usbnet_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x5d309936 usbnet_cdc_status +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x6b74ec0d usbnet_generic_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0x931c7d37 usbnet_cdc_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xdc80961d usbnet_ether_cdc_bind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ether 0xe198670f usbnet_cdc_zte_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x111f1dd9 cdc_ncm_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x1d8b27a1 cdc_ncm_rx_verify_ndp32 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x2cc8115c cdc_ncm_fill_tx_frame +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x36f6eb5d cdc_ncm_rx_verify_ndp16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x4661d57b cdc_ncm_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x62efa8c3 cdc_ncm_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0x97bb3075 cdc_ncm_bind_common +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc0732825 cdc_ncm_select_altsetting +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xc77d1e95 cdc_ncm_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xefdd37ac cdc_ncm_rx_verify_nth16 +EXPORT_SYMBOL_GPL drivers/net/usb/cdc_ncm 0xf06f9e81 cdc_ncm_rx_verify_nth32 +EXPORT_SYMBOL_GPL drivers/net/usb/r8152 0xf824452c rtl8152_get_version +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x08b8bbd1 generic_rndis_bind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x08f50472 rndis_command +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x2d271ca1 rndis_tx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0x5be0ff8d rndis_status +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xafbeb6f1 rndis_unbind +EXPORT_SYMBOL_GPL drivers/net/usb/rndis_host 0xfec8e2bb rndis_rx_fixup +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x04fe51c2 usbnet_read_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x0c2183b4 usbnet_write_cmd_async +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x17be0892 usbnet_unlink_rx_urbs +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x17c1f267 usbnet_suspend +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x23c24183 usbnet_get_endpoints +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3aac0b2e usbnet_get_link +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x3af06c12 usbnet_open +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x41b4311d usbnet_nway_reset +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x471e5e96 usbnet_get_ethernet_addr +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x49abe3f5 usbnet_tx_timeout +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4b283fcd usbnet_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x4d4fcd08 usbnet_get_drvinfo +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x54859fa6 usbnet_update_max_qlen +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x603cbe2e usbnet_defer_kevent +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6059b460 usbnet_get_link_ksettings_mii +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6118a200 usbnet_probe +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x66620247 usbnet_status_stop +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x6c1429d3 usbnet_resume +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x84353f81 usbnet_read_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x93466b16 usbnet_purge_paused_rxq +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x97003bca usbnet_write_cmd +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9849c5f4 usbnet_change_mtu +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0x9eab8736 usbnet_set_rx_mode +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb141ee6f usbnet_pause_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb7e10cde usbnet_set_link_ksettings_mii +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xb81c5784 usbnet_set_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbbd0d9d2 usbnet_skb_return +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xbd8545d2 usbnet_get_link_ksettings_internal +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xd8de07c7 usbnet_disconnect +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe7a0b13e usbnet_resume_rx +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xe9f6ada4 usbnet_get_msglevel +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xeeed7652 usbnet_write_cmd_nopm +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf2f6bbef usbnet_start_xmit +EXPORT_SYMBOL_GPL drivers/net/usb/usbnet 0xf718dffe usbnet_status_start +EXPORT_SYMBOL_GPL drivers/net/vxlan/vxlan 0x1a0fda68 vxlan_fdb_clear_offload +EXPORT_SYMBOL_GPL drivers/net/vxlan/vxlan 0x1c7da69a vxlan_fdb_replay +EXPORT_SYMBOL_GPL drivers/net/vxlan/vxlan 0x588e6a2c vxlan_dev_create +EXPORT_SYMBOL_GPL drivers/net/vxlan/vxlan 0xae7507cd vxlan_fdb_find_uc +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/ipw2x00/libipw 0x2c762085 libipw_rx_any +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x16e28858 il_dealloc_bcast_stations +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0x68933629 il_remove_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xc32bca64 _il_grab_nic_access +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xd7fea037 il_mac_tx_last_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlegacy/iwlegacy 0xdb60ded1 il_prep_station +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x13863121 iwl_fw_lookup_cmd_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x443a0ac3 iwl_fw_lookup_notif_ver +EXPORT_SYMBOL_GPL drivers/net/wireless/intel/iwlwifi/iwlwifi 0x5987fe45 iwl_fw_lookup_assert_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x25c86b6c p54_parse_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x2f62f850 p54_free_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x415e88f3 p54_init_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0x841f6b83 p54_free_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xb83aec46 p54_read_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xcdef7609 p54_register_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd007d71e p54_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xd70f9049 p54_unregister_common +EXPORT_SYMBOL_GPL drivers/net/wireless/intersil/p54/p54common 0xddaf3a1b p54_parse_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x01e3f517 lbs_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x2886765b lbs_notify_command_response +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x359b4dbd lbs_queue_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x4773a075 lbs_get_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x5018f9b3 lbs_get_firmware_async +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x66381696 lbs_start_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x730fb32b lbs_host_to_card_done +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x78c1b0fe lbs_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x7be049da lbs_host_sleep_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x80d752d1 lbs_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0x824e04ca lbs_process_rxed_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xa9baa8b0 lbs_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xd901dcbe lbs_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xe5f3fa4a __lbs_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xe6ea860c lbs_stop_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xea1e89a8 lbs_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas/libertas 0xf64277de lbs_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x238f4223 lbtf_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x32183084 lbtf_cmd_copyback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x5b36bdd8 lbtf_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x624177ce lbtf_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0x9359ba6c lbtf_send_tx_feedback +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xaf9f2ca9 lbtf_bcn_sent +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xc85e6899 lbtf_debug +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xd8cc529b lbtf_cmd_response_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/libertas_tf/libertas_tf 0xfad39bfc __lbtf_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x06fd94da mwifiex_remove_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x15c993bb mwifiex_cancel_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x23224cc6 mwifiex_process_hs_config +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x3a1b51c3 mwifiex_write_data_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x47ae18fd mwifiex_shutdown_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x47e29f0f mwifiex_add_card +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4abd52be mwifiex_process_sleep_confirm_resp +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x4bb271b8 mwifiex_fw_dump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x51576947 mwifiex_multi_chan_resync +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x55f80c17 mwifiex_add_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5a933f47 _mwifiex_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x5e9f2696 mwifiex_prepare_fw_dump_info +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x68c01f64 mwifiex_reinit_sw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x7540afa5 mwifiex_main_process +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x78faa339 mwifiex_handle_rx_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x8a1073bc mwifiex_upload_device_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9cd4a3f7 mwifiex_del_virtual_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0x9f8cb108 mwifiex_init_shutdown_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xaa17abdb mwifiex_deauthenticate_all +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xbcd004f7 mwifiex_dnld_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xc4618cc0 mwifiex_disable_auto_ds +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xd4dad9f3 mwifiex_alloc_dma_align_buf +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xe9548ca5 mwifiex_drv_info_dump +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xf3f9659b mwifiex_queue_main_work +EXPORT_SYMBOL_GPL drivers/net/wireless/marvell/mwifiex/mwifiex 0xfcfe406c mwifiex_enable_hs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x059f4826 mt76_free_pending_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0674dee2 mt76_tx_check_agg_ssn +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x07f1574c mt76_queue_tx_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x08e211c0 mt76_mmio_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0b7f5a9d mt76_free_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0e092613 mt76_token_release +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0e8c454e mt76_unregister_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x0f578a74 mt76_csa_finish +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x127f7e5d mt76_get_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x132a9dc1 mt76_sta_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x17f568e9 mt76_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x181ebdc4 mt76_eeprom_override +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1bb60304 __SCK__tp_func_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x1ec57b4f __mt76_worker_fn +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x26bdb734 mt76_release_buffered_frames +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x278300b3 mt76_txq_schedule_all +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2852191c mt76_queues_read +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2a337af1 __mt76_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2bed29d9 mt76_skb_adjust_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x2d13c393 mt76_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3064f1b3 mt76_put_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x30ab5a55 mt76_get_rate_power_limits +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3314690b __tracepoint_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x37b5e626 mt76_insert_ccmp_hdr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x38e0ca0b __traceiter_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x38ebc57a __traceiter_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x39342a50 mt76_tx_status_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x39f3989b mt76_get_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3d845263 mt76_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3e5b0f06 mt76_get_min_avg_rssi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3e65776c mt76_sw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x3fe351c6 mt76_dma_wed_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x420582fb mt76_mcu_rx_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x492c78f1 mt76_mcu_skb_send_and_get_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4e4f3c42 mt76_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x4ffc4f13 mt76_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x52eaea0c mt76_tx_status_skb_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5cc10422 mt76_init_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x5f5929ac __mt76_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x603af437 mt76_token_consume +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6182576e mt76_alloc_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x699cad95 mt76_pci_disable_aspm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x6d3a4107 mt76_put_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7132b957 mt76_rx_aggr_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x724c74f8 mt76_rx_token_release +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7422c37b mt76_register_debugfs_fops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x74270bec mt76_tx_worker_run +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x766d9890 mt76_dma_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x78638de9 mt76_tx_status_skb_get +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7ad07c21 ____mt76_poll_msec +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x7ffe541c mt76_has_tx_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x82d6416b mt76_wake_tx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x82da5250 mt76_calculate_default_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x84a808d6 mt76_phy_dfs_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x89533e89 mt76_mcu_send_and_get_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x897bf2a3 mt76_stop_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x91dc3f68 mt76_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x942365a5 mt76_rx_token_consume +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9478f613 __mt76_set_tx_blocked +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x94f36e57 mt76_update_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9c6bf9e8 mt76_ethtool_page_pool_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0x9ce234f3 mt76_get_of_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa049db91 mt76_seq_puts_array +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xa6c537e0 mt76_dma_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xab9d88b8 mt76_ethtool_worker +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xaed01fbd mt76_unregister_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xafd9be92 mt76_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb1512fd5 mt76_register_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb42547c1 mt76_get_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb813a5d4 __SCK__tp_func_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xb9e95163 __mt76_mcu_msg_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbb31a266 __SCT__tp_func_mac_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbc28d5df mt76_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xbdd58642 mt76_create_page_pool +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc16ab8a2 mt76_dma_rx_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc2e692a4 mt76_mcu_get_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc37601b8 mt76_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc5ec4d10 mt76_sta_pre_rcu_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6634315 mt76_ac_to_hwq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xc6789f7c __tracepoint_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xce2b0e5b mt76_txq_schedule +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcf187689 mt76_tx_status_skb_done +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xcfc9ac7e mt76_init_sar_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xda1acc7e mt76_update_survey_active_time +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xde90a3d0 mt76_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdf1d6209 mt76_set_stream_caps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xdf4246b3 mt76_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe21273a7 mt76_tx_status_unlock +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe40b66ef mt76_wcid_alloc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe45628cb __SCT__tp_func_dev_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe5aa0855 mt76_alloc_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xe81d593b mt76_tx_status_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xed8b7b0a mt76_rx_aggr_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf1091cf0 mt76_csa_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf84e80fa mt76_set_irq_mask +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xf974d18c __mt76_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xfe559b0a __mt76_mcu_send_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76 0xff9569cf mt76_get_sar_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x020dd40d mt76_connac_mcu_update_arp_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x084e1dd4 mt76_connac2_mac_decode_he_radiotap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x08baa9b1 mt76_connac_mcu_rdd_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x0a25337f mt76_connac_gen_ppe_thresh +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x0b046b8b mt76_connac_sta_state_dp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x0d6304fa mt76_connac2_reverse_frag0_hdr_trans +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x108e04f9 mt76_connac_mcu_get_nic_capability +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x111043d8 mt76_connac_mcu_bss_omac_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x16f92e41 mt76_connac_mcu_cancel_hw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x17153e2c mt76_connac2_load_ram +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x1be7eee5 mt76_connac_pm_wake +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x1cdf9293 mt76_connac_mcu_alloc_wtbl_req +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x2578f3e6 mt76_connac2_mac_fill_txs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x29b54039 mt76_connac_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x2d2ae8f4 mt76_connac_mcu_bss_ext_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x2db400f1 mt76_connac_mcu_uni_add_bss +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x3522a6cd mt76_connac2_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x374900ba mt76_connac_mcu_wtbl_hdr_trans_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x37b1b9e0 mt76_connac_get_eht_phy_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x385e0d06 mt76_connac_mcu_sta_update_hdr_trans +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x3d60a4dd mt76_connac_power_save_sched +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x3efb4ceb mt76_connac_mcu_beacon_loss_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x3f2bed41 mt76_connac_pm_queue_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x3f999bba mt76_connac_mcu_uni_add_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x44033633 mt76_connac_mcu_init_download +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x445183e2 mt76_connac_get_phy_mode_ext +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x45432f16 mt76_connac_init_tx_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x45f10ff2 mt76_connac_mcu_patch_sem_ctrl +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x4854a2d8 mt76_connac_mcu_wtbl_smps_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x487a2a56 mt76_connac2_mcu_fill_message +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x4c6654ab mt76_connac_mcu_start_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x570cf54a mt76_connac_mcu_set_pm +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x67792e55 mt76_connac_get_phy_mode +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x6916af11 mt76_connac_mcu_wtbl_generic_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x74189172 mt76_connac_mcu_set_suspend_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x76c3881d mt76_connac_mcu_set_vif_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x774cfe0c mt76_connac_mcu_sched_scan_enable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x79b8bbb7 mt76_connac2_mac_tx_rate_val +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x83056d69 mt76_connac_mcu_set_rts_thresh +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x85b3ab13 mt76_connac_mcu_set_mac_enable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x86b98492 mt76_connac_mcu_bss_basic_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x88388992 mt76_connac_get_he_phy_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x8bca65a1 mt76_connac_txp_skb_unmap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x8be21a05 mt76_connac_free_pending_tx_skbs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x8f80105e mt76_connac_mcu_add_nested_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x908ca40c mt76_connac_wowlan_support +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x911ee295 mt76_connac_mcu_set_channel_domain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x92e78b2a mt76_connac_mcu_sta_wed_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x94e5abff mt76_connac_mcu_set_rate_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x95776bbf mt76_connac_mcu_wtbl_update_hdr_trans +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0x980f62ef mt76_connac_mcu_chip_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xa40d2d10 mt76_connac_mcu_set_deep_sleep +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xa5b5bc5c mt76_connac_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xae505f6f mt76_connac_mcu_wtbl_ht_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xaea1bc68 mt76_connac2_mac_fill_rx_rate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xaf6eaca3 mt76_connac_mcu_set_p2p_oppps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xb1a23350 mt76_connac2_load_patch +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xb3d57e9b mt76_connac_mcu_coredump_event +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xba5323b3 mt76_connac_mcu_start_patch +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xc7f7d131 mt76_connac_mcu_sta_basic_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xcb514bc7 mt76_connac_pm_dequeue_skbs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xd9d076df mt76_connac_mcu_reg_rr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xddefc334 mt76_connac_mcu_wtbl_ba_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xdef70314 mt76_connac_mcu_sta_ba_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe0286141 mt76_connac_mcu_sta_tlv +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe06ec3ba mt76_connac_mcu_uni_set_chctx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe23f916d mt76_connac_mcu_add_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe7c0727c __mt76_connac_mcu_alloc_sta_req +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe83ffad7 mt76_connac_mcu_sta_uapsd +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xe8b6fa13 mt76_connac_mcu_hw_scan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xeb88a200 mt76_connac_mcu_reg_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xec370b96 mt76_connac_mcu_update_gtk_rekey +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xeda7e070 mt76_connac_mcu_sched_scan_req +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xf47d28be mt76_connac2_mac_add_txs_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xf47e9b62 mt76_connac_mcu_sta_ba +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xf5a40f84 mt76_connac_mcu_set_hif_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xfac44fc1 mt76_connac_write_hw_txp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-connac-lib 0xfbe89098 mt76_connac_mcu_sta_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x00b0639c mt76s_alloc_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x0c58f71c mt76s_txqs_empty +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x1205fb7f mt76s_read_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x14a35092 mt76s_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x2757b203 mt76s_alloc_rx_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x505cf157 mt76s_read_pcr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x82dce7c1 mt76s_rd_rp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0x8e7edeac mt76s_txrx_worker +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xa043e6b8 mt76s_wr_rp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xa5ed82ab mt76s_rr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xa60a2804 mt76s_hw_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xae8f228e mt76s_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xb7c8bc19 mt76s_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xcefb3cd7 mt76s_write_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xe7afd2c7 mt76s_sdio_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-sdio 0xe929cfcd mt76s_rmw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x2a197f37 mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x3bad441e mt76u_resume_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x455c1a60 __mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x4b4a1e31 mt76u_stop_rx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x640020e9 mt76u_single_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x6c3099df mt76u_stop_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x7d2bde8f __mt76u_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x88b269ef ___mt76u_rr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x908f5b68 mt76u_alloc_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0x956abe6c mt76u_read_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xa6f2b07b mt76u_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xbe066599 ___mt76u_wr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xe95a6e46 mt76u_queues_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76-usb 0xf4f9eb97 mt76u_alloc_mcu_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x05c65f7b mt7615_unregister_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x15ac8045 mt7615_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x187459dd mt7615_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x2b4d75bb mt7615_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x30b0c9b3 mt7622_trigger_hif_int +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x3239f680 mt7615_reg_map +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x4b770c54 mt7615_led_set_brightness +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x61ce5dff mt7615_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x65f958ca mt7615_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x6a99db8e mt7615_mac_set_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x6bc6a8b1 mt7615_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x71403269 mt7615_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x74de8c7b mt7615_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x775a52c7 mt7615_register_ext_phy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8901adb6 mt7615_mac_enable_rtscts +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8ad8c06f mt7615_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x8c99cd12 mt7615_wait_for_mcu_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0x93462133 mt7615_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa3ec0af7 mt7615_mcu_exit +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xa8394a8c mt7615_tx_token_put +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xaf2b682c mt7615_led_set_blink +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xcc0f8d63 mt7615_rx_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd06f2d9c __mt7663_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd409f880 mt7615_mcu_fill_msg +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xd9dd8911 mt7615_mcu_restart +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xdbb1b3ce mt7615_mcu_parse_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe679ca4c mt7615_thermal_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xe81e2d93 mt7615_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xf222ddd1 mt7615_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615-common 0xfe1a782e mt7615_init_work +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7615e 0x2b447e8a mt7615_dma_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7663-usb-sdio-common 0x1506ffca mt7663_usb_sdio_reg_map +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7663-usb-sdio-common 0x19a21039 mt7663_usb_sdio_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7663-usb-sdio-common 0x3dc8e820 mt7663_usb_sdio_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7663-usb-sdio-common 0xecc549df mt7663_usb_sdio_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7615/mt7663-usb-sdio-common 0xecc9e619 mt7663_usb_sdio_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x0e6d9bd7 mt76x0_init_hardware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x52c942ad mt76x0_chip_onoff +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x97c86b8d mt76x0_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0x99f2c3fd mt76x0_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xb38379fb mt76x0_phy_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xd9654344 mt76x0_set_sar_specs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x0/mt76x0-common 0xefe45b6f mt76x0_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x00747202 mt76x02_phy_set_band +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x09295f2d mt76x02_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x0d53b243 mt76x02_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1b8fb4e2 mt76x02_ext_pa_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1eeb557c mt76x02_mcu_parse_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x1f19373d mt76x02_config_mac_addr_list +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x22b2be75 mt76x02_init_debugfs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x23c707c1 mt76x02_init_agc_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x24de928b mt76x02_mcu_function_select +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x35071f4d mt76x02_phy_set_rxpath +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3c890da2 mt76x02_update_beacon_iter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x3c9cae12 mt76x02_remove_hdr_pad +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x40233fdc mt76x02_mcu_calibrate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4042ab24 mt76x02_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x45380f45 mt76x02_set_ethtool_fwver +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x458ce3fe mt76x02_phy_set_txdac +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x48708808 mt76x02_phy_dfs_adjust_agc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x48d3f073 mt76x02_mcu_set_radio_state +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4945100f mt76x02_mac_cc_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4c4e0833 mt76x02_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4de5468c mt76x02_get_efuse_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4e8a6154 mt76x02_enqueue_buffered_bc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x4ea1191b mt76x02_set_coverage_class +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x56721631 mt76x02_sta_rate_tbl_update +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x57c9b2c3 mt76x02_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x59c2510b mt76x02_init_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5a66a0bf mt76x02_resync_beacon_timer +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5aa0549b mt76x02_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x5bd84fd5 mt76x02_rates +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x62ade36b mt76x02_rx_poll_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6c522b7f mt76x02_mac_reset_counters +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x6e8e9307 mt76x02_dma_disable +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x75fef85d mt76x02_add_rate_power_offset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8092d249 mt76x02_mac_set_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x80a8417f mt76x02_mac_shared_key_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x854bce3e mt76x02_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x85bda172 mt76x02_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x862ce57a mt76x02_phy_adjust_vga_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x8e25e792 mt76x02_phy_set_bw +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x90eb5f0c mt76x02_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91167569 mt76x02_mcu_cleanup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x916f4d76 mt76x02_tx_set_txpwr_auto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x91d5b9ee mt76x02_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x93c479bc mt76x02_limit_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0x957510a3 mt76x02_set_tx_ackto +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa0120277 mt76x02_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa1e13cfa mt76x02_get_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xa22e7812 mt76x02_mcu_msg_send +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xaae79e22 mt76x02_edcca_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xac23666d mt76x02_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xad5d3ba8 mt76x02_get_max_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb0ae0a7e mt76x02_dma_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb2c89679 mt76x02_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xb8737958 mt76x02_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbc96d291 mt76x02_mac_wcid_setup +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xbd00c24d mt76x02_sta_ps +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xcc7c0e93 mt76x02_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xce703e6c mt76x02_eeprom_parse_hw_cap +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd158b6c8 mt76x02_mac_write_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd24f1249 mt76x02_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd4d22bcd mt76x02_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd62597a2 mt76x02_mac_setaddr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xd76149c0 mt76x02e_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xdbee59ea mt76x02_get_lna_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xde8685cc mt76x02_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe51d1a6c mt76x02_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xe809b481 mt76x02_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xee8a9372 mt76x02_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xefb21e76 mt76x02_eeprom_copy +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xfdf6be06 mt76x02_dfs_init_params +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-lib 0xff54b3ea mt76x02_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x38155234 mt76x02u_mcu_fw_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x70c5e915 mt76x02u_exit_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9d25ad77 mt76x02u_init_mcu +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0x9dff687e mt76x02u_mcu_fw_send_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xad6c56b4 mt76x02u_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xb4532911 mt76x02u_mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xd6ad8af4 mt76x02u_init_beacon_config +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x02-usb 0xd74256c3 mt76x02u_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x2d877b2e mt76x2_mcu_load_cr +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x3fa07f1e mt76x2_phy_tssi_compensate +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4ab96ace mt76x2_reset_wlan +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x4fefd444 mt76x2_phy_set_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x52a06ba0 mt76x2_get_temp_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x53708f74 mt76x2_phy_update_channel_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x75e3e6aa mt76x2_mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x7afe2829 mt76x2_mcu_tssi_comp +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0x9f2aeb39 mt76x2_set_sar_specs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xcc06099d mt76x2_mcu_set_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xcea87496 mt76x2_get_power_info +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xd5e481b6 mt76_write_mac_initvals +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xddd0f120 mt76x2_read_rx_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xe69cefa5 mt76x2_init_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xedaf2a83 mt76x2_configure_tx_delay +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xf35621e9 mt76x2_apply_gain_adj +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfb5cda5e mt76x2_phy_set_txpower_regs +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfb88edd9 mt76x2_eeprom_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfbd260ea mt76x2_mcu_init_gain +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt76x2/mt76x2-common 0xfe378bba mt76x2_get_rate_power +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x00a50958 mt7921_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x029bb343 mt7921_mac_sta_assoc +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x15181584 mt7921_register_device +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x15d30a4c mt7921_mcu_set_eeprom +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x268f7ab9 mt7921_usb_sdio_tx_prepare_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x275aebc6 mt7921_queue_rx_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x2bec479f mt7921_mcu_drv_pmctrl +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x356c9f2b mt7921_get_mac80211_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x45fa09f3 mt7921_mcu_parse_response +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x4836429e mt7921_txwi_free +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x4aeeb14e mt7921_usb_sdio_tx_status_data +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x6f671a48 __mt7921_start +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x6fd6cfc2 mt7921_mac_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x7867ac27 mt7921_mcu_fw_pmctrl +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x78fe841c mt7921_mac_sta_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x7f10bccc mt7921_rx_check +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0x8c98b582 mt7921_mac_init +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xb4ec2ffb mt7921_usb_sdio_tx_complete_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xd7d4e2c0 mt7921_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xe0c012ab mt7921_update_channel +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xf5fb997c mt7921_reset +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xf6e2960b mt7921_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/mediatek/mt76/mt7921/mt7921-common 0xfa4a305e mt7921_mac_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x07889827 qtnf_core_attach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x31fab83c qtnf_chipid_to_string +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x3778494f qtnf_core_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0x9bfb5d6a qtnf_get_debugfs_dir +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xa6e1c328 qtnf_classify_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xbeab8454 qtnf_trans_handle_rx_ctl_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/quantenna/qtnfmac/qtnfmac 0xcb229ed4 qtnf_wake_all_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x056bddaa rt2800_wait_wpdma_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1747844c rt2800_write_tx_data +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x1e720be2 rt2800_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x213a4a12 rt2800_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x345176cb rt2800_mcu_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x3589c2f2 rt2800_link_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x398d25e2 rt2800_check_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x39d5364b rt2800_txdone_nostatus +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4208186a rt2800_wait_csr_ready +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x4287bef6 rt2800_get_key_seq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x59b67871 rt2800_config_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x63914729 rt2800_reset_tuner +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6864c505 rt2800_ampdu_action +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6b7c19d1 rt2800_config_intf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x6b8b9f9b rt2800_process_rxwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x74ba2552 rt2800_get_survey +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x828a274a rt2800_gain_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x84430a84 rt2800_load_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x8650ff16 rt2800_pre_reset_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x88059f78 rt2800_txstatus_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x89d13789 rt2800_link_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9276f086 rt2800_read_eeprom_efuse +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x98a7f087 rt2800_efuse_detect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0x9b7e9be7 rt2800_clear_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xad7ca770 rt2800_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb36987da rt2800_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xb3b02eef rt2800_get_tsf +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xba39171c rt2800_config_shared_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xbf867ab9 rt2800_set_rts_threshold +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc1bfd7ec rt2800_get_txwi_rxwi_size +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc332747e rt2800_config_ant +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc6669910 rt2800_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xc6bfd9ba rt2800_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd25040ef rt2800_txdone_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xd43545ee rt2800_config_erp +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe113ff8f rt2800_sta_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe379d4d3 rt2800_config_pairwise_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe8d40df8 rt2800_vco_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xe9083b76 rt2800_disable_wpdma +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xee267b61 rt2800_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf323b6f2 rt2800_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf3b476fa rt2800_sta_add +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf46d916d rt2800_write_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800lib 0xf60e5d01 rt2800_txstatus_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x16095ed3 rt2800mmio_fill_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x1bbabc04 rt2800mmio_get_txwi +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x2587197e rt2800mmio_enable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x32ac3645 rt2800mmio_rxdone_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x3d741c87 rt2800mmio_pretbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x46e0a8bd rt2800mmio_get_entry_state +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5028bbb2 rt2800mmio_tbtt_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x5fa4db64 rt2800mmio_interrupt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x72f690f0 rt2800mmio_toggle_irq +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x7e1a4cdd rt2800mmio_write_tx_desc +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x97e3c029 rt2800mmio_autowake_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x999421c1 rt2800mmio_probe_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0x9f3c8921 rt2800mmio_txstatus_tasklet +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xa446e900 rt2800mmio_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xa9b4223b rt2800mmio_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xaed8eeab rt2800mmio_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xb8095821 rt2800mmio_queue_init +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xc84d3748 rt2800mmio_get_dma_done +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xd8c29a73 rt2800mmio_init_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe0622fa5 rt2800mmio_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xe72164d9 rt2800mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2800mmio 0xfac300fa rt2800mmio_init_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x089da263 rt2x00lib_probe_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x09bc0dea rt2x00queue_for_each_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0aecfda2 rt2x00mac_get_ringparam +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x0c653e65 rt2x00queue_pause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x10be1550 rt2x00lib_dmastart +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x14ce789e rt2x00mac_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x14eabacc rt2x00lib_beacondone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x197ce6ce rt2x00mac_add_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x1d8c5bed rt2x00mac_sw_scan_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x23d20fe1 rt2x00mac_sw_scan_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x26a66d85 rt2x00queue_start_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x27bf262b rt2x00queue_map_txskb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x34799dac rt2x00lib_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x35905aa6 rt2x00mac_configure_filter +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x35987743 rt2x00lib_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x3ff359df rt2x00mac_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x41b8d10b rt2x00lib_txdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4984a661 rt2x00lib_get_bssidx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x4e190d58 rt2x00lib_txdone_noinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x55184380 rt2x00mac_get_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5bd65bce rt2x00queue_flush_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x5cd85532 rt2x00mac_stop +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x62867479 rt2x00lib_txdone_nomatch +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x65049aea rt2x00queue_stop_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6dbfa0d7 rt2x00lib_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x6ffbadd2 rt2x00lib_pretbtt +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7484e3ee rt2x00mac_tx_frames_pending +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x758d03e8 rt2x00lib_set_mac_address +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7e4a578c rt2x00queue_stop_queues +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x7fa76eaa rt2x00mac_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x8272f95b rt2x00mac_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0x9cc135e6 rt2x00mac_start +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xa6399035 rt2x00mac_rfkill_poll +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xab3fe042 rt2x00queue_unpause_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xabd011cd rt2x00mac_set_tim +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xbb8ba0b5 rt2x00lib_dmadone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd0705d53 rt2x00mac_set_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd691751a rt2x00mac_conf_tx +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xd99847db rt2x00mac_reconfig_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xdf1115cf rt2x00queue_get_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xdf7a4152 rt2x00mac_get_antenna +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe108570c rt2x00queue_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe17282d7 rt2x00queue_start_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xe3354dab rt2x00mac_remove_interface +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf0170c91 rt2x00mac_bss_info_changed +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xf16145cf rt2x00queue_unmap_skb +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00lib 0xfd71d44d rt2x00lib_remove_dev +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x1bca2dd4 rt2x00mmio_rxdone +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x2f7f497d rt2x00mmio_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0x96eeacbe rt2x00mmio_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xc6d8b9bc rt2x00mmio_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00mmio 0xef5d8563 rt2x00mmio_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x30d2fce1 rt2x00pci_pm_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x4c526520 rt2x00pci_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00pci 0x60d1eaff rt2x00pci_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x080f7646 rt2x00usb_uninitialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x1973c221 rt2x00usb_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x2c046fdc rt2x00usb_vendor_request_buff +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x412efec0 rt2x00usb_register_read_async +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x538406b8 rt2x00usb_flush_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x62d146f5 rt2x00usb_vendor_req_buff_lock +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x6510c0dc rt2x00usb_disable_radio +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x6d116c0d rt2x00usb_kick_queue +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x79cb274f rt2x00usb_watchdog +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x81c8e28e rt2x00usb_clear_entry +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0x81d9f31a rt2x00usb_resume +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xa20241e6 rt2x00usb_vendor_request +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xd445c6b4 rt2x00usb_initialize +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xdcafdd9d rt2x00usb_disconnect +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xf6a38d20 rt2x00usb_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ralink/rt2x00/rt2x00usb 0xfbefd206 rt2x00usb_regbusy_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0x069a90b8 dm_restorepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xbee4c225 rtl92c_set_p2p_ps_offload_cmd +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xf243a240 dm_savepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8192c/rtl8192c-common 0xfeb79867 dm_writepowerindex +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x05320bd7 rtl8723_dm_init_dynamic_txpower +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x254f18c0 rtl8723_download_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x25a7b740 rtl8723_dm_init_edca_turbo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x28d21eb4 rtl8723_phy_pi_mode_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x39363548 rtl8723_fw_free_to_go +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x3f5bf9c0 rtl8723_phy_calculate_bit_shift +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x506dc8fb rtl8723_save_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x5222dd6f rtl8723_phy_rf_serial_read +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x56527d87 rtl8723ae_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6c9d6e52 rtl8723_phy_path_a_standby +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x6ffcfecf rtl8723_write_fw +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x7ec21b98 rtl8723_phy_path_a_fill_iqk_matrix +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8498b6cd rtl8723_phy_path_adda_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8baf8913 rtl8723_phy_set_sw_chnl_cmdarray +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x8f5b1c0d rtl8723_phy_reload_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x97bcb302 rtl8723_enable_fw_download +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x98a60291 rtl8723_phy_reload_adda_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9b9ce52e rtl8723_phy_txpwr_idx_to_dbm +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0x9d725383 rtl8723_phy_save_mac_registers +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xbd72ded8 rtl8723be_firmware_selfreset +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xd34147cf rtl8723_phy_init_bb_rf_reg_def +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xe7eb5206 rtl8723_cmd_send_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xef122292 rtl8723_phy_set_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf1af3fb6 rtl8723_phy_mac_setting_calibration +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xf434437c rtl8723_dm_init_dynamic_bb_powersaving +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xfa07bdae rtl8723_phy_query_bb_reg +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtl8723com/rtl8723-common 0xfc26acf6 rtl8723_phy_rf_serial_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x07c569c5 rtl_ips_nic_on +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x11294734 rtl_ops +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x16e29f24 rtl_init_rx_config +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x194d732b rtl_get_hwinfo +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x1b3012af rtl_is_special_data +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x214ab2e6 rtl_get_hal_edca_param +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x26afc501 rtl_recognize_peer +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2759f7c7 rtl_fw_page_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x27abb01c rtl_beacon_statistic +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2921a4d4 rtl_btc_status_false +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2d32cdfc rtl_lps_change_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x2e5382f9 rtl_fill_dummy +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x4e94cd48 rtl_global_var +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5dbc7f30 rtl_tx_ackqueue +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x5e4e31df rtl_deinit_rfkill +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x60709e7a rtl_fw_block_write +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6bf9379a rtl_efuse_ops_init +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x6db3ba37 rtl_update_beacon_work_callback +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x7878bd1c rtl_lps_leave +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x8058ed8f rtl_deinit_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x90ce494d rtl_tx_report_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0x97e05663 rtl_tid_to_ac +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xa679c256 rtl_tx_mgmt_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xadeee651 read_efuse_byte +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xb921633e rtl_lps_enter +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xbfef4328 rtl_init_core +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xc9264858 rtl_set_tx_report +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xcfe033d5 rtl_action_proc +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xdd65b22a rtl_p2p_info +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xe8167b15 rtl_deinit_deferred_work +EXPORT_SYMBOL_GPL drivers/net/wireless/realtek/rtlwifi/rtlwifi 0xfa864eaa rtl_swlps_beacon +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x0f5c3ce9 rsi_zone_enabled +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x1d692eff rsi_read_pkt +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x1f043509 rsi_91x_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0x6596910b rsi_mac80211_detach +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xb8edc015 rsi_hal_device_init +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xcd173710 rsi_dbg +EXPORT_SYMBOL_GPL drivers/net/wireless/rsi/rsi_91x 0xdd9e89aa rsi_91x_deinit +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x3d4c7fca cw1200_irq_handler +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x713521c5 cw1200_core_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x9ea58dff cw1200_core_release +EXPORT_SYMBOL_GPL drivers/net/wireless/st/cw1200/cw1200_core 0x9ee593d1 cw1200_can_suspend +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0x9c826857 wl1251_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xabcaafcf wl1251_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wl1251/wl1251 0xce76b30f wl1251_init_ieee80211 +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x06d3b27e wl12xx_debug_level +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x09cb4867 wlcore_remove +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x131a4425 wlcore_probe +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x138c0ea6 wlcore_disable_interrupts_nosync +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x1b3ae7da wl1271_debugfs_update_stats +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x20351125 wlcore_get_native_channel_type +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x2d65a9e8 wlcore_enable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3793f7d9 wlcore_scan_sched_scan_results +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x3ca2dca2 wlcore_cmd_wait_for_event_or_timeout +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x43076729 wlcore_event_rssi_trigger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x44e19e22 wl1271_acx_pm_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x46698730 wlcore_event_roc_complete +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4956a609 wl1271_cmd_test +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4e7c77b2 wlcore_cmd_generic_cfg +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x4ea3f954 wl1271_cmd_send +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x512c19ca wl1271_acx_sleep_auth +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x594b3b7b wlcore_free_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x5ecd2a9e wl1271_cmd_data_path +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x641f0002 wlcore_synchronize_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x6f180697 wlcore_translate_addr +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x7211a8ed wlcore_event_soft_gemini_sense +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85498cd1 wl1271_format_buffer +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x85982782 wlcore_event_beacon_loss +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x93645f9f wlcore_boot_run_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x973e8bf9 wlcore_event_fw_logger +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0x9d47f3a6 wlcore_boot_upload_firmware +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xa9782091 wlcore_event_channel_switch +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb1c1bd89 wl1271_acx_init_mem_config +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb205e2be wlcore_event_inactive_sta +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb2eba89b wl12xx_cmd_build_probe_req +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xb5ccdea4 wlcore_boot_upload_nvs +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc297df4c wlcore_scan_sched_scan_ssid_list +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc2e02f60 wl1271_cmd_configure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc5cdac1b wlcore_event_sched_scan_completed +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc85bcbf4 wlcore_event_dummy_packet +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xc92290c3 wlcore_set_scan_chan_params +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xccf77ff2 wl1271_tx_min_rate_get +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xcfea9026 wl1271_tx_flush +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xda7739d8 wlcore_set_key +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe2815f5d wlcore_event_ba_rx_constraint +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xe53b8833 wlcore_disable_interrupts +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf301d723 wlcore_set_partition +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf331bf34 wl1271_acx_set_ht_capabilities +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf3937a0d wlcore_event_max_tx_failure +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xf9960eaf wlcore_alloc_hw +EXPORT_SYMBOL_GPL drivers/net/wireless/ti/wlcore/wlcore 0xfd2c9f61 wl12xx_acx_mem_cfg +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x29dadda6 wwan_unregister_ops +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x3d9bbf75 wwan_port_txon +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x4dff61e5 wwan_port_txoff +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x526bcf2a wwan_port_get_drvdata +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x563dc034 wwan_register_ops +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x86b3761e wwan_port_rx +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0x934da2d1 wwan_create_port +EXPORT_SYMBOL_GPL drivers/net/wwan/wwan 0xb74c31cd wwan_remove_port +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x218dfad3 nfc_mei_phy_alloc +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0x7e52e0aa mei_phy_ops +EXPORT_SYMBOL_GPL drivers/nfc/mei_phy 0xd83c61d4 nfc_mei_phy_free +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x653fb8ca nfcmrvl_nci_unregister_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x70d1a361 nfcmrvl_nci_recv_frame +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0x8dca4711 nfcmrvl_nci_register_dev +EXPORT_SYMBOL_GPL drivers/nfc/nfcmrvl/nfcmrvl 0xabcaac3e nfcmrvl_parse_dt +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x259e8a1c pn533_finalize_setup +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x3b83d275 pn533_rx_frame_is_cmd_response +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x5e25d94e pn53x_unregister_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x63d63661 pn53x_common_clean +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0x6cbe40e5 pn53x_register_nfc +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xcf5b9484 pn53x_common_init +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xdecfd339 pn533_rx_frame_is_ack +EXPORT_SYMBOL_GPL drivers/nfc/pn533/pn533 0xeda97d20 pn532_i2c_nfc_alloc +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x2edf4e9d st_nci_discover_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x64a7a089 st_nci_hci_cmd_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0x66d15d87 st_nci_enable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xaad34d72 st_nci_disable_se +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xb26af8c9 st_nci_hci_event_received +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xb29f84e2 st_nci_hci_load_session +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xc953599b st_nci_probe +EXPORT_SYMBOL_GPL drivers/nfc/st-nci/st-nci 0xf02c3719 st_nci_remove +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x5b4b4a31 st95hf_spi_send +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0x9a9c31aa st95hf_spi_recv_response +EXPORT_SYMBOL_GPL drivers/nfc/st95hf/st95hf 0xfba4ed6f st95hf_spi_recv_echo_res +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x0862001f ntb_transport_tx_free_entry +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x30934216 ntb_transport_max_size +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x32537aca ntb_transport_link_query +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x3d54dbfc ntb_transport_tx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x436098aa ntb_transport_link_down +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x81fa3327 ntb_transport_unregister_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x82e6c13d ntb_transport_qp_num +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0x9c992c8f ntb_transport_link_up +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xc270dc24 ntb_transport_free_queue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xc37d9036 ntb_transport_rx_remove +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xc82cdfc8 ntb_transport_register_client +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xd40e7a02 ntb_transport_rx_enqueue +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xf55d6313 ntb_transport_register_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xf9eb813f ntb_transport_unregister_client_dev +EXPORT_SYMBOL_GPL drivers/ntb/ntb_transport 0xfc626e61 ntb_transport_create_queue +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xac44ecfa virtio_pmem_host_ack +EXPORT_SYMBOL_GPL drivers/nvdimm/nd_virtio 0xd51e2959 async_pmem_flush +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x0d1e88c7 nvmf_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x0df5fc15 nvmf_reg_read64 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x186080e3 nvmf_connect_io_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x1e328d22 nvmf_set_io_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x2a9accf7 nvmf_map_queues +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x31cb7e07 nvmf_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x48dadfa5 nvmf_should_reconnect +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0x5e41f0ec nvmf_get_address +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xbaa9c85f nvmf_connect_admin_queue +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xc81d608d nvmf_ip_options_match +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xd0a1f8e7 nvmf_reg_read32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xdd8af66e nvmf_free_options +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fabrics 0xff07afba nvmf_reg_write32 +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x0d12e564 nvme_fc_register_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x3884f8b8 nvme_fc_unregister_localport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x3e33ac54 nvme_fc_rescan_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x5fc82a49 nvme_fc_register_localport +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0x8a9cf5a7 nvme_fc_set_remoteport_devloss +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xbb0e18a6 nvme_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xcc8a2d78 nvme_fc_io_getuuid +EXPORT_SYMBOL_GPL drivers/nvme/host/nvme-fc 0xfca9dc99 nvme_fc_unregister_remoteport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x011d4e85 nvmet_req_alloc_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x0dbb02e0 nvmet_req_complete +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x325d1744 nvmet_sq_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x3e0ef07a nvmet_wq +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x6dbef3a2 nvmet_register_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0x85d96d18 nvmet_req_free_sgls +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xa0aef642 nvmet_sq_destroy +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xb051a782 nvmet_unregister_transport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xb48a08c4 nvmet_check_transfer_len +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe3acc700 nvmet_req_uninit +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xe5046b34 nvmet_req_init +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet 0xefda3154 nvmet_ctrl_fatal_error +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x0b98123d nvmet_fc_rcv_ls_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x19a35c78 nvmet_fc_register_targetport +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x4a013682 nvmet_fc_invalidate_host +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x6ff62dab nvmet_fc_rcv_fcp_abort +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x7bfa9497 nvmet_fc_rcv_fcp_req +EXPORT_SYMBOL_GPL drivers/nvme/target/nvmet-fc 0x9ef76d99 nvmet_fc_unregister_targetport +EXPORT_SYMBOL_GPL drivers/pci/controller/pci-hyperv-intf 0x1591b2c6 hyperv_read_cfg_blk +EXPORT_SYMBOL_GPL drivers/pci/controller/pci-hyperv-intf 0x221394ae hyperv_reg_block_invalidate +EXPORT_SYMBOL_GPL drivers/pci/controller/pci-hyperv-intf 0xe5f73406 hyperv_write_cfg_blk +EXPORT_SYMBOL_GPL drivers/pci/controller/pci-hyperv-intf 0xfb921e00 hvpci_block_ops +EXPORT_SYMBOL_GPL drivers/pci/switch/switchtec 0x8045e953 switchtec_class +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x0eec86b5 mcp23s08_probe_one +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0x9978a9f8 mcp23x17_regmap +EXPORT_SYMBOL_GPL drivers/pinctrl/pinctrl-mcp23s08 0xa9030d17 mcp23x08_regmap +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0x10ef83b8 cros_ec_sensorhub_register_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros-ec-sensorhub 0xda8b4e25 cros_ec_sensorhub_unregister_push_data +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros_usbpd_notify 0x6b1be500 cros_usbpd_unregister_notify +EXPORT_SYMBOL_GPL drivers/platform/chrome/cros_usbpd_notify 0x8bda2df3 cros_usbpd_register_notify +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x112134ec wilco_ec_set_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x244a94d8 wilco_ec_mailbox +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x24eef51f wilco_ec_get_byte_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x75bf4d33 wilco_ec_get_property +EXPORT_SYMBOL_GPL drivers/platform/chrome/wilco_ec/wilco_ec 0x8b8ae425 wilco_ec_set_byte_property +EXPORT_SYMBOL_GPL drivers/platform/x86/amd/amd_hsmp 0xdfd927ba hsmp_send_message +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x261fe964 asus_wmi_register_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x57c46ceb asus_wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/asus-wmi 0x717412aa asus_wmi_unregister_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dcdbas 0xd9146b52 dcdbas_smi_free +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dcdbas 0xf1a06655 dcdbas_smi_alloc +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-rbtn 0x51552fca dell_rbtn_notifier_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-rbtn 0xa060fe7d dell_rbtn_notifier_register +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0x174ac8e0 dell_smbios_register_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0x1b0b3141 dell_laptop_register_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0x45170471 dell_smbios_call +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0x7fd2ce06 dell_smbios_find_token +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0xb9400dbf dell_laptop_call_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0xc2871e79 dell_smbios_error +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0xd6c6b12d dell_laptop_unregister_notifier +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0xdcf41c5f dell_smbios_call_filter +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-smbios 0xf4a4155f dell_smbios_unregister_device +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-wmi 0x9d4b709e dell_privacy_has_mic_mute +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-wmi-descriptor 0x8eef8246 dell_wmi_get_hotfix +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-wmi-descriptor 0x9559234e dell_wmi_get_interface_version +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-wmi-descriptor 0xa167d064 dell_wmi_get_size +EXPORT_SYMBOL_GPL drivers/platform/x86/dell/dell-wmi-descriptor 0xa3dcfa65 dell_wmi_get_descriptor_valid +EXPORT_SYMBOL_GPL drivers/platform/x86/firmware_attributes_class 0xdf8ccb6f fw_attributes_class_get +EXPORT_SYMBOL_GPL drivers/platform/x86/firmware_attributes_class 0xe609be46 fw_attributes_class_put +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/intel_punit_ipc 0x8ee9455e intel_punit_ipc_command +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0x06f7821f isst_if_mbox_cmd_set_req +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0x58a8261f isst_if_mbox_cmd_invalid +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0x75385fb0 isst_if_get_pci_dev +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0x861369f8 isst_resume_common +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0x9a5c38f2 isst_store_cmd +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0xaac59fc4 isst_if_cdev_register +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/speed_select_if/isst_if_common 0xe18f42a5 isst_if_cdev_unregister +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x1c7565c2 telemetry_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x35db93a6 telemetry_get_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x5847f501 telemetry_clear_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x5bb8e91a telemetry_raw_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x665cd407 telemetry_read_eventlog +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x6b892524 telemetry_set_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x82bb2dbe telemetry_get_evtname +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x90551504 telemetry_add_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0x9deec96c telemetry_set_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xb75bd1e6 telemetry_raw_read_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xbb9a2726 telemetry_reset_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xd14ffffc telemetry_update_events +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xe1eb4be1 telemetry_set_trace_verbosity +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xe8847f53 telemetry_get_sampling_period +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xf00771b0 telemetry_get_eventconfig +EXPORT_SYMBOL_GPL drivers/platform/x86/intel/telemetry/intel_telemetry_core 0xf9d5ad60 telemetry_get_pltdata +EXPORT_SYMBOL_GPL drivers/platform/x86/intel_ips 0x46809fa9 ips_link_to_i915_driver +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x232b5238 mxm_wmi_supported +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0x61cdf799 mxm_wmi_call_mxds +EXPORT_SYMBOL_GPL drivers/platform/x86/mxm-wmi 0xe26032eb mxm_wmi_call_mxmx +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x065b4695 wmi_get_acpi_device_uid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x17b0f8ca wmi_get_event_data +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x31b9a032 wmidev_block_query +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x6068bedf wmi_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x76ae31fd wmi_remove_notify_handler +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0x7b552965 wmidev_evaluate_method +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xaba842fe wmi_query_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xb173a6cf wmidev_instance_count +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xc9d4d6d1 wmi_has_guid +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd5bf6c16 wmi_instance_count +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xd7752b86 wmi_set_block +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xddf222a2 set_required_buffer_size +EXPORT_SYMBOL_GPL drivers/platform/x86/wmi 0xf18bdd75 wmi_install_notify_handler +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x225674c4 bq27xxx_battery_teardown +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0x83208768 bq27xxx_battery_setup +EXPORT_SYMBOL_GPL drivers/power/supply/bq27xxx_battery 0xa613604d bq27xxx_battery_update +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x13750b48 pcf50633_mbc_get_usb_online_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0x7e1e67ad pcf50633_mbc_get_status +EXPORT_SYMBOL_GPL drivers/power/supply/pcf50633-charger 0xbfe24fbe pcf50633_mbc_usb_curlim_set +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x086fdf62 rapl_add_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0x6e0b8e6b rapl_remove_package +EXPORT_SYMBOL_GPL drivers/powercap/intel_rapl_common 0xac4eb329 rapl_find_package_domain +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x44cd4695 mc13xxx_fixed_regulator_set_voltage +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x55f009be mc13xxx_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/mc13xxx-regulator-core 0x8dd5ac69 mc13xxx_fixed_regulator_ops +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x074ceda9 wm8350_isink_set_flash +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3169cee0 wm8350_dcdc_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x3e156b2d wm8350_register_led +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x6ab44130 wm8350_ldo_set_slot +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0x870964ba wm8350_dcdc25_set_mode +EXPORT_SYMBOL_GPL drivers/regulator/wm8350-regulator 0xafae119f wm8350_register_regulator +EXPORT_SYMBOL_GPL drivers/regulator/wm8400-regulator 0x094c3947 wm8400_register_regulator +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x149236da qcom_glink_native_remove +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0x1f2529f0 qcom_glink_native_probe +EXPORT_SYMBOL_GPL drivers/rpmsg/qcom_glink 0xf14f5684 qcom_glink_ssr_notify +EXPORT_SYMBOL_GPL drivers/rtc/rtc-ds1685 0x5ae103a4 ds1685_rtc_poweroff +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x019971a0 cxgbi_get_ep_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x068bc14b cxgbi_sock_closed +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x080a9748 cxgbi_sock_rcv_abort_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x0e6e3569 cxgbi_iscsi_init +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x10a6f252 cxgbi_sock_rcv_peer_close +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1b718327 cxgbi_sock_fail_act_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1b72e287 cxgbi_sock_select_mss +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1bee9dbf cxgbi_device_find_by_netdev_rcu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x1e3cb15f cxgbi_device_portmap_create +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2245a3a5 cxgbi_ep_disconnect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x23322868 cxgbi_hbas_add +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x27d026c5 cxgbi_sock_rcv_wr_ack +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x2fffb77a cxgbi_conn_xmit_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x30d23a16 cxgbi_sock_act_open_req_arp_failure +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x31340814 cxgbi_sock_established +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x331a09cd cxgbi_conn_alloc_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x33ff3f92 cxgbi_sock_skb_entail +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x47286660 cxgbi_hbas_remove +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x518b6ab1 cxgbi_device_find_by_netdev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x55393b39 cxgbi_create_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x625b6de6 cxgbi_device_unregister +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x667fe7cc cxgbi_sock_check_wr_invariants +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x668fa145 cxgbi_conn_pdu_ready +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x739e03b3 cxgbi_bind_conn +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x75e9ae90 cxgbi_device_find_by_lldev +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x76cd5dae cxgbi_set_conn_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7d6b5b64 cxgbi_sock_rcv_close_conn_rpl +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x7fdb6004 cxgbi_device_unregister_all +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8319f739 cxgbi_ddp_set_one_ppod +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x836bd4e9 cxgbi_ep_connect +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x840d9b23 cxgbi_ddp_ppm_setup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x84ba7ffd cxgbi_set_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8590382c cxgbi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x87911569 cxgbi_ep_poll +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0x8bea93d6 cxgbi_device_register +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xa0598e81 cxgbi_parse_pdu_itt +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc2055fc0 cxgbi_device_portmap_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc34c27cd cxgbi_iscsi_cleanup +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xc7f0bd1a cxgbi_get_conn_stats +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd5935b42 cxgbi_conn_init_pdu +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd6c7ec37 cxgbi_conn_tx_open +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd8841005 cxgbi_sock_free_cpl_skbs +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xd9ef1b18 cxgbi_sock_purge_wr_queue +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xe9ac2f51 cxgbi_get_host_param +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xea5f3481 cxgbi_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xec842418 cxgbi_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/cxgbi/libcxgbi 0xef346615 cxgbi_attr_is_visible +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x0aa93019 fcoe_ctlr_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1671e4a5 fcoe_clean_pending_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x17020a9c fcoe_fc_crc +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x181f50ce fcoe_start_io +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x1f095fd0 fcoe_get_wwn +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x376e7a4d fcoe_link_speed_update +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x50355a3d __fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x5f81f948 fcoe_ctlr_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x6b9fe21b fcoe_libfc_config +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8a5b04c9 fcoe_fcf_device_add +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0x8f0ac0b5 fcoe_check_wait_queue +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xbac58840 fcoe_queue_timer +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc39bd331 fcoe_fcf_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc3f30cc0 fcoe_wwn_from_mac +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xc8626680 fcoe_ctlr_device_delete +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd22ec31c fcoe_validate_vport_create +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xd5795ce5 fcoe_get_lesb +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xe1ea0dc3 fcoe_get_paged_crc_eof +EXPORT_SYMBOL_GPL drivers/scsi/fcoe/libfcoe 0xf167cb7a fcoe_wwn_to_str +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x0c372bf8 fdomain_destroy +EXPORT_SYMBOL_GPL drivers/scsi/fdomain 0x5e96daa8 fdomain_create +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x1141307e iscsi_boot_create_target +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x265f95f7 iscsi_boot_create_acpitbl +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2a9a3437 iscsi_boot_destroy_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x2ef32267 iscsi_boot_create_ethernet +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0x6603e3d1 iscsi_boot_create_initiator +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xb8adba2e iscsi_boot_create_kset +EXPORT_SYMBOL_GPL drivers/scsi/iscsi_boot_sysfs 0xcc598f06 iscsi_boot_create_host_kset +EXPORT_SYMBOL_GPL drivers/scsi/libfc/libfc 0x5b5d4b09 fc_seq_els_rsp_send +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x015372b8 iscsi_itt_to_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x12b2ad06 iscsi_switch_str_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x20e7ae12 iscsi_suspend_queue +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x212f9117 iscsi_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x21341215 iscsi_conn_unbind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x240aff70 iscsi_conn_start +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2627b452 iscsi_host_add +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x2ffaed58 iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x31fd1453 iscsi_complete_scsi_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x33a60b58 iscsi_host_get_max_scsi_cmds +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x373b38ab iscsi_verify_itt +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bae6056 iscsi_host_set_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bb27edd iscsi_host_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x3bef2f73 iscsi_pool_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x43c3d11b iscsi_session_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4970542f iscsi_host_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x4993da27 iscsi_requeue_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x52b01819 iscsi_conn_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x57b36a54 iscsi_prep_data_out_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x5b213fc7 iscsi_suspend_rx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x68220f2f iscsi_conn_send_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x6fe60f6f iscsi_session_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x79e40be6 iscsi_get_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x807deb89 iscsi_eh_abort +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8abeb8bf iscsi_conn_stop +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8afcd747 iscsi_session_failure +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x8d303b1b iscsi_pool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x91ae002f iscsi_eh_device_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x921fe854 __iscsi_complete_pdu +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x98523d6e iscsi_update_cmdsn +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0x9ccb8998 iscsi_conn_queue_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xa0f047be iscsi_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xac01dfb5 iscsi_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb0fd03fa iscsi_session_recovery_timedout +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb4a5ded2 iscsi_conn_bind +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xb87879b0 iscsi_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xbf27e7f4 iscsi_conn_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xcfec1572 __iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xd2da76e0 iscsi_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdb1d1aec iscsi_put_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xdcd55d20 iscsi_session_remove +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe6006be7 iscsi_conn_queue_recv +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xe9c5ed09 iscsi_itt_to_ctask +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeab9cbd5 iscsi_conn_get_addr_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xeb7ba25d iscsi_session_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xed629749 iscsi_eh_cmd_timed_out +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf0e255c0 iscsi_host_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf17accf1 iscsi_host_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf582023d iscsi_session_get_param +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xf7f6021c iscsi_suspend_tx +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xfe64a5fb iscsi_eh_session_reset +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi 0xff822f87 iscsi_eh_recover_target +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x092af4dc iscsi_segment_seek_sg +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x0ea7bc1e iscsi_tcp_cleanup_task +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x192a8a55 iscsi_tcp_recv_skb +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x1f0a44ba iscsi_tcp_set_max_r2t +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x21bf4969 iscsi_tcp_dgst_header +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x2e2c584c iscsi_tcp_conn_setup +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x3f4a045b iscsi_segment_init_linear +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x53b85e3c iscsi_tcp_r2tpool_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x83934944 iscsi_tcp_r2tpool_free +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x8d8787b6 iscsi_tcp_conn_teardown +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x92f22893 iscsi_tcp_segment_unmap +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0x96b93043 iscsi_tcp_segment_done +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xd6ec4712 iscsi_tcp_hdr_recv_prep +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xe2db2a80 iscsi_tcp_task_init +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xee2e6034 iscsi_tcp_conn_get_stats +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xf0dfe571 iscsi_tcp_task_xmit +EXPORT_SYMBOL_GPL drivers/scsi/libiscsi_tcp 0xfa3752ff iscsi_tcp_recv_segment_is_hdr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x07b8b7a9 sas_slave_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x0fade8ab sas_bios_param +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x13cac8e7 sas_lu_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x13ce6c69 sas_domain_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2489533d sas_find_attached_phy_id +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x2554b35c sas_target_destroy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x26dd30fc sas_phy_enable +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x38642f66 sas_ssp_task_response +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x39424288 sas_ata_device_link_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4217e140 sas_unregister_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x495ffd6b sas_execute_internal_abort_dev +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x4aa6f10e sas_execute_internal_abort_single +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x58edcaa3 sas_drain_work +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6774a6c1 sas_notify_phy_event +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x684925fe smp_ata_check_ready_type +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x6b69240b sas_task_abort +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x773f12a9 sas_queuecommand +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x7960a3cd sas_register_ha +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x84cdfefe sas_eh_device_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8a6a0138 sas_eh_target_reset_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x8e5aa24b sas_query_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0x9c4a2412 sas_phy_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa1d29519 sas_abort_task_set +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xa9512618 sas_target_alloc +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xb7fb4672 sas_eh_abort_handler +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbcb99b61 sas_get_local_phy +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xbf3044b6 sas_ata_schedule_reset +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xc081c01f sas_abort_task +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xd1e2dab2 sas_request_addr +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdd75dacc sas_notify_port_event +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdef2d139 sas_change_queue_depth +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xdf014622 sas_slave_configure +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xe2852aaf sas_ioctl +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xef20387c dev_attr_phy_event_threshold +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf06626ef sas_clear_task_set +EXPORT_SYMBOL_GPL drivers/scsi/libsas/libsas 0xf986b7b3 sas_execute_ata_cmd +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_fc 0xeccf8c96 fc_eh_should_retry_cmd +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x036882a1 iscsi_unblock_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0675562a iscsi_add_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x07d7b553 iscsi_create_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x0825101a iscsi_get_port_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x08730c3b __SCK__tp_func_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x105eff74 iscsi_offload_mesg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x15dc8bab __SCT__tp_func_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x1fc800c3 iscsi_ping_comp_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x279d59f5 iscsi_alloc_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x2d127ddc iscsi_is_session_online +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x306d1d04 iscsi_unregister_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x31b3c1f7 iscsi_lookup_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x37752e93 iscsi_free_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x390b5b16 iscsi_destroy_all_flashnode +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x42e9eb26 iscsi_force_destroy_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x4caacdff iscsi_put_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x503a523c __SCK__tp_func_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x50a6613b iscsi_find_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x52575134 __SCT__tp_func_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x59177200 iscsi_session_chkready +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x5e162881 iscsi_destroy_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x610ae57f __tracepoint_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x680632dd iscsi_create_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x699fe53e iscsi_get_discovery_parent_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6decf27e iscsi_add_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x6f6dad16 __traceiter_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x730c48f0 iscsi_create_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x742d5069 __tracepoint_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x74b3a2d3 iscsi_remove_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x7d2be55a iscsi_remove_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84202733 __SCK__tp_func_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x84a005f1 iscsi_get_router_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x87f93355 iscsi_create_iface +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8cf4597c iscsi_recv_pdu +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x8e5e70c1 iscsi_conn_login_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9b357bdf iscsi_find_flashnode_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9b8baa3f iscsi_get_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9ca6d0c2 iscsi_destroy_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0x9fb02a61 __traceiter_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa720dbd2 iscsi_block_scsi_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xa8c4b5e1 __SCT__tp_func_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xae7cd27b iscsi_alloc_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb1ab30b9 iscsi_create_endpoint +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb232c24c iscsi_get_port_speed_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb618ce85 __SCK__tp_func_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb77a3b39 iscsi_post_host_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xb83b4db6 __SCK__tp_func_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbb0ca69b __traceiter_iscsi_dbg_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xbc071179 iscsi_get_ipaddress_state_name +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc43ae3c4 iscsi_block_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc4648f60 __traceiter_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc5d9356a iscsi_flashnode_bus_match +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xc81767d9 iscsi_session_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xce18c93d __tracepoint_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdcda215a iscsi_destroy_flashnode_sess +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xdf515c49 __SCT__tp_func_iscsi_dbg_sw_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xeca7b415 __traceiter_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef0a02f6 iscsi_dbg_trace +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xef8119d2 __tracepoint_iscsi_dbg_tcp +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xeff14c38 iscsi_register_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf0365e4e iscsi_host_for_each_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3dc565f iscsi_is_session_dev +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf3f42098 iscsi_put_conn +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf7e749fb __SCT__tp_func_iscsi_dbg_eh +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xf944c9f1 __tracepoint_iscsi_dbg_session +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_iscsi 0xfe820c20 iscsi_conn_error_event +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x6951dc42 sas_enable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0x93be8b8d sas_disable_tlr +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xc836a8bb sas_tlr_supported +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_sas 0xcec6897c sas_is_tlr_enabled +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0x0ef06974 spi_populate_ppr_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xa0c71dac spi_populate_sync_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xaa382010 spi_populate_tag_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_spi 0xcffa2aff spi_populate_width_msg +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x1902178a srp_tmo_valid +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x4d2d93ac srp_attach_transport +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0x75513dd7 srp_rport_del +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xa3223c83 srp_rport_add +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xb19dd124 srp_stop_rport_timers +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xcd7cbad6 srp_remove_host +EXPORT_SYMBOL_GPL drivers/scsi/scsi_transport_srp 0xf35d51cf srp_release_transport +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x101f6e0a siox_master_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x554c5875 siox_master_alloc +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x91393352 __siox_driver_register +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0x98997e3f siox_device_connected +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xc476c6dd siox_master_unregister +EXPORT_SYMBOL_GPL drivers/siox/siox-core 0xe48fd098 siox_device_synced +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x11f51b2e slim_get_logical_addr +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x1961daa0 slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x30953ea0 slim_msg_response +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x49a092a1 slim_xfer_msg +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6277fb76 slim_alloc_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x6315318e slim_stream_allocate +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x64e62f09 of_slim_get_device +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7922f347 slim_ctrl_clk_pause +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x798ba05d slim_writeb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x798c6def slim_device_report_present +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x7eb5af4b slim_stream_enable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x815b9803 slimbus_bus +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x92ee4fc5 slim_unregister_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x96ed5fd9 slim_read +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0x9b9ac8f0 slim_write +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xb1f53753 slim_report_absent +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc41ecdbf slim_free_txn_tid +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc47f159a slim_stream_prepare +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc657b54e __slim_driver_register +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xc6cc4185 slim_stream_free +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcd8e56fb slim_stream_disable +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xcfd0e309 slim_register_controller +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf00285de slim_do_transfer +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf0892b23 slim_driver_unregister +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xf3be1869 slim_readb +EXPORT_SYMBOL_GPL drivers/slimbus/slimbus 0xfb303809 slim_stream_unprepare +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x1b1c925d sdw_unregister_driver +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0x8f39e23d sdw_bus_type +EXPORT_SYMBOL_GPL drivers/soundwire/soundwire-bus 0xb95e4224 __sdw_register_driver +EXPORT_SYMBOL_GPL drivers/spi/spi-altera-core 0x48a38080 altera_spi_init_host +EXPORT_SYMBOL_GPL drivers/spi/spi-altera-core 0xb9edd149 altera_spi_irq +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x17c236aa spi_bitbang_setup_transfer +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x3d4a754c spi_bitbang_start +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x4bdea236 spi_bitbang_cleanup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x905bda4e spi_bitbang_stop +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0x9a436bfa spi_bitbang_setup +EXPORT_SYMBOL_GPL drivers/spi/spi-bitbang 0xb680f901 spi_bitbang_init +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x7b3a609b spi_test_execute_msg +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0x998c15ea spi_test_run_tests +EXPORT_SYMBOL_GPL drivers/spi/spi-loopback-test 0xec16ba3a spi_test_run_test +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x08c2cec5 spmi_command_shutdown +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x148210a1 spmi_command_wakeup +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x21142294 spmi_register_zero_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x23e35fdb spmi_ext_register_writel +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x24dd6171 spmi_ext_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x451bf0c1 spmi_command_sleep +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x485314ce spmi_controller_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5b2d6bfe spmi_device_alloc +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x5d92fc01 spmi_device_from_of +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x72e642d4 spmi_controller_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7429a1df spmi_register_read +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x7857303f spmi_controller_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x881b56db spmi_register_write +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0x8c8107e0 spmi_command_reset +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xab796751 spmi_device_remove +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xbcba1ac3 spmi_ext_register_readl +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xdf7a072f spmi_device_add +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xe9df691b __spmi_driver_register +EXPORT_SYMBOL_GPL drivers/spmi/spmi 0xf7569f36 spmi_ext_register_write +EXPORT_SYMBOL_GPL drivers/ssb/ssb 0x9ac59df6 ssb_pmu_spuravoid_pllupdate +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x21141a23 fieldbus_dev_unregister +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x2adca23b fieldbus_dev_online_changed +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x499eadd6 fieldbus_dev_area_updated +EXPORT_SYMBOL_GPL drivers/staging/fieldbus/fieldbus_dev 0x7cfe41f9 fieldbus_dev_register +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0x35420d18 gb_gbphy_deregister_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-gbphy 0xe2358c2b gb_gbphy_register_driver +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x6247c935 gb_spilib_master_init +EXPORT_SYMBOL_GPL drivers/staging/greybus/gb-spilib 0x6b25626a gb_spilib_master_exit +EXPORT_SYMBOL_GPL drivers/staging/iio/addac/adt7316 0xa3868cd3 adt7316_pm_ops +EXPORT_SYMBOL_GPL drivers/staging/media/av7110/sp8870 0x559d9269 sp8870_attach +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0x2b9b3376 target_stop_cmd_counter +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0x4b671818 target_init_cmd +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0x5d24150b target_free_cmd_counter +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0x6fb7645d target_submit +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0x85631f4d target_queue_submission +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0xb4489234 target_wait_for_cmds +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0xc65e34a6 target_alloc_cmd_counter +EXPORT_SYMBOL_GPL drivers/target/target_core_mod 0xe7ae36ac target_submit_prep +EXPORT_SYMBOL_GPL drivers/tee/tee 0x14ec1fa7 tee_shm_alloc_priv_buf +EXPORT_SYMBOL_GPL drivers/tee/tee 0x2770cc17 tee_shm_register_kernel_buf +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3b6a538e tee_device_register +EXPORT_SYMBOL_GPL drivers/tee/tee 0x3eb0a81c tee_client_invoke_func +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4c08fe38 tee_bus_type +EXPORT_SYMBOL_GPL drivers/tee/tee 0x4c581fa2 tee_get_drvdata +EXPORT_SYMBOL_GPL drivers/tee/tee 0x5f3b9be5 tee_device_alloc +EXPORT_SYMBOL_GPL drivers/tee/tee 0x85fd9922 tee_session_calc_client_uuid +EXPORT_SYMBOL_GPL drivers/tee/tee 0x8d880eb9 tee_client_close_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9051dc22 teedev_open +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9196a98f tee_shm_pool_alloc_res_mem +EXPORT_SYMBOL_GPL drivers/tee/tee 0x9be293a2 tee_shm_put +EXPORT_SYMBOL_GPL drivers/tee/tee 0xa0f1cf3b tee_shm_free +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb16b7e62 tee_shm_get_va +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb24ecb08 tee_client_get_version +EXPORT_SYMBOL_GPL drivers/tee/tee 0xb72dc140 tee_client_close_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc137d22f tee_shm_get_pa +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc2c846b2 tee_shm_get_from_id +EXPORT_SYMBOL_GPL drivers/tee/tee 0xc8ca8684 tee_shm_alloc_kernel_buf +EXPORT_SYMBOL_GPL drivers/tee/tee 0xdeb149fd tee_device_unregister +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf1cba718 tee_client_open_session +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf32375a7 tee_client_open_context +EXPORT_SYMBOL_GPL drivers/tee/tee 0xf981c669 teedev_close_context +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x3eb45cf2 int340x_thermal_zone_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x457f2f58 int340x_thermal_update_trips +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/int340x_thermal_zone 0x8974c2d5 int340x_thermal_zone_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0x4aa6adb3 proc_thermal_resume +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0x4d8ce666 proc_thermal_mmio_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0x5ba2d0cd proc_thermal_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0x710fe400 proc_thermal_mmio_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0x882c9443 proc_thermal_suspend +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_device 0xe026bd02 proc_thermal_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_mbox 0x75190129 proc_thermal_mbox_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_mbox 0x7690bb4d proc_thermal_mbox_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_rapl 0x098e82d4 proc_thermal_rapl_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_rapl 0x17070140 proc_thermal_rapl_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_rfim 0x12b0b45b proc_thermal_rfim_add +EXPORT_SYMBOL_GPL drivers/thermal/intel/int340x_thermal/processor_thermal_rfim 0xe40ebd4c proc_thermal_rfim_remove +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x0af1c8b1 intel_soc_dts_iosf_init +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x0c9184da intel_soc_dts_iosf_interrupt_handler +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x2876c639 intel_soc_dts_iosf_exit +EXPORT_SYMBOL_GPL drivers/thermal/intel/intel_soc_dts_iosf 0x3b453586 intel_soc_dts_iosf_add_read_only_critical_trip +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x01d23ee1 tb_property_create_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x066696ac tb_xdomain_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x1debb046 tb_ring_start +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x288794a4 tb_xdomain_response +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x2bd5f300 tb_xdomain_enable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x393b4f2f tb_property_free_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x4e5064a7 tb_property_find +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x4e64bdfd tb_register_protocol_handler +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x52ec4bba tb_xdomain_release_out_hopid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x52ece48b tb_ring_alloc_tx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x53253a6f tb_ring_poll +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x603249ed tb_unregister_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x61e37b46 tb_xdomain_find_by_route +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x658e3d97 tb_property_add_immediate +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7212ca01 tb_ring_free +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x73ad2acb tb_property_get_next +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x785eb82c tb_property_remove +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7f17b164 tb_register_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x7fd54488 tb_xdomain_alloc_out_hopid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x83b33638 tb_ring_stop +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8b62f95e tb_property_add_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x8d9ca9b6 tb_xdomain_find_by_uuid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x93848bc8 tb_xdomain_disable_paths +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9445aa6d tb_xdomain_lane_bonding_enable +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0x9ccaff1e tb_ring_poll_complete +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa02c7b05 tb_xdomain_lane_bonding_disable +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa1cabff0 tb_unregister_service_driver +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa3d2b403 tb_property_add_data +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xa85442ee tb_ring_alloc_rx +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xb7c7cdce tb_property_add_text +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xcb46243f __tb_ring_enqueue +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xdb2cb29c tb_xdomain_alloc_in_hopid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe0cc0d63 tb_xdomain_release_in_hopid +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xe8397c99 tb_service_type +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf15c5f08 tb_xdomain_request +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf1cfd1ff tb_register_property_dir +EXPORT_SYMBOL_GPL drivers/thunderbolt/thunderbolt 0xf76028c7 tb_unregister_protocol_handler +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x0ddaf9df ufshcd_auto_hibern8_update +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x11f4df2d ufshcd_remove +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x143e2480 ufshcd_suspend_prepare +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x185717d1 ufshcd_dealloc_host +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x191ef39f ufshcd_dump_regs +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x1dd66d15 ufshcd_get_vreg +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x2c12bf18 ufshcd_hba_stop +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x2c3a7c34 ufshcd_dme_configure_adapt +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x2e2eec61 ufshcd_system_thaw +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x3117a4a2 ufshcd_fixup_dev_quirks +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x3c48f722 ufshcd_mcq_poll_cqe_lock +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x3d2d1ec2 ufshcd_mcq_write_cqis +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x414c7d2a ufshcd_dme_set_attr +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x4478d3b0 ufshcd_make_hba_operational +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x468411c7 ufshcd_uic_hibern8_exit +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x4db0f4ee ufshcd_resume_complete +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x58efa603 ufshcd_release +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x6f2ee2f4 ufshcd_init +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x723b1abf ufshcd_delay_us +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x8431fa51 ufshcd_hba_enable +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x8bea5def ufshcd_clkgate_delay_set +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x9ce2c988 ufshcd_config_pwr_mode +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0x9d612a8e ufshcd_uic_hibern8_enter +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xb24fbccc ufshcd_dme_get_attr +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xbe3dea86 __ufshcd_suspend_prepare +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xc3e76d60 ufshcd_system_restore +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xce8ebcac ufshcd_hold +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xd4012d2b ufshcd_uic_change_pwr_mode +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xd928f63e ufshcd_update_evt_hist +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xdae83b4e ufshcd_mcq_config_esi +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xe67b2b68 ufshcd_link_recovery +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xf07056f8 ufshcd_system_freeze +EXPORT_SYMBOL_GPL drivers/ufs/core/ufshcd-core 0xfe10d552 ufshcd_mcq_enable_esi +EXPORT_SYMBOL_GPL drivers/ufs/host/ufshcd-pltfrm 0x54c946de ufshcd_init_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/ufs/host/ufshcd-pltfrm 0x661c452e ufshcd_pltfrm_init +EXPORT_SYMBOL_GPL drivers/ufs/host/ufshcd-pltfrm 0x7a0460ff ufshcd_get_pwr_dev_param +EXPORT_SYMBOL_GPL drivers/ufs/host/ufshcd-pltfrm 0xcfc9fa77 ufshcd_populate_vreg +EXPORT_SYMBOL_GPL drivers/uio/uio 0x0c61e4ef uio_unregister_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xca2a08b5 __devm_uio_register_device +EXPORT_SYMBOL_GPL drivers/uio/uio 0xdd2cbb0e uio_event_notify +EXPORT_SYMBOL_GPL drivers/uio/uio 0xe2d83568 __uio_register_device +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0x1feb463a usbatm_usb_disconnect +EXPORT_SYMBOL_GPL drivers/usb/atm/usbatm 0xcd3b4193 usbatm_usb_probe +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0x1a64caa0 cdns_clear_vbus +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0x73ee357d cdns_resume +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0x93785255 cdns_set_vbus +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xa4360fec cdns_power_is_lost +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xa8fecd36 cdns_suspend +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xaa5cd4d9 cdns_init +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xcc3e4aa9 cdns_drd_gadget_off +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xe02d81fd cdns_drd_gadget_on +EXPORT_SYMBOL_GPL drivers/usb/cdns3/cdns-usb-common 0xec14583a cdns_remove +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x0499b407 ci_hdrc_remove_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x4e085797 ci_hdrc_query_available_role +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0x847ff3e8 ci_hdrc_add_device +EXPORT_SYMBOL_GPL drivers/usb/chipidea/ci_hdrc 0xd8d7ed70 hw_phymode_configure +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x11ae0470 ulpi_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x637372c6 __ulpi_register_driver +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x6c269f7b ulpi_register_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0x951336e5 ulpi_unregister_interface +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xbb648781 ulpi_read +EXPORT_SYMBOL_GPL drivers/usb/common/ulpi 0xffd4caa8 ulpi_write +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x01605c45 gether_setup_name_default +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x03fb156b gether_setup_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x26f58c81 gether_register_netdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x2788c2f2 gether_get_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x4dcc8358 gether_set_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x62d8fae1 gether_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7a0093e1 gether_get_host_addr_cdc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x7fa7babd gether_set_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x831ecb1b gether_get_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8878cfa6 gether_cleanup +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0x8aaea5e9 gether_get_ifname +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xa1d38dcf gether_set_host_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xac690378 gether_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xbe0a262f gether_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd1026e87 gether_set_dev_addr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd313fa34 gether_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xd8d8d9d4 gether_get_host_addr_u8 +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xe807cde4 gether_set_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_ether 0xfbf2a05c gether_get_qmult +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x33bfdca2 gserial_alloc_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x34ebb0f9 gserial_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x60db48f5 gserial_get_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x77268a68 gs_free_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0x92c66a5e gserial_resume +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xb6652875 gserial_free_line +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xbb167751 gserial_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xc0a01527 gserial_set_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xe89dc424 gserial_alloc_line_no_console +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xf8f47081 gserial_suspend +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/u_serial 0xfb78a286 gs_alloc_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x4ca67800 ffs_name_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0x6c825859 ffs_lock +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_fs 0xf04bbe79 ffs_single_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x141fce2a fsg_common_remove_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x1710b539 fsg_fs_bulk_out_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x18f65c73 fsg_show_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x1ccb58f7 fsg_common_set_num_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x2849df14 fsg_store_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x28c267ba fsg_show_ro +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x2933ee1d fsg_ss_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x394a6372 fsg_store_ro +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x398778e1 fsg_ss_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x3c6a07d0 fsg_common_create_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x40d8b948 fsg_show_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x423845e4 fsg_ss_bulk_in_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x4bbcb47b fsg_show_file +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x56344daf fsg_hs_bulk_out_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x56f1c2c7 fsg_store_forced_eject +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x5747d037 fsg_store_removable +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x63c70b52 fsg_lun_fsync_sub +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x6acb4179 fsg_common_set_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x7e26d4a5 fsg_common_set_sysfs +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x850f828e fsg_lun_open +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x85183296 fsg_show_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x857b6dc2 fsg_hs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x935ca4f2 fsg_store_cdrom +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x95cffb3e fsg_hs_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0x9a0221c7 fsg_common_free_buffers +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa1e5675b fsg_store_inquiry_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa5cae92f fsg_ss_bulk_out_comp_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa5f99b69 fsg_fs_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xa99e4141 fsg_show_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xab6c68ac fsg_config_from_params +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xac71f340 fsg_common_remove_lun +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb3adf38d store_cdrom_address +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb52ba28a fsg_intf_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xb54d0d95 fsg_fs_bulk_in_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xc5c4ea6b fsg_lun_close +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xd1a3e8e0 fsg_common_create_luns +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xe07c2f68 fsg_store_nofua +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xf4efc0c8 fsg_ss_bulk_out_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_mass_storage 0xffe03cff fsg_common_set_cdev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x0071616f rndis_set_param_vendor +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x1de41ebe rndis_uninit +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x4753a8cf rndis_rm_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x4c2e8a9c rndis_set_host_mac +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x6e97b389 rndis_borrow_net +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x857a2ae9 rndis_free_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0x8fa06d30 rndis_get_next_response +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xb77577c0 rndis_set_param_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xba4f9232 rndis_add_hdr +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xbb90b573 rndis_signal_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xbb9520e8 rndis_set_param_medium +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xc8692b20 rndis_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xdec54b8d rndis_signal_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xe0a1807d rndis_deregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/function/usb_f_rndis 0xfeaeeffa rndis_msg_parser +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x00f17f33 usb_get_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0c589aba usb_validate_langid +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x0f1a5a58 usb_func_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x17186b51 usb_gstrings_attach +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x232aef32 usb_add_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2415361a usb_put_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2a5ab010 alloc_ep_req +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2c6c53fa usb_composite_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x2e09263f usb_copy_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x35f59909 usb_composite_overwrite_options +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x38fa5119 usb_ep_autoconfig_ss +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x41f7d129 usb_string_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x42661857 config_ep_by_speed_and_alt +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x43716ab4 usb_get_function_instance +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x46004cfe config_ep_by_speed +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x49c05adf usb_put_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4beb505d usb_gadget_get_string +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x4fdb8909 usb_interface_id +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x50ae5e7b usb_string_ids_tab +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5c6cd60c usb_function_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x5dfe7658 usb_ep_autoconfig +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x60ef4a91 usb_function_register +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7148ceb2 usb_ep_autoconfig_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x71d00c5a usb_add_config_only +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7c87eb6f usb_ep_autoconfig_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x7f31aed3 usb_remove_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x876ad3f3 usb_free_all_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x881c3d13 usb_composite_setup_continue +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0x95a974de usb_function_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xb9a0e7cc usb_otg_descriptor_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xce859913 usb_composite_unregister +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd2ea2134 usb_descriptor_fillbuf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xd4bec321 usb_add_function +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xda114e57 usb_assign_descriptors +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xe18c58c1 usb_string_ids_n +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf2053d21 usb_otg_descriptor_alloc +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf474a207 usb_gadget_config_buf +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xf5afabdb usb_function_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/libcomposite 0xfc79156d unregister_gadget_item +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x10b30e01 udc_remove +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x14f75b62 udc_probe +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x3257703a empty_req_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x5d01d078 udc_irq +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x6db5af24 init_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7265afdb udc_basic_init +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0x7a888229 free_dma_pools +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xa6558e56 udc_mask_unused_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xbcc56985 gadget_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/snps_udc_core 0xcc80b5e6 udc_enable_dev_setup_interrupts +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x004c6380 usb_ep_fifo_flush +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x03f9da00 usb_del_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x06176bcd usb_udc_vbus_handler +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x1a39ee5f usb_initialize_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2434a329 usb_gadget_ep_match_desc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2af38e5f usb_ep_free_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x2c53cadb usb_ep_disable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x309e05a6 gadget_find_ep_by_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x36628bed usb_gadget_udc_reset +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x3ea59b5d usb_ep_alloc_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x405d007d usb_ep_set_wedge +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x4278f34c usb_add_gadget_udc_release +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x4657ae38 usb_gadget_set_state +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x48096a80 usb_add_gadget +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x499a2402 usb_gadget_check_config +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x4fa2450c usb_ep_dequeue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5005dadb usb_gadget_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x50b88f41 usb_get_gadget_udc_name +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x5c113954 usb_gadget_frame_number +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x6c82bb8f usb_gadget_deactivate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x6e8af98f usb_gadget_vbus_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x76bae827 usb_gadget_set_remote_wakeup +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x784d9a58 usb_ep_enable +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x79c3b872 usb_ep_fifo_status +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x93d5fdc4 usb_gadget_giveback_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0x9502b3f3 usb_gadget_map_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa057824c usb_add_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xa321516d usb_gadget_vbus_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xac5667d9 usb_ep_queue +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb44417db usb_del_gadget_udc +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb5132be1 usb_gadget_activate +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xb6217741 usb_gadget_vbus_draw +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xbee6af28 usb_ep_set_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc12236fe usb_gadget_disconnect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc3d4d06b usb_ep_set_maxpacket_limit +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc8398d20 usb_gadget_unmap_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xc8ac2c4f usb_ep_clear_halt +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xcf2f5b6b usb_gadget_map_request_by_dev +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xd1774056 usb_gadget_clear_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdc027d99 usb_gadget_set_selfpowered +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xdd0ebfb1 usb_gadget_connect +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe476115e usb_gadget_unmap_request +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xe9b6a9e4 usb_gadget_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/gadget/udc/udc-core 0xec986200 usb_gadget_register_driver_owner +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-pci-renesas 0x90f7b2ca renesas_xhci_check_request_fw +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-plat-hcd 0x83e9c5d3 xhci_plat_probe +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-plat-hcd 0x8b687480 xhci_plat_remove +EXPORT_SYMBOL_GPL drivers/usb/host/xhci-plat-hcd 0xa288538f xhci_plat_pm_ops +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xbb986306 ezusb_fx1_ihex_firmware_download +EXPORT_SYMBOL_GPL drivers/usb/misc/ezusb 0xfc9c341c ezusb_fx1_set_reset +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x09492220 musb_mailbox +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x0b4a8834 musb_writeb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x2734197f musb_readb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x3c0534cd musb_root_disconnect +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x4a96deb1 musb_get_mode +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x669594ad musb_clearw +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x69758860 musb_set_peripheral +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x6af8c6dc musb_writel +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0x719a5e41 musb_readw +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xa166feab musb_set_host +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xade3e56c musb_writew +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xaf487b40 musb_queue_resume_work +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xe5124fa2 musb_interrupt +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xe59efb0e musb_clearb +EXPORT_SYMBOL_GPL drivers/usb/musb/musb_hdrc 0xf0f95e51 musb_readl +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x008069e3 usb_phy_gen_create_phy +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x1aea19c0 usb_phy_generic_register +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x4e335051 usb_gen_phy_shutdown +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0x5bbb35c6 usb_phy_generic_unregister +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-generic 0xf250d5d3 usb_gen_phy_init +EXPORT_SYMBOL_GPL drivers/usb/phy/phy-isp1301 0xab4e276d isp1301_get_client +EXPORT_SYMBOL_GPL drivers/usb/serial/usb_wwan 0xf11bb8cd usb_wwan_port_probe +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x138984bb usb_serial_generic_wait_until_sent +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x30d8ae5b usb_serial_generic_open +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x42f10710 usb_serial_generic_submit_read_urbs +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x4535cc11 usb_serial_generic_write_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x463ab579 usb_serial_port_softint +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x48f6b4d4 usb_serial_generic_get_icount +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x50cec239 usb_serial_generic_unthrottle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x644a865a usb_serial_claim_interface +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x67c814a3 usb_serial_generic_throttle +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x7b119817 usb_serial_generic_read_bulk_callback +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0x99e7fb98 usb_serial_generic_close +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb24a603c usb_serial_generic_write_start +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xb373d7f0 usb_serial_deregister_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc5a629fb usb_serial_handle_dcd_change +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xc9e55a98 usb_serial_generic_chars_in_buffer +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd57fce58 usb_serial_generic_resume +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xd945ca68 usb_serial_register_drivers +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xee04416d usb_serial_generic_process_read_urb +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xf4ab2ed1 usb_serial_generic_write +EXPORT_SYMBOL_GPL drivers/usb/serial/usbserial 0xfc21cc33 usb_serial_generic_tiocmiwait +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x23fc1d54 dp_altmode_remove +EXPORT_SYMBOL_GPL drivers/usb/typec/altmodes/typec_displayport 0x3a6d57b6 dp_altmode_probe +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x6f497a3c tcpci_irq +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0x96eef241 tcpci_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xbe111953 tcpci_get_tcpm_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpci 0xc529e32e tcpci_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x10ec6d2d tcpm_sink_frs +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x3b84657b tcpm_pd_transmit_complete +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x76eeda4b tcpm_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0x9e0bd753 tcpm_pd_hard_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xb3372641 tcpm_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xb655342c tcpm_pd_receive +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xc37b9769 tcpm_cc_change +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xceb50012 tcpm_vbus_change +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xd680581d tcpm_port_clean +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xda86a83d tcpm_port_is_toggling +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xea220941 tcpm_tcpc_reset +EXPORT_SYMBOL_GPL drivers/usb/typec/tcpm/tcpm 0xeb779665 tcpm_sourcing_vbus +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x014e38f1 typec_altmode_get_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x06b19f76 typec_mux_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x0d8e6868 typec_cable_is_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x126b2031 usb_power_delivery_link_device +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x144065c1 typec_partner_set_pd_revision +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1b810e9b typec_set_pwr_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x1d5890ad usb_power_delivery_unlink_device +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2056d7d2 typec_partner_set_num_altmodes +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2057e134 fwnode_typec_retimer_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2a0172e3 typec_altmode_enter +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2d1e301d typec_find_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x2f05ee29 typec_altmode_notify +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x30c5df87 typec_set_mode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x46a04c59 typec_partner_usb_power_delivery_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x46b06de3 typec_switch_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x47226f70 typec_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4b31c148 typec_register_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4efbccb8 typec_switch_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x4f29d064 typec_switch_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x503f3437 usb_power_delivery_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x509dcd31 typec_retimer_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x5204cd97 typec_retimer_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x52bf15e1 typec_altmode_get_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6ae9bd8a fwnode_typec_mux_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6b3d9465 typec_mux_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x6ca9d2fd typec_altmode_unregister_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x70400f57 typec_get_negotiated_svdm_version +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x73ef7a06 fwnode_typec_switch_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7938cbde typec_partner_set_usb_power_delivery +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x79ecb396 typec_mux_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7da5d1db typec_set_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7da76372 usb_power_delivery_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x7e0d5a82 __typec_altmode_register_driver +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8560842b typec_unregister_partner +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x86521d45 typec_switch_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8e3616f5 typec_unregister_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8eb92f04 typec_altmode_update_active +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8ecf4d0e typec_set_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x8fd03e33 typec_altmode_exit +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9049491e typec_find_port_data_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x9256358d typec_retimer_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x96afbf07 typec_set_vconn_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0x97a1a078 typec_mux_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa254de98 typec_find_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa506e2ad typec_unregister_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa6c4321f typec_altmode_attention +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xa7ab8b31 typec_retimer_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xab46c8a8 typec_partner_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb02d641a usb_power_delivery_register_capabilities +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb52dc5df typec_plug_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb86436ea typec_cable_get +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xb90af580 typec_set_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc0a2a6d7 typec_partner_set_svdm_version +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xc969a25a typec_register_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xca5304e5 typec_switch_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcd066413 typec_cable_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcd1f0eb0 typec_mux_register +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xcfb31b03 typec_cable_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd2fa1286 typec_switch_set +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd36dd1c3 typec_altmode_vdm +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd5198bd8 typec_register_port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd704248a typec_port_register_altmodes +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xd86de6f3 typec_get_orientation +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xdcbd8938 typec_port_register_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xdda538fb typec_plug_set_num_altmodes +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe22527a9 typec_altmode_put_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe4b2bc99 typec_partner_set_identity +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe667fd1c typec_altmode2port +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xe935dfdd typec_port_set_usb_power_delivery +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xeafc1eb8 typec_find_port_power_role +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xecb03320 typec_register_plug +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf0857cec typec_get_fw_cap +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf1234a8b typec_find_pwr_opmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xf16628df typec_unregister_cable +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfa326404 typec_retimer_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfc8df340 typec_mux_put +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfe26c2ad usb_power_delivery_unregister_capabilities +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xfe9f458a typec_unregister_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/typec 0xff211eb1 typec_match_altmode +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x1aea5b3c ucsi_create +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x1afcbf32 ucsi_send_command +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x2187b9b6 ucsi_register +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x2378366e ucsi_set_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0x30fc542a ucsi_unregister +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xb61e2760 ucsi_connector_change +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xe1b2c556 ucsi_resume +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xe40c51bb ucsi_get_drvdata +EXPORT_SYMBOL_GPL drivers/usb/typec/ucsi/typec_ucsi 0xe95eeebe ucsi_destroy +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x1364350d usbip_recv_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x13eb4374 dev_attr_usbip_debug +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x1a789365 usbip_alloc_iso_desc_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x38abed88 usbip_recv +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x53d70c6b usbip_stop_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x5bb13b01 usbip_pad_iso +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x6ed6a9e6 usbip_event_happened +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x72c59030 usbip_pack_pdu +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x73a87c69 usbip_recv_xbuff +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x78b72f44 usbip_debug_flag +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0x8aada6ce usbip_in_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xa2106a4d usbip_start_eh +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xcb457df8 usbip_dump_urb +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xd02753dc usbip_header_correct_endian +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xe1ea0586 usbip_dump_header +EXPORT_SYMBOL_GPL drivers/usb/usbip/usbip-core 0xfea9b7a9 usbip_event_add +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x01814c21 vdpa_unregister_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x19ba92ea vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x2a5e061a __vdpa_register_driver +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x2c8e5c62 _vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x3eae04de vdpa_get_config +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x4caa635a vdpa_mgmtdev_register +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x53d5bdcf _vdpa_register_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0x77042be6 vdpa_unregister_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xaba3afa3 vdpa_mgmtdev_unregister +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xc8715603 __vdpa_alloc_device +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa 0xe8dbdf7b vdpa_set_config +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa_sim/vdpa_sim 0x40247bee vdpasim_create +EXPORT_SYMBOL_GPL drivers/vdpa/vdpa_sim/vdpa_sim 0x662051ad vdpasim_schedule_work +EXPORT_SYMBOL_GPL drivers/vfio/mdev/mdev 0x9f30310a mdev_bus_type +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x02f885b7 vfio_pci_core_register_dev_region +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x20feb66b vfio_pci_core_close_device +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x2ba272e0 vfio_pci_core_write +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x36e111ed vfio_pci_core_ioctl +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x3a2f132e vfio_pci_core_err_handlers +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x3fe05096 vfio_pci_core_finish_enable +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x4cf699b8 vfio_pci_core_set_params +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x57ee02b8 vfio_pci_core_aer_err_detected +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x725e33dc vfio_pci_core_match +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x748e389d vfio_pci_core_request +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x77cf46f5 vfio_pci_core_disable +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x8896412c vfio_pci_core_register_device +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x994c044d vfio_pci_core_unregister_device +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0x9b96c0b9 vfio_pci_core_sriov_configure +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xa0452068 vfio_pci_core_mmap +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xa196de09 vfio_pci_core_read +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xa5cd7b26 vfio_pci_core_enable +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xca76e4a1 vfio_pci_core_ioctl_feature +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xe255f25d vfio_pci_core_release_dev +EXPORT_SYMBOL_GPL drivers/vfio/pci/vfio-pci-core 0xf7c262aa vfio_pci_core_init_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x0bc37699 vfio_unregister_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x1f3694f4 vfio_iommufd_physical_unbind +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x38c6c3e1 vfio_file_iommu_group +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x3dde32a3 vfio_file_has_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x48ee7465 vfio_device_set_open_count +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x60a634c4 vfio_info_cap_add +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x669930e6 vfio_register_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x68dc3981 vfio_register_emulated_iommu_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x68f6ef6f vfio_iommufd_physical_attach_ioas +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x705f3ddf vfio_iommufd_physical_bind +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x7d2ed4c3 iova_bitmap_set +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x8191a3a0 vfio_iommufd_emulated_attach_ioas +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x856801ef vfio_file_is_group +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x8859592c vfio_virqfd_enable +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x88be1ae7 vfio_register_iommu_driver +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0x94cd9fd6 vfio_unregister_group_dev +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xb408ded9 vfio_mig_get_next_state +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xba5911fa _vfio_alloc_device +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xbd096bf5 vfio_file_set_kvm +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc324433a vfio_iommufd_emulated_bind +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xc80a8406 vfio_iommufd_emulated_unbind +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xd5796051 vfio_virqfd_disable +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xe8347595 vfio_assign_device_set +EXPORT_SYMBOL_GPL drivers/vfio/vfio 0xfc836eeb vfio_file_enforced_coherent +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x062b0994 vhost_vq_work_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x10fda6af vhost_exceeds_weight +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x11f147ac vhost_worker_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x12e47c5c vhost_vq_init_access +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x179ce5a3 vhost_new_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x1e13db80 vhost_dev_check_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x22972fc0 vhost_dev_set_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2a152249 vq_meta_prefetch +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2e588cff vhost_dev_cleanup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x2f976530 vhost_dev_has_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x326f01cf vhost_vq_avail_empty +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x32f79b4e vhost_add_used_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3a2992fd vhost_vring_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x3fb2568b vhost_vq_is_setup +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x409ad287 vhost_init_device_iotlb +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x51876dce vhost_log_write +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x59cad2b7 vhost_chr_read_iter +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x63497bdf vhost_poll_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6b56ac1a vhost_poll_queue +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x6d5c24f9 vhost_dev_ioctl +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x76c4775d vhost_dev_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7b1148e3 vhost_dev_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x7d9d1c02 vhost_disable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x802aa1de vhost_vq_has_work +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x8435d11e vhost_log_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x87897d69 vhost_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0x97be4051 vhost_enqueue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa4af51b7 vhost_dev_reset_owner +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xa909cfc5 vhost_work_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xaa8c097a vhost_vq_access_ok +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb230814e vhost_get_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb4a9e9f7 vhost_poll_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xb8128adf vhost_add_used_and_signal +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xba85658c vhost_poll_start +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbbfc8e02 vhost_dev_stop +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xbc87b82e vhost_clear_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc2d2ad7d vhost_add_used_and_signal_n +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xc3477b0d vhost_set_backend_features +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xca0ce26d vhost_vq_flush +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xce41b6c4 vhost_dequeue_msg +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xda81813b vhost_discard_vq_desc +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xe444cfdb vhost_enable_notify +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xef3cc1e6 vhost_add_used +EXPORT_SYMBOL_GPL drivers/vhost/vhost 0xfd2b3e45 vhost_dev_reset_owner_prepare +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x38ff875f vhost_iotlb_add_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x5f4e5249 vhost_iotlb_reset +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x69e872f9 vhost_iotlb_itree_first +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x6bec0e66 vhost_iotlb_del_range +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x83be64b9 vhost_iotlb_itree_next +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x885512a2 vhost_iotlb_add_range_ctx +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0x8a7d8ee9 vhost_iotlb_init +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xa24517eb vhost_iotlb_free +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xc577832d vhost_iotlb_alloc +EXPORT_SYMBOL_GPL drivers/vhost/vhost_iotlb 0xf9deb0db vhost_iotlb_map_free +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x20ef8f72 ili9320_remove +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x27b56deb ili9320_shutdown +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0x83d0a0a8 ili9320_write_regs +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xab64f613 ili9320_write +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xbaee2f42 ili9320_probe_spi +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xc9d0d681 ili9320_resume +EXPORT_SYMBOL_GPL drivers/video/backlight/ili9320 0xe3efd88d ili9320_suspend +EXPORT_SYMBOL_GPL drivers/video/fbdev/core/fb_ddc 0xaf4eaed7 fb_ddc_read +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x20b87e7b sis_free_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/sis/sisfb 0x362b7f47 sis_malloc_new +EXPORT_SYMBOL_GPL drivers/video/fbdev/vermilion/vmlfb 0x016e6c20 vmlfb_unregister_subsys +EXPORT_SYMBOL_GPL drivers/video/fbdev/vermilion/vmlfb 0x90c018c6 vmlfb_register_subsys +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0x30cc9311 viafb_request_dma +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0x31469540 viafb_pm_unregister +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0x908bda50 viafb_find_i2c_adapter +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0xb4606f8d viafb_irq_disable +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0xb4f863e6 viafb_pm_register +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0xcaefb732 viafb_release_dma +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0xcd538333 viafb_irq_enable +EXPORT_SYMBOL_GPL drivers/video/fbdev/via/viafb 0xce990048 viafb_dma_copy_out_sg +EXPORT_SYMBOL_GPL drivers/w1/wire 0x078d35de w1_next_pullup +EXPORT_SYMBOL_GPL drivers/w1/wire 0x0bba24b3 w1_reset_resume_command +EXPORT_SYMBOL_GPL drivers/w1/wire 0x37d8e11f w1_reset_bus +EXPORT_SYMBOL_GPL drivers/w1/wire 0x457a1699 w1_read_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x57fcbf3a w1_write_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x62599915 w1_touch_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x63757e92 w1_calc_crc8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0x70f6ebc7 w1_read_block +EXPORT_SYMBOL_GPL drivers/w1/wire 0x868b741b w1_write_8 +EXPORT_SYMBOL_GPL drivers/w1/wire 0xabfb4710 w1_reset_select_slave +EXPORT_SYMBOL_GPL drivers/w1/wire 0xcc8434bf w1_triplet +EXPORT_SYMBOL_GPL drivers/w1/wire 0xd189decd w1_touch_bit +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x145f8e99 xen_front_pgdir_shbuf_alloc +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x1d73093a xen_front_pgdir_shbuf_free +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x42dfcf80 xen_front_pgdir_shbuf_map +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0x568a3b16 xen_front_pgdir_shbuf_get_dir_start +EXPORT_SYMBOL_GPL drivers/xen/xen-front-pgdir-shbuf 0xc34fcb59 xen_front_pgdir_shbuf_unmap +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xaac633e2 xen_privcmdbuf_fops +EXPORT_SYMBOL_GPL drivers/xen/xen-privcmd 0xe47d547e xen_privcmd_fops +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x28450715 dlm_posix_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x4b62826c dlm_unlock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x8a6c5f1b dlm_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0x9cc8d87b dlm_posix_get +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xc2f37b82 dlm_posix_lock +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcd224e1d dlm_new_lockspace +EXPORT_SYMBOL_GPL fs/dlm/dlm 0xcf9f3328 dlm_release_lockspace +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x01c35c62 nlmclnt_init +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x167aa7cf nlmclnt_rpc_clnt +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x3b0f2675 nlmclnt_proc +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x7df27f08 nlmclnt_done +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x96e42e1f nlmsvc_unlock_all_by_sb +EXPORT_SYMBOL_GPL fs/lockd/lockd 0x9cbde0a0 nlmsvc_unlock_all_by_ip +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xc76907ed lockd_down +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe1ac3ad2 lockd_up +EXPORT_SYMBOL_GPL fs/lockd/lockd 0xe38b0f44 nlmsvc_ops +EXPORT_SYMBOL_GPL fs/netfs/netfs 0xec19a09f netfs_extract_user_iter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x00d0ad93 nfs_write_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0294c6a2 nfs_callback_nr_threads +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0312a877 __SCK__tp_func_nfs_xdr_bad_filehandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03d205f7 nfs_request_add_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x03eacb8c nfs_fattr_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0817652f nfs_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0a506142 nfs_flock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0bfc426f nfs_do_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x0d2f54ea nfs_setattr_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x10962bc2 nfs_auth_info_match +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1110930f nfs_add_or_obtain +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x11712aad nfs_atomic_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x134b6844 __traceiter_nfs_xdr_bad_filehandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1585ca22 nfs_drop_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1af14e47 nfs_initiate_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1b364e2f nfs_file_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1bd272c9 nfs_wait_on_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1e21d342 nfs_free_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x1f230eb8 nfs_commit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22d795a8 _nfs_display_fhandle_hash +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x22e74cc2 nfs_probe_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x234a99af __SCK__tp_func_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2432ed60 __SCK__tp_func_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x24ba2663 nfs_lookup +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x26884ff7 nfs_alloc_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x275b0087 nfs_reconfigure +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x294b4cb5 nfs_commitdata_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x29c1ac8e nfs_init_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2af2fc92 nfs_server_copy_userdata +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2e295917 __tracepoint_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2efdde18 nfs_release_request +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2f423fe6 nfs_post_op_update_inode_force_wcc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x2fb154e3 nfs_setsecurity +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x30b3f898 nfs_show_devname +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x33775de5 __tracepoint_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3417a6b7 nfs_alloc_fattr_with_label +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x350c7a98 nfs_fscache_open_file +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3584f15e nfs_alloc_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x37239e6d __SCT__tp_func_nfs_xdr_bad_filehandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x38958b25 nfs_sops +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x395ca8bd nfs_client_for_each_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x39e05ac3 nfs_idmap_cache_timeout +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3a698be0 nfs_set_cache_invalid +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3ae7d05c nfs_file_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3c2975ba nfs_file_set_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3d28977d nfs_file_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3da7a270 nfs_pageio_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3e149d5d __SCK__tp_func_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x3f2690f2 nfs_check_flags +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40734167 nfs_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x40739385 nfs_wait_bit_killable +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x417776c7 nfs_file_fsync +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x41f68271 nfs_sb_active +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42833e82 put_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x42f2c81f nfs4_client_id_uniquifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x44f2af18 get_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x456cf7f6 nfs_revalidate_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x47d677ab nfs_free_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49622835 nfs_getattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x49a7d0c2 nfs_file_splice_read +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4cb9e001 recover_lost_locks +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x4e821501 nfs_show_options +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x51892d61 nfs_callback_set_tcpport +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x52ce1e8a nfs_free_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x584b8482 nfs_inc_attr_generation_counter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5b650201 nfs_dreq_bytes_left +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x5c2d7d50 __traceiter_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x624ce590 nfs_zap_acl_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6313bbf3 nfs_alloc_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x67391908 nfs_umount_begin +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x68731434 nfs_generic_pgio +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6c809176 nfs_writeback_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6d62f4d2 nfs_may_open +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6db7bd34 nfs_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x6e05afd9 nfs_create_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x71fd5db4 nfs_statfs +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7292b380 nfs_client_init_is_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x73685364 nfs_clear_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x74f1e499 nfs_server_remove_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x769154f3 nfs_setattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76c6fa8a nfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x76fc764c nfs_pgio_current_mirror +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7a54d9d8 nfs_show_stats +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7dc195ea nfs_d_prune_case_insensitive_aliases +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7e91fcda nfs_submount +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x7eff4fb1 nfs_check_cache_invalid +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x82ddd303 nfs_put_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x83d05407 nfs_fhget +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8499de4f nfs_alloc_fattr +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87c47512 nfs_read_alloc_scratch +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x87f735e3 nfs_kill_super +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x89acb982 nfs4_label_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8a886774 nfs_mknod +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8b639b2e nfs_pageio_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8df06f4a nfs_commit_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f3b3dd1 nfs_file_write +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x8f41e193 nfs_symlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x90a5530f nfsiod_workqueue +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x917adfe5 nfs_refresh_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x91d1fe52 max_session_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x920a5a9d nfs_server_insert_lists +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9484f9cf nfs_sync_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x95020883 nfs_sysfs_link_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x96e837ec nfs4_dentry_operations +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x98b0ece8 nfs_init_timeout_values +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9d919c44 __SCT__tp_func_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0x9f91a885 nfs_init_cinfo +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa3cf65b9 nfs_sysfs_add_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa42f2f45 nfs_get_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa6d94258 nfs_file_llseek +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa8e9e1ae send_implementation_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa934b17f nfs_close_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xa980d091 register_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xaafd4acc max_session_cb_slots +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xae8c32bd nfs_force_lookup_revalidate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb0bf7df4 nfs_pageio_reset_write_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb2907ec3 nfs_post_op_update_inode +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb56039a5 nfs_request_add_commit_list_locked +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb730b2e6 nfs_rename +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb77838bd nfs_mark_client_ready +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb8c64c38 nfs_create +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xb96999fd __traceiter_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbbb5e977 nfs_wait_client_init_complete +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbccd1d7a nfs_access_get_cached +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbcec43ab __tracepoint_nfs_xdr_bad_filehandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xbd0e087e nfs_lock +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc1f4476d nfs_retry_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3a2be67 nfs_net_id +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc3ad86dd nfs_pgio_header_free +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc455f2ea nfs_async_iocounter_wait +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc67a622d nfs_clone_server +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc6c8b8f1 nfs_access_set_mask +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xc9db484f nfs_unlink +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca0383eb nfs_create_rpc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xca7cba69 nfs_access_zap_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcb059855 nfs_init_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xcfc95882 nfs_clear_verifier_delegated +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd106448b nfs_filemap_write_and_wait_range +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd11dc34a nfs_show_path +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd2390943 nfs4_fs_type +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd3f1a9f9 alloc_nfs_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xd79dabce nfs_alloc_client +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdae9b5d7 nfs4_disable_idmapping +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xde2bd3f6 nfs_commitdata_release +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdef1f159 nfs_initiate_commit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdf8f8b70 __traceiter_nfs_fsync_exit +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xdfccc79d unregister_nfs_version +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe015e5be nfs_pgio_header_alloc +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe185b51e __tracepoint_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe1c31aac nfs_client_init_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe33f5d4f nfs_instantiate +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe413723b nfs_put_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe4e63567 nfs_file_mmap +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe573f6a3 nfs_access_add_cache +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe61660ce nfs_get_lock_context +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe65c7ddd nfs_request_remove_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xe73d5797 nfs_invalidate_atime +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xea37f705 nfs_wb_all +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xed31753d nfs_scan_commit_list +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef6c6057 nfs_mkdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef85274d nfs_init_server_rpcclient +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xef9c3ea0 nfs_rmdir +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf47ea627 nfs_pgheader_init +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf55dadee nfs_set_verifier +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf6d03004 nfs_try_get_tree +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xf9105e70 nfs_permission +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfa14d68c nfs_sb_deactive +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfaee3058 nfs_link +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfb394fec nfs_pageio_reset_read_mds +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc619abd _nfs_display_fhandle +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfc84617a nfs_pageio_resend +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfd3c0de6 __SCT__tp_func_nfs_fsync_enter +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfeb42418 __SCT__tp_func_nfs_xdr_status +EXPORT_SYMBOL_GPL fs/nfs/nfs 0xfede635e nfs_inode_attach_open_context +EXPORT_SYMBOL_GPL fs/nfs/nfsv3 0x21f8f418 nfs3_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x03e9feeb pnfs_generic_layout_insert_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x054bef45 layoutstats_timer +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0c8baae4 nfs4_init_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x0ff24649 nfs4_init_ds_session +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x114e279d nfs42_proc_layouterror +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1285d7dc pnfs_generic_pg_writepages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x1839626a nfs4_pnfs_ds_connect +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x186093f7 pnfs_generic_pg_test +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x18746ba0 pnfs_layoutcommit_inode +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x18e75751 __SCT__tp_func_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x20dea6e7 pnfs_ld_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2471bba0 nfs4_delete_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x27ad704a __traceiter_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2a4595af __SCK__tp_func_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2b16e909 __SCT__tp_func_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2bcd4b03 pnfs_ld_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x2e2eeb84 nfs4_decode_mp_ds_addr +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3039cbf8 nfs41_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32458b95 nfs4_schedule_session_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x32cf7b9f nfs4_sequence_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x37559443 __tracepoint_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x39bc9138 pnfs_generic_search_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3ac8d0cd nfs4_set_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x3f72c8c9 __SCK__tp_func_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4284e6a1 pnfs_read_resend_pnfs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x433cfd22 __tracepoint_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x435717bf __SCK__tp_func_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x44283cd9 nfs4_schedule_lease_moved_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x460e39a4 nfs4_mark_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x48453a64 nfs4_schedule_migration_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x485183c6 __traceiter_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4c9f8795 pnfs_add_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4cac08cb __SCK__tp_func_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4e25713b nfs4_schedule_stateid_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4f598557 __traceiter_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x4ff0525a __traceiter_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5175fe84 pnfs_generic_ds_cinfo_release_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5181b263 __traceiter_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5240d89c pnfs_write_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x53f2d0f6 nfs4_put_deviceid_node +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5488abb2 nfs4_find_get_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x549855c9 __tracepoint_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x55a7c9d0 __SCK__tp_func_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x581f0cff pnfs_generic_pg_check_range +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5a24b1bb nfs4_test_session_trunk +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x5dc226cf __traceiter_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x604300fa pnfs_generic_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6085edbd nfs_map_string_to_numeric +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x61d8a0af pnfs_update_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x62de010e __traceiter_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x63826d35 __SCT__tp_func_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6416359d nfs4_schedule_lease_recovery +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x69d3558d pnfs_generic_rw_release +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6a5eb444 __SCT__tp_func_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6a7bd32d __tracepoint_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6a925097 __SCT__tp_func_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6adcdbb2 __SCK__tp_func_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6d5a7adf pnfs_generic_prepare_to_resend_writes +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x6f363b08 __tracepoint_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x70a98eae pnfs_generic_commit_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x710e3e9a pnfs_report_layoutstat +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x71af581c __SCK__tp_func_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x73ffc5e0 __traceiter_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7811fb85 pnfs_generic_pg_check_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x78b040c2 nfs4_setup_sequence +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7a48021d __tracepoint_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7b6973b7 pnfs_layout_mark_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7e1a19a8 pnfs_destroy_layout +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x7e42bd3f __SCT__tp_func_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x80e6ba7b pnfs_generic_scan_commit_lists +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8343059a __SCK__tp_func_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8378dc44 __traceiter_nfs4_pnfs_commit_ds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x86998163 pnfs_error_mark_layout_for_return +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8e31314b pnfs_read_done_resend_to_mds +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x8f543c17 pnfs_put_lseg +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x930a94fd __SCT__tp_func_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x96c4643f __SCT__tp_func_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0x9de27b05 __traceiter_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa05bb2f9 pnfs_generic_ds_cinfo_destroy +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa2c39615 __SCK__tp_func_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa4fb11bc __tracepoint_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa52e8a50 pnfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xa68d3158 __tracepoint_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xadeca730 __SCT__tp_func_nfs4_pnfs_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb20d491e pnfs_register_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb253bb7f nfs4_set_rw_stateid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb4876aa6 pnfs_alloc_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xb499e82f __traceiter_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbc76f65a pnfs_generic_write_commit_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xbe0ea83e nfs4_mark_deviceid_available +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc361c3c5 __SCT__tp_func_pnfs_mds_fallback_read_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc7cbe274 pnfs_nfs_generic_sync +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc89cf791 __tracepoint_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xc94174ff pnfs_free_commit_array +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcc21ce5c __SCT__tp_func_ff_layout_commit_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xce6f8f70 __tracepoint_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xcf33a6b2 nfs4_pnfs_ds_put +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd21ee475 nfs4_test_deviceid_unavailable +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd3a531f5 __tracepoint_pnfs_mds_fallback_write_done +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd63be4d2 pnfs_unregister_layoutdriver +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd6de1ebf __traceiter_ff_layout_read_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd83d59ba nfs_remove_bad_delegation +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd87a1377 __tracepoint_pnfs_mds_fallback_pg_get_mirror_count +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd8a33bb1 __SCK__tp_func_pnfs_mds_fallback_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xd9dc460e pnfs_generic_pg_init_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdadb4c7e pnfs_generic_recover_commit_reqs +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdae0d5bd nfs4_proc_getdeviceinfo +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdb20aad1 __SCK__tp_func_pnfs_mds_fallback_read_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xde07529d pnfs_generic_clear_request_commit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xdeb5edce __SCT__tp_func_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe720dc54 pnfs_generic_pg_readpages +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xe75c2eef pnfs_set_lo_fail +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeacc9911 __SCK__tp_func_nfs4_pnfs_read +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xeb8bf9d4 __SCK__tp_func_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xed15fb41 nfs4_print_deviceid +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xef676614 nfs4_pnfs_ds_add +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xefe70f0b pnfs_set_layoutcommit +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf29412f1 pnfs_generic_pg_cleanup +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf32fa2b7 __SCT__tp_func_ff_layout_write_error +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf3e3a75c __traceiter_pnfs_mds_fallback_pg_init_write +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5002c22 nfs4_find_or_create_ds_client +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf5667e82 __tracepoint_pnfs_mds_fallback_write_pagelist +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf7801360 nfs41_maxgetdevinfo_overhead +EXPORT_SYMBOL_GPL fs/nfs/nfsv4 0xf999267e pnfs_generic_commit_release +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x196b72b4 locks_start_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x1fe1e1ad locks_end_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x47634fd7 opens_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/grace 0x53f43adc locks_in_grace +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x79c243d4 nfsacl_encode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0x8e624fbe nfs_stream_decode_acl +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xdbac0fa6 nfsacl_decode +EXPORT_SYMBOL_GPL fs/nfs_common/nfs_acl 0xf8becc49 nfs_stream_encode_acl +EXPORT_SYMBOL_GPL fs/nfsd/nfsd 0x7c24efac nfsd4_ssc_init_umount_work +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x191d8674 o2nm_get_node_by_ip +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x4900035b o2hb_stop_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x58c88ff2 o2hb_get_all_regions +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x5e95a4b2 o2net_send_message_vec +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x6a0c3847 __mlog_printk +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x721f22a3 o2hb_unregister_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x81a17396 mlog_and_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0x845083a2 o2hb_setup_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa87bc9e7 o2nm_configured_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xa941cb47 o2hb_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb0a955d4 o2nm_node_get +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xb6ebf62a o2nm_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xbd13ee5d o2hb_check_node_heartbeating_no_sem +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xc4d99852 o2hb_check_node_heartbeating_from_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xd859ac8c o2net_fill_node_map +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xe2063500 o2hb_register_callback +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xe28c0c9d o2nm_node_put +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xe72a7e95 o2nm_get_node_by_num +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf1a5611d o2net_unregister_handler_list +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf56c2017 mlog_not_bits +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xf982e6db o2net_send_message +EXPORT_SYMBOL_GPL fs/ocfs2/cluster/ocfs2_nodemanager 0xfe1298f3 o2net_register_handler +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x0001bad2 dlm_unregister_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x22718fe3 dlm_register_domain +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x36fd7c46 dlmlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x7a1211f8 dlm_setup_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x92edae44 dlm_register_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0x9d21302d dlm_print_one_lock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xc795dda6 dlmunlock +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd7ba575e dlm_errmsg +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xd8fa57a6 dlm_unregister_eviction_cb +EXPORT_SYMBOL_GPL fs/ocfs2/dlm/ocfs2_dlm 0xfb86b96f dlm_errname +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0a726931 ocfs2_cluster_this_node +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x0cfd3fc5 ocfs2_cluster_connect_agnostic +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x1475f64b ocfs2_dlm_lvb_valid +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x4d3af7fa ocfs2_cluster_hangup +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x55a835a4 ocfs2_stack_glue_unregister +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x76f40744 ocfs2_dlm_lvb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x8fc4bb7b ocfs2_kset +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0x9507547f ocfs2_cluster_disconnect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xaf969565 ocfs2_dlm_lock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xbbc4ef97 ocfs2_stack_supports_plocks +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc5196999 ocfs2_dlm_unlock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc9fae756 ocfs2_cluster_connect +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xc9ff44dc ocfs2_plock +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xcafdd707 ocfs2_dlm_lock_status +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xd344e4ee ocfs2_stack_glue_set_max_proto_version +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xd806a273 ocfs2_dlm_dump_lksb +EXPORT_SYMBOL_GPL fs/ocfs2/ocfs2_stackglue 0xfad6738d ocfs2_stack_glue_register +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x1e9f3322 unregister_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0x43cc3d4b pstore_blk_get_config +EXPORT_SYMBOL_GPL fs/pstore/pstore_blk 0xb43fb7a6 register_pstore_device +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xc2776541 register_pstore_zone +EXPORT_SYMBOL_GPL fs/pstore/pstore_zone 0xdc113316 unregister_pstore_zone +EXPORT_SYMBOL_GPL fs/smb/common/cifs_arc4 0xabd9af6d cifs_arc4_crypt +EXPORT_SYMBOL_GPL fs/smb/common/cifs_arc4 0xc4c73891 cifs_arc4_setkey +EXPORT_SYMBOL_GPL fs/smb/common/cifs_md4 0x798f3830 cifs_md4_init +EXPORT_SYMBOL_GPL fs/smb/common/cifs_md4 0xceecd9e4 cifs_md4_final +EXPORT_SYMBOL_GPL fs/smb/common/cifs_md4 0xdef1096d cifs_md4_update +EXPORT_SYMBOL_GPL lib/842/842_compress 0xcf048a91 sw842_compress +EXPORT_SYMBOL_GPL lib/842/842_decompress 0xa4adedf1 sw842_decompress +EXPORT_SYMBOL_GPL lib/bch 0x0c303f52 bch_encode +EXPORT_SYMBOL_GPL lib/bch 0x0d3e3481 bch_free +EXPORT_SYMBOL_GPL lib/bch 0x1a267fa8 bch_init +EXPORT_SYMBOL_GPL lib/bch 0x860a2eab bch_decode +EXPORT_SYMBOL_GPL lib/crc4 0x696b3a5a crc4 +EXPORT_SYMBOL_GPL lib/crypto/libdes 0x0105b595 des_encrypt +EXPORT_SYMBOL_GPL lib/crypto/libdes 0x574eda34 des3_ede_decrypt +EXPORT_SYMBOL_GPL lib/crypto/libdes 0x856a5ef3 des3_ede_encrypt +EXPORT_SYMBOL_GPL lib/crypto/libdes 0xa6aa9857 des_decrypt +EXPORT_SYMBOL_GPL lib/crypto/libdes 0xa77b3b62 des3_ede_expand_key +EXPORT_SYMBOL_GPL lib/crypto/libdes 0xa8fb743d des_expand_key +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x4b45fb6e poly1305_init_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0x7f376d08 poly1305_final_generic +EXPORT_SYMBOL_GPL lib/crypto/libpoly1305 0xfa617389 poly1305_update_generic +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x09118761 notifier_err_inject_init +EXPORT_SYMBOL_GPL lib/notifier-error-inject 0x0f883b24 notifier_err_inject_dir +EXPORT_SYMBOL_GPL lib/polynomial 0xb8b44e50 polynomial_calc +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x1803a6ed raid6_2data_recov +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0x804a5b70 raid6_call +EXPORT_SYMBOL_GPL lib/raid6/raid6_pq 0xe4b051cf raid6_datap_recov +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x1d29b9e1 decode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x561835eb init_rs_non_canonical +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0x63adbf92 encode_rs8 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xa32f3d9e decode_rs16 +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xeb2f825c init_rs_gfp +EXPORT_SYMBOL_GPL lib/reed_solomon/reed_solomon 0xfd581da1 free_rs +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x6767c36e lowpan_header_decompress +EXPORT_SYMBOL_GPL net/6lowpan/6lowpan 0x76ae4a85 lowpan_header_compress +EXPORT_SYMBOL_GPL net/802/garp 0x232e2ea1 garp_unregister_application +EXPORT_SYMBOL_GPL net/802/garp 0x648b34cc garp_register_application +EXPORT_SYMBOL_GPL net/802/garp 0x6eaba39b garp_request_leave +EXPORT_SYMBOL_GPL net/802/garp 0x809f538b garp_request_join +EXPORT_SYMBOL_GPL net/802/garp 0x882a389d garp_init_applicant +EXPORT_SYMBOL_GPL net/802/garp 0x91067bbe garp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x0344bcb2 mrp_unregister_application +EXPORT_SYMBOL_GPL net/802/mrp 0x737864e1 mrp_uninit_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0x874e08cf mrp_request_leave +EXPORT_SYMBOL_GPL net/802/mrp 0x8adb5e2c mrp_register_application +EXPORT_SYMBOL_GPL net/802/mrp 0xd9b50d6e mrp_init_applicant +EXPORT_SYMBOL_GPL net/802/mrp 0xe344fed8 mrp_request_join +EXPORT_SYMBOL_GPL net/802/stp 0x0d03e1b7 stp_proto_register +EXPORT_SYMBOL_GPL net/802/stp 0xb9bd3aeb stp_proto_unregister +EXPORT_SYMBOL_GPL net/9p/9pnet 0x387546fc p9_client_xattrcreate +EXPORT_SYMBOL_GPL net/9p/9pnet 0x9ea25b9c p9_client_xattrwalk +EXPORT_SYMBOL_GPL net/atm/atm 0xb09faf79 register_atmdevice_notifier +EXPORT_SYMBOL_GPL net/atm/atm 0xcfb6a3da unregister_atmdevice_notifier +EXPORT_SYMBOL_GPL net/ax25/ax25 0x78c1a26a ax25_register_pid +EXPORT_SYMBOL_GPL net/ax25/ax25 0xac93ae05 ax25_bcast +EXPORT_SYMBOL_GPL net/ax25/ax25 0xaeb7451e ax25_defaddr +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0afb94b8 br_port_flag_is_set +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0bbbc7c5 br_multicast_list_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x0f889f8d nf_br_ops +EXPORT_SYMBOL_GPL net/bridge/bridge 0x1013f806 br_fdb_clear_offload +EXPORT_SYMBOL_GPL net/bridge/bridge 0x159d2ca5 br_mst_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x276cc55f br_mst_get_state +EXPORT_SYMBOL_GPL net/bridge/bridge 0x2cd32d9b br_multicast_has_querier_anywhere +EXPORT_SYMBOL_GPL net/bridge/bridge 0x34ed7427 br_vlan_get_pvid +EXPORT_SYMBOL_GPL net/bridge/bridge 0x4e576bde br_multicast_has_router_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0x52548797 br_vlan_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x573a6002 br_get_ageing_time +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6259b427 br_vlan_get_pvid_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0x6538e38e br_multicast_enabled +EXPORT_SYMBOL_GPL net/bridge/bridge 0x701db297 br_dev_queue_push_xmit +EXPORT_SYMBOL_GPL net/bridge/bridge 0x79a5677a br_fdb_find_port +EXPORT_SYMBOL_GPL net/bridge/bridge 0x8e7246c0 br_vlan_get_proto +EXPORT_SYMBOL_GPL net/bridge/bridge 0x91b295af br_forward +EXPORT_SYMBOL_GPL net/bridge/bridge 0x97126f8d br_vlan_get_info_rcu +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb302e2c6 br_vlan_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xb9dc4a46 br_multicast_router +EXPORT_SYMBOL_GPL net/bridge/bridge 0xc170f616 br_forward_finish +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd0acce96 br_port_get_stp_state +EXPORT_SYMBOL_GPL net/bridge/bridge 0xd2296e87 br_multicast_has_querier_adjacent +EXPORT_SYMBOL_GPL net/bridge/bridge 0xda73bc3d br_mst_get_info +EXPORT_SYMBOL_GPL net/bridge/bridge 0xf72365a1 br_handle_frame_finish +EXPORT_SYMBOL_GPL net/dccp/dccp 0x1693b146 dccp_recvmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0x182ec2bf dccp_ackvec_parsed_add +EXPORT_SYMBOL_GPL net/dccp/dccp 0x20faa19f dccp_reqsk_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2c2ab18e dccp_done +EXPORT_SYMBOL_GPL net/dccp/dccp 0x2e8ba3af dccp_feat_signal_nn_change +EXPORT_SYMBOL_GPL net/dccp/dccp 0x38781f42 dccp_sync_mss +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3cda6513 dccp_feat_nn_get +EXPORT_SYMBOL_GPL net/dccp/dccp 0x3e7be468 dccp_create_openreq_child +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4362f7c1 dccp_rcv_state_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x43f2ca7c dccp_ioctl +EXPORT_SYMBOL_GPL net/dccp/dccp 0x45ad5b6b dccp_close +EXPORT_SYMBOL_GPL net/dccp/dccp 0x47c31237 dccp_rcv_established +EXPORT_SYMBOL_GPL net/dccp/dccp 0x48bc9657 dccp_destroy_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0x4cdd391d dccp_feat_list_purge +EXPORT_SYMBOL_GPL net/dccp/dccp 0x542594ba inet_dccp_listen +EXPORT_SYMBOL_GPL net/dccp/dccp 0x546bd5f3 dccp_setsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0x5697af0f dccp_poll +EXPORT_SYMBOL_GPL net/dccp/dccp 0x59814a84 dccp_statistics +EXPORT_SYMBOL_GPL net/dccp/dccp 0x742b2666 dccp_child_process +EXPORT_SYMBOL_GPL net/dccp/dccp 0x80993155 dccp_timestamp +EXPORT_SYMBOL_GPL net/dccp/dccp 0x8171199a dccp_death_row +EXPORT_SYMBOL_GPL net/dccp/dccp 0x86be7924 dccp_packet_name +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9598d24d dccp_ackvec_parsed_cleanup +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9c327c8e dccp_disconnect +EXPORT_SYMBOL_GPL net/dccp/dccp 0x9e32514a dccp_sendmsg +EXPORT_SYMBOL_GPL net/dccp/dccp 0xac737f80 dccp_parse_options +EXPORT_SYMBOL_GPL net/dccp/dccp 0xad7ec447 dccp_send_sync +EXPORT_SYMBOL_GPL net/dccp/dccp 0xaef223c5 dccp_check_req +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb0dbf658 dccp_insert_option +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb1062ef1 dccp_make_response +EXPORT_SYMBOL_GPL net/dccp/dccp 0xb86c45a5 dccp_connect +EXPORT_SYMBOL_GPL net/dccp/dccp 0xcc88eec6 dccp_init_sock +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd2c2b312 dccp_send_ack +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd65cbc42 dccp_ctl_make_reset +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd75b7072 dccp_orphan_count +EXPORT_SYMBOL_GPL net/dccp/dccp 0xd7cdb975 dccp_hashinfo +EXPORT_SYMBOL_GPL net/dccp/dccp 0xdbe4b941 dccp_destruct_common +EXPORT_SYMBOL_GPL net/dccp/dccp 0xee29f69c dccp_getsockopt +EXPORT_SYMBOL_GPL net/dccp/dccp 0xf4ec72d4 dccp_set_state +EXPORT_SYMBOL_GPL net/dccp/dccp 0xfb4bd1fd dccp_reqsk_init +EXPORT_SYMBOL_GPL net/dccp/dccp 0xffc3644a dccp_shutdown +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x23d1d56e dccp_v4_connect +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x4c149395 dccp_invalid_packet +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x6be582c1 dccp_v4_request_recv_sock +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x74dbf5f3 dccp_v4_send_check +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0x808d4b08 dccp_v4_conn_request +EXPORT_SYMBOL_GPL net/dccp/dccp_ipv4 0xf065c44a dccp_v4_do_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x02d84c37 dsa_register_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x0c6039ac dsa_flush_workqueue +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x1416773d dsa_switch_resume +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x179c3203 dsa_tag_drivers_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x1810e35f dsa_fdb_present_in_other_db +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x1d4186f6 dsa_devlink_region_create +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x242cbe58 dsa_8021q_rcv +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x2adf3501 dsa_slave_dev_check +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3a50a2ef dsa_tag_8021q_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3c1b004d dsa_devlink_params_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x3f102f7d dsa_tag_8021q_bridge_leave +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x417d1fed dsa_8021q_rx_switch_id +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x42bd27e7 dsa_switch_find +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x42dabac3 dsa_switch_shutdown +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x45ca5090 dsa_tag_8021q_bridge_vid +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x7de9a779 dsa_devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x8216b0d7 dsa_tag_8021q_bridge_join +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0x9e59271d dsa_8021q_rx_source_port +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa0d45c5a dsa_devlink_resource_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa89048c0 dsa_mdb_present_in_other_db +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xa8d42069 dsa_unregister_switch +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xab16aa42 dsa_tag_drivers_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb46fc619 dsa_devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb52d8065 dsa_devlink_params_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xb7f244be dsa_switch_suspend +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbbc4dd7e dsa_8021q_xmit +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbcb09eef dsa_devlink_resources_unregister +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xbe60c7ba dsa_port_from_netdev +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc23e8d5f dsa_devlink_region_destroy +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xc5f82759 dsa_enqueue_skb +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcdf1ac5e dsa_devlink_port_region_create +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xcf9ead67 dsa_tag_8021q_standalone_vid +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd077e855 dsa_devlink_param_get +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd52128a6 dsa_port_phylink_mac_change +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xd984e29e dsa_tag_8021q_register +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf13e1803 vid_is_dsa_8021q +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xf617db5a dsa_tag_8021q_find_port_by_vbid +EXPORT_SYMBOL_GPL net/dsa/dsa_core 0xfd3e2b67 dsa_devlink_param_set +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x04021e27 ieee802154_hdr_push +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x099d3eb1 ieee802154_hdr_peek_addrs +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x1a6883ae ieee802154_hdr_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x64ca3e51 nl802154_scan_started +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x7a26ad73 nl802154_beaconing_done +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0x87e2553b ieee802154_max_payload +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xaa3ee6b9 nl802154_scan_event +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xab230c7f ieee802154_hdr_peek +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xac96165c ieee802154_mac_cmd_pl_pull +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xb810b0a3 ieee802154_beacon_push +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xf0e8df9a nl802154_scan_done +EXPORT_SYMBOL_GPL net/ieee802154/ieee802154 0xf5d64541 ieee802154_mac_cmd_push +EXPORT_SYMBOL_GPL net/ife/ife 0x5a2855b6 ife_encode +EXPORT_SYMBOL_GPL net/ife/ife 0x6210e871 ife_tlv_meta_next +EXPORT_SYMBOL_GPL net/ife/ife 0x67db2029 ife_tlv_meta_decode +EXPORT_SYMBOL_GPL net/ife/ife 0x77faad4f ife_decode +EXPORT_SYMBOL_GPL net/ife/ife 0xe7888e98 ife_tlv_meta_encode +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x0442ad63 esp_output_tail +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x65afe23b esp_output_head +EXPORT_SYMBOL_GPL net/ipv4/esp4 0x7bc38b53 esp_input_done2 +EXPORT_SYMBOL_GPL net/ipv4/gre 0x3f7c6325 gre_del_protocol +EXPORT_SYMBOL_GPL net/ipv4/gre 0xb7611ac8 gre_add_protocol +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x13eff439 inet_diag_find_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x22431556 inet_diag_msg_common_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x50a6da20 inet_diag_register +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x56359c30 inet_diag_msg_attrs_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x5eaa2df6 inet_diag_dump_icsk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x6469f0b0 inet_diag_unregister +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0x7ec9139d inet_diag_bc_sk +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xdbe935fe inet_sk_diag_fill +EXPORT_SYMBOL_GPL net/ipv4/inet_diag 0xeb4d5866 inet_diag_dump_one_icsk +EXPORT_SYMBOL_GPL net/ipv4/ip_gre 0x840476e7 gretap_fb_dev_create +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x10bda648 ip_tunnel_encap_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x3048f772 ip_tunnel_changelink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x34659f48 ip_tunnel_delete_nets +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x375aae18 ip_tunnel_dellink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x4d7bd2e4 ip_tunnel_newlink +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x6ebed5b1 ip_tunnel_setup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x71a202f2 ip_tunnel_uninit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x84610b64 ip_tunnel_ctl +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x94ab3c61 __ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0x9934a498 ip_md_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xb0accb87 ip_tunnel_xmit +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xc334a2ec ip_tunnel_init +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xd654a62f ip_tunnel_init_net +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe11d31f2 ip_tunnel_lookup +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe16371f5 ip_tunnel_siocdevprivate +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xe6cfb2ec ip_tunnel_rcv +EXPORT_SYMBOL_GPL net/ipv4/ip_tunnel 0xee65815d ip_tunnel_change_mtu +EXPORT_SYMBOL_GPL net/ipv4/netfilter/arp_tables 0x6add86ef arpt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/ip_tables 0xa11ed967 ipt_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0x4e63e9dc nf_defrag_ipv4_disable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_defrag_ipv4 0xe1014660 nf_defrag_ipv4_enable +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_dup_ipv4 0x1163f7a8 nf_dup_ipv4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x0ee02eba nf_send_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x114037db nf_reject_skb_v4_unreach +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x20051aa0 nf_reject_ip_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x55e06e8a nf_reject_skb_v4_tcp_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0x7beb27dc nf_reject_iphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xbd22b99a nf_reject_ip_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_reject_ipv4 0xc28f7c29 nf_send_reset +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_socket_ipv4 0x5a16fe54 nf_sk_lookup_slow_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x2c0b66e3 nf_tproxy_get_sock_v4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0x4f709341 nf_tproxy_laddr4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nf_tproxy_ipv4 0xe453123e nf_tproxy_handle_time_wait4 +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xaf72f252 nft_fib4_eval_type +EXPORT_SYMBOL_GPL net/ipv4/netfilter/nft_fib_ipv4 0xdfe575eb nft_fib4_eval +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x52ae7af2 tcp_vegas_get_info +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0x5eb2f021 tcp_vegas_cwnd_event +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xb97cc44c tcp_vegas_state +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xba3bba9c tcp_vegas_pkts_acked +EXPORT_SYMBOL_GPL net/ipv4/tcp_vegas 0xcaddccb5 tcp_vegas_init +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x456e4ce8 udp_tunnel_notify_add_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0x48e35435 udp_tunnel_drop_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xa6f5796f udp_tunnel_sock_release +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xc750b3f9 udp_tunnel_xmit_skb +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xd54d72a9 udp_tun_rx_dst +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xd920ea5e setup_udp_tunnel_sock +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xe6ab39fc udp_tunnel_push_rx_port +EXPORT_SYMBOL_GPL net/ipv4/udp_tunnel 0xfd2c983b udp_tunnel_notify_del_rx_port +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x4a8dbbea esp6_output_tail +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x63ae0ab8 esp6_input_done2 +EXPORT_SYMBOL_GPL net/ipv6/esp6 0x8b11ed90 esp6_output_head +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x50e0f43d ip6_tnl_rcv_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x5a98f3bf ip6_tnl_encap_setup +EXPORT_SYMBOL_GPL net/ipv6/ip6_tunnel 0x74c2fd2c ip6_tnl_xmit_ctl +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0x27f3d07f udp_tunnel6_xmit_skb +EXPORT_SYMBOL_GPL net/ipv6/ip6_udp_tunnel 0xb3203af3 udp_sock_create6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/ip6_tables 0x8678f75c ip6t_alloc_initial_table +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x626bd1d8 nf_ct_frag6_gather +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0x7215b05f nf_defrag_ipv6_disable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_defrag_ipv6 0xea3ab237 nf_defrag_ipv6_enable +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_dup_ipv6 0x518a1fa0 nf_dup_ipv6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x1899048a nf_reject_ip6_tcphdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x25c42c6e nf_reject_skb_v6_unreach +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x35c6d937 nf_send_unreach6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0x82833160 nf_reject_ip6_tcphdr_get +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xb49c9424 nf_send_reset6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xd9e1eae4 nf_reject_ip6hdr_put +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_reject_ipv6 0xec0ea914 nf_reject_skb_v6_tcp_reset +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_socket_ipv6 0xdd715f3d nf_sk_lookup_slow_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x085ff53a nf_tproxy_laddr6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x44da0bbd nf_tproxy_get_sock_v6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nf_tproxy_ipv6 0x9b6f58df nf_tproxy_handle_time_wait6 +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0xa9f2074f nft_fib6_eval +EXPORT_SYMBOL_GPL net/ipv6/netfilter/nft_fib_ipv6 0xc1e1f01a nft_fib6_eval_type +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x14d992b6 l2tp_tunnel_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x1e080e92 l2tp_session_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x20822f87 l2tp_sk_to_tunnel +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x56d73254 l2tp_session_delete +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5e981f17 l2tp_recv_common +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x5f03be3c l2tp_tunnel_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x7078f09f l2tp_tunnel_get_session +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x70931162 l2tp_session_dec_refcount +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x82d0ca6a l2tp_tunnel_register +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0x9d618a74 l2tp_session_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xa228b284 l2tp_session_get_nth +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb11d1b1c l2tp_session_set_header_len +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xb8f990ce l2tp_tunnel_dec_refcount +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xc0dd3c5e l2tp_tunnel_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xcd23995a l2tp_tunnel_inc_refcount +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xd8cdeda3 l2tp_session_get +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe39c2f08 l2tp_session_inc_refcount +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe59ca719 l2tp_session_get_by_ifname +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe5ec9c92 l2tp_udp_encap_recv +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xe7663ffe l2tp_xmit_skb +EXPORT_SYMBOL_GPL net/l2tp/l2tp_core 0xead4990e l2tp_tunnel_create +EXPORT_SYMBOL_GPL net/l2tp/l2tp_ip 0x367dc78b l2tp_ioctl +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x2135fe3d l2tp_nl_register_ops +EXPORT_SYMBOL_GPL net/l2tp/l2tp_netlink 0x337f2432 l2tp_nl_unregister_ops +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x0e153b93 ieee80211_find_sta_by_ifaddr +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x15fbbb7f ieee80211_color_change_finish +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x16ad7c5f ieee80211_tkip_add_iv +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1b7ba161 ieee80211_remain_on_channel_expired +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x1dab0efe ieee80211_set_key_rx_seq +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x3b049dce ieee80211_find_sta_by_link_addrs +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x4039eb3a ieee80211_iterate_interfaces +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x5ac4802f ieee80211_iter_chan_contexts_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6658417a ieee80211_hw_restart_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x6cc858c3 ieee80211_vif_to_wdev +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x742f1787 ieee80211_update_mu_groups +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x79bbe1f3 ieee80211_set_active_links +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x83b87ced ieee80211_set_active_links_async +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x885256ce wdev_to_ieee80211_vif +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9413671d ieee80211_iterate_stations_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9446ae17 ieee80211_calc_rx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x960983bd ieee80211_ready_on_channel +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x989fd9da ieee80211_request_smps +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0x9e1c1431 ieee80211_key_replay +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xad224e14 ieee80211_obss_color_collision_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xadd537d5 ieee80211_gtk_rekey_add +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb1a8b19c ieee80211_calc_tx_airtime +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xb3227bfc ieee80211_gtk_rekey_notify +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xba0780d2 ieee80211_resume_disconnect +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd004ea88 ieee80211_key_mic_failure +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd1b64d64 ieee80211_ave_rssi +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xd6db4916 ieee80211_iterate_active_interfaces_mtx +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xe18d7e29 ieee80211_iterate_active_interfaces_atomic +EXPORT_SYMBOL_GPL net/mac80211/mac80211 0xea792270 ieee80211_remove_key +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x1e16ba55 nla_put_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x25126a86 mpls_pkt_too_big +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x6d39053c mpls_output_possible +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0x8ee316eb nla_get_labels +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xd4961a9f mpls_dev_mtu +EXPORT_SYMBOL_GPL net/mpls/mpls_router 0xf85717a1 mpls_stats_inc_outucastpkts +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1a1b1e2d ip_set_get_byname +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x1abaeed7 ip_set_put_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x22d966c6 ip_set_range_to_cidr +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x2d718465 ip_set_name_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x397f6231 ip_set_free +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x4e255070 ip_set_add +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x520d59d5 ip_set_type_register +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x562e5a48 ip_set_get_ip4_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x76765327 ip_set_put_flags +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x7924b6de ip_set_hostmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x81fff2d1 ip_set_netmask_map +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8714b4b6 ip_set_type_unregister +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x878ffb70 ip_set_nfnl_put +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x89530e02 ip_set_nfnl_get_byindex +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8daf823d ip_set_get_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x8f4587ec ip_set_del +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x98293209 ip_set_test +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0x9e98722b ip_set_get_ipaddr6 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa293f8a6 ip_set_get_ipaddr4 +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa8c93b91 ip_set_init_comment +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xa9e498e4 ip_set_match_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xb7e0f72e ip_set_elem_len +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xbe3d3c45 ip_set_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xc2f402f6 ip_set_get_ip6_port +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xf3b4d4ae ip_set_alloc +EXPORT_SYMBOL_GPL net/netfilter/ipset/ip_set 0xfa588cce ip_set_put_extensions +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x44df15e0 ip_vs_conn_in_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x6ada3ab1 ip_vs_conn_out_get_proto +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0x91c67d87 register_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/ipvs/ip_vs 0xa527737b unregister_ip_vs_pe +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x07357837 nf_conncount_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x14f09b25 nf_conncount_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x3ebd6830 nf_conncount_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x4276ac25 nf_conncount_gc_list +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0x9df96bf6 nf_conncount_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xded40268 nf_conncount_list_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conncount 0xf2a1dbb9 nf_conncount_cache_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x006c030f nf_ct_seq_offset +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01a694c0 nf_ct_bridge_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x01b19ffb nf_ct_gre_keymap_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0460ec0f nf_ct_invert_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x054925f6 nf_ct_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x057f0272 nf_ct_get_tuplepr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0662701b nf_ct_tcp_seqadj_set +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0aacc241 nf_conntrack_eventmask_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0bc00f80 nf_nat_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0dee857e nf_nat_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0ed5e22f nf_connlabels_replace +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x0f06b8e0 nf_ct_expect_iterate_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x12b11779 nf_ct_helper_expectfn_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x18601e67 nf_conntrack_unregister_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1b36b3ce __nf_ct_change_status +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1e61d568 nf_ct_deliver_cached_events +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1ebb2a5f __nf_conntrack_helper_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x1fa3291e nf_ct_tmpl_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x2348282b nf_connlabels_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x289c3714 nf_ct_alloc_hashtable +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x28eff409 nf_conntrack_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x31a76086 nf_ct_skb_network_trim +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x35451532 nf_ct_untimeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x397e0874 nf_ct_gre_keymap_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x399ccc15 nf_conntrack_alter_reply +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b1e5900 nf_ct_add_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3b2eb7e8 nf_ct_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x3c837308 nf_conntrack_count +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x452187f7 nf_conntrack_helper_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4bbc074f nf_ct_bridge_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x4dff288b nf_ct_seq_adjust +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5790d7dc nf_conntrack_helpers_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x599eaa1b nf_ct_remove_expect +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x5b58de9d __nf_conntrack_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x61180cd9 nf_connlabels_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x64286493 nf_ct_acct_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x67547a09 nf_ct_netns_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x691e338f nf_conntrack_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x693c3961 nf_ct_helper_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6aa4b7ae nf_ct_kill_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x6ea0496d nf_ct_expect_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x730794b7 nf_conntrack_tuple_taken +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x752f0aa2 nf_ct_port_nlattr_to_tuple +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x76b8c065 nf_confirm +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7709d318 nf_ct_helper_expectfn_find_by_name +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x7caac447 nf_ct_set_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8080ee6f nf_ct_get_id +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x808f6f64 nf_ct_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x874a77f1 nf_conntrack_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c059efb nf_ct_expect_iterate_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8c4735ec nf_ct_iterate_cleanup_net +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8d3915b3 nf_ct_helper_expectfn_find_by_symbol +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x8ffe7e89 nf_conntrack_htable_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x92e28c99 nf_conntrack_hash_check_insert +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9582c855 nf_ct_expect_related_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x97c74ad9 nf_ct_ecache_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9adb7399 nf_conntrack_expect_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9da6c443 __nf_ct_refresh_acct +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9e2034f8 nf_ct_helper_expectfn_unregister +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0x9ea899a2 nf_conntrack_register_notifier +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa60ad116 nf_ct_helper_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xa66cc04b nf_nat_helper_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xad7e0522 nf_conntrack_helper_try_module_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xaf0847f0 nf_conntrack_locks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb2cfb111 nf_ct_delete +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb39356f5 nf_ct_port_nla_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb681419b nf_conn_pernet_ecache +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb697805b nf_ct_destroy_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xb96d774a nf_ct_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbc7e70bf nf_ct_timeout_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbcd4f6fe nf_ct_expect_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xbd9b5343 nf_ct_unlink_expect_report +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc18ac88d nf_ct_expect_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc27aeeef nf_l4proto_log_invalid +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc40f284c nf_ct_helper_hsize +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc4da63a9 __nf_ct_change_timeout +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc60180a2 __nf_ct_try_assign_helper +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xc871058f nf_conntrack_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcba902b2 nf_ct_expect_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcd74c073 nf_nat_helper_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xce3d9285 nf_ct_expect_find_get +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xcecf7be4 nf_ct_helper_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd2b7cdbc nf_conntrack_helpers_register +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd2e0f16c nf_ct_unexpect_related +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd505c3e0 nf_ct_port_nlattr_tuple_size +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd70badf3 nf_ct_port_tuple_to_nlattr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xd8888afe nf_ct_helper_log +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdba7326b nf_conntrack_lock +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xdcf699c3 nf_ct_netns_put +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe16b5533 nf_ct_handle_fragments +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe23c94dc nf_ct_tmpl_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe4444cee nf_conntrack_free +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe74dd90c nf_ct_l4proto_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xe8ea30fc __nf_ct_expect_find +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xebe427c0 nf_conntrack_in +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xec8beba6 nf_ct_expect_hash +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xedee7038 nf_ct_seqadj_init +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf38bcdf3 nf_conntrack_max +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xf91e35ad nf_conntrack_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfab401a9 nf_ct_change_status_common +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack 0xfd588a22 nf_ct_remove_expectations +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_amanda 0x0cd81aba nf_nat_amanda_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_broadcast 0x677e6ce1 nf_conntrack_broadcast_help +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_ftp 0xa7ce255b nf_nat_ftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x85b147cc get_h225_addr +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_h323 0x8bcf40d3 nfct_h323_nat_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_irc 0xf40a742f nf_nat_irc_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_pptp 0x417bf1f4 nf_nat_pptp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x07c5ea1c ct_sip_get_sdp_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0x90d6d53a ct_sip_parse_numerical_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xaf4a1429 ct_sip_parse_request +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xb4ff7b69 ct_sip_parse_address_param +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe1210393 nf_nat_sip_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xe6e4a01d ct_sip_parse_header_uri +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_sip 0xf3c6db00 ct_sip_get_header +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_snmp 0x32e978ec nf_nat_snmp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_conntrack_tftp 0xe6d1a035 nf_nat_tftp_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x45445f78 nf_dup_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0x7f3f33b1 nf_fwd_netdev_egress +EXPORT_SYMBOL_GPL net/netfilter/nf_dup_netdev 0xd8de15b9 nft_fwd_dup_netdev_offload +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x0cccc088 nf_flow_dnat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x12658132 flow_offload_add +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x241d31f3 nf_flow_snat_port +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x30975fa8 nf_flow_table_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x492b92bf nf_flow_offload_ip_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7671ca87 nf_flow_table_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x7d28a105 nf_flow_table_offload_setup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x885d118a flow_offload_free +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x91551226 flow_offload_alloc +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9a6a930e nf_flow_table_cleanup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0x9ea6a9db flow_offload_refresh +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xb928a6bb flow_offload_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xbaa85a42 nf_flow_rule_route_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xc3c1b5f5 nf_flow_rule_route_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xde136ce0 flow_offload_route_init +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xe47f8953 nf_flow_offload_ipv6_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_flow_table 0xf117ee1d flow_offload_teardown +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x28e1ed7d nf_nat_ipv6_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x2948c43d nf_nat_ipv6_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x3bc17c49 nf_nat_masquerade_inet_register_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x52c51c77 nf_nat_redirect_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x6d986dbb nf_nat_packet +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x7b2b9ac3 nf_nat_ipv4_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x85691e37 nf_nat_masquerade_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x86330c74 nf_nat_icmpv6_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9340b349 nf_nat_redirect_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9c5ea4da nf_nat_inet_register_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0x9d6ff05e nf_nat_ipv4_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xa93ad377 nf_nat_alloc_null_binding +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xaf1e74b6 nf_nat_icmp_reply_translation +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbb164c6e nf_nat_masquerade_ipv4 +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xbb6f07ed nf_nat_exp_find_port +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xc70ea398 nf_nat_inet_unregister_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xd9c25654 nf_nat_masquerade_inet_unregister_notifiers +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe7bd220b nf_ct_nat +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xe7c3fcca nf_nat_inet_fn +EXPORT_SYMBOL_GPL net/netfilter/nf_nat 0xf847a27a nf_ct_nat_ext_add +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x0e29dd66 nf_synproxy_ipv6_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1bdcb59e synproxy_send_client_synack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f099794 synproxy_init_timestamp_cookie +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x1f344dc6 nf_synproxy_ipv6_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x535cbde8 synproxy_parse_options +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x86989007 ipv4_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x88860780 nf_synproxy_ipv4_fini +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x8cba1af5 synproxy_recv_client_ack_ipv6 +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x9845ad59 ipv6_synproxy_hook +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0x999b9720 nf_synproxy_ipv4_init +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xc6a45bb8 synproxy_send_client_synack +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xca9fc082 synproxy_net_id +EXPORT_SYMBOL_GPL net/netfilter/nf_synproxy_core 0xda20790f synproxy_recv_client_ack +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x00c79e46 nft_register_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x03e42efa nft_meta_set_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0848ec5f nft_set_catchall_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x09c75784 nft_do_chain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x0a3b6d95 nft_chain_validate_hooks +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1043e89f nft_meta_set_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x15508adf nft_unregister_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x17761cb1 nf_tables_deactivate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x1924db0b nft_meta_get_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x20c4fc2f nft_meta_get_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x27aba8c7 nft_unregister_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x303841ac __nft_release_basechain +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3251d762 nf_tables_trans_destroy_flush_work +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x3acacbd6 nft_chain_validate_dependency +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x41b71e65 nft_trace_enabled +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x48a508d6 nft_obj_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4b5c7675 nft_reg_track_cancel +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4cd0aa94 nft_register_chain_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x4cecbb60 nft_meta_policy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5382b401 nf_tables_destroy_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x5b573fc0 nft_request_module +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x61ae2a97 nft_register_obj +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x65070e94 nft_flowtable_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x6e8dcc0b nft_unregister_flowtable_type +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7693720c nft_meta_inner_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x76c1c2b0 nft_set_do_lookup +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7d0d8178 nft_unregister_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x7d201f0c nft_set_elem_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8979ee10 nft_chain_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x8cd32209 nft_data_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x953872da nft_register_expr +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0x98d9e3f1 nft_dump_register +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xa235a403 nft_obj_notify +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xadf55660 nft_meta_get_dump +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xae3be660 nft_meta_get_reduce +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb08ec4da nft_meta_set_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb2b672e6 nft_meta_set_validate +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb707a861 nft_reg_track_update +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xb78b4b66 nft_set_lookup_global +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc264bb51 nf_tables_deactivate_flowtable +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc4031560 nft_ct_get_fast_eval +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xc724adda nft_expr_reduce_bitwise +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xcc14f267 nf_tables_activate_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd682ed7f nft_parse_register_store +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xd8476432 nf_tables_bind_set +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xde57b5f5 nft_parse_u32_check +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe2b8cc13 nft_parse_register_load +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xe5472ee0 nft_data_init +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xea3ec245 nft_meta_set_destroy +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xed84fe5b nft_data_release +EXPORT_SYMBOL_GPL net/netfilter/nf_tables 0xf0223a4c __nft_reg_track_cancel +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x03ba379e nfnetlink_send +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x0dbc4bd7 nfnetlink_broadcast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x4a7022f2 nfnetlink_set_err +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x5ce3b588 nfnl_lock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x7ccfd9dd nfnetlink_has_listeners +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0x8c652c18 nfnetlink_unicast +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xad3a512b nfnetlink_subsys_register +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xb47ad12f nfnetlink_subsys_unregister +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink 0xdb065657 nfnl_unlock +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0x40050f8a nfnl_acct_find_get +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xb11991f6 nfnl_acct_overquota +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xbecf5d14 nfnl_acct_put +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_acct 0xf093f43a nfnl_acct_update +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x2f0df8d9 nf_osf_match +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x35eff5e0 nf_osf_fingers +EXPORT_SYMBOL_GPL net/netfilter/nfnetlink_osf 0x562bbe37 nf_osf_find +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x0a5a3ce7 nft_fib_reduce +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x7fe78c9a nft_fib_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0x98709756 nft_fib_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xb189c295 nft_fib_store_result +EXPORT_SYMBOL_GPL net/netfilter/nft_fib 0xdaed881a nft_fib_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x1de558c1 nft_reject_icmpv6_code +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x46f9e48e nft_reject_dump +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0x9d46ccf8 nft_reject_policy +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xc049a285 nft_reject_init +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xd2e87130 nft_reject_validate +EXPORT_SYMBOL_GPL net/netfilter/nft_reject 0xe2c84666 nft_reject_icmp_code +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x003ba23e xt_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x04e27719 xt_compat_flush_offsets +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0c1c76a3 xt_unregister_template +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x0c64eda9 xt_compat_match_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x1bf28e9d xt_compat_match_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x20c550f8 xt_request_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x3fca1fbf xt_hook_ops_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x44b02ff4 xt_compat_match_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x612435ba xt_compat_target_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x6f6c6864 xt_proto_fini +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7838d346 xt_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x7bce4603 xt_data_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x807d2b2c xt_recseq +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x823edea5 xt_compat_add_offset +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x8902ed36 xt_check_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9c995c69 xt_percpu_counter_alloc +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0x9f2b8f14 xt_request_find_target +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xa7c94f1d xt_compat_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xaef3d42f xt_compat_target_from_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xb9c80b3d xt_register_template +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbcb2f888 xt_register_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbf7b63cb xt_compat_target_to_user +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xbfacb837 xt_percpu_counter_free +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc46e7d12 xt_check_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xc7fae024 xt_compat_calc_jump +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xca2dcc33 xt_unregister_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcc01ab46 xt_find_table_lock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xcd75ee09 xt_replace_table +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd1e246a2 xt_compat_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xd3fcc511 xt_tee_enabled +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xddf68fc6 xt_find_revision +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xe5fcde5a xt_request_find_match +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf33e7372 xt_table_unlock +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xf6abeb06 xt_copy_counters +EXPORT_SYMBOL_GPL net/netfilter/x_tables 0xfc3f7ec6 xt_proto_init +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xb030b6ec xt_rateest_put +EXPORT_SYMBOL_GPL net/netfilter/xt_RATEEST 0xe57c3f7d xt_rateest_lookup +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0x33585c9f nci_spi_read +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xa3f15d5d nci_spi_send +EXPORT_SYMBOL_GPL net/nfc/nci/nci_spi 0xbb1fb579 nci_spi_allocate_spi +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0x94a06c66 nci_uart_unregister +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xd196744e nci_uart_set_config +EXPORT_SYMBOL_GPL net/nfc/nci/nci_uart 0xda1213ff nci_uart_register +EXPORT_SYMBOL_GPL net/nsh/nsh 0x33ab2051 nsh_pop +EXPORT_SYMBOL_GPL net/nsh/nsh 0x9cff8158 nsh_push +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x61a54bd8 ovs_vport_alloc +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x6c6ed6c5 ovs_vport_ops_unregister +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0x70125426 __ovs_vport_ops_register +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xb643eefa ovs_netdev_link +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xb7beb47d ovs_netdev_tunnel_destroy +EXPORT_SYMBOL_GPL net/openvswitch/openvswitch 0xe349f60a ovs_vport_free +EXPORT_SYMBOL_GPL net/psample/psample 0x2b2f9029 psample_group_take +EXPORT_SYMBOL_GPL net/psample/psample 0xbb6e85ab psample_sample_packet +EXPORT_SYMBOL_GPL net/psample/psample 0xe1ef2ca0 psample_group_put +EXPORT_SYMBOL_GPL net/psample/psample 0xea45cc59 psample_group_get +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0x8d25501f qrtr_ns_remove +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xa47e91ba qrtr_ns_init +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xb68de558 qrtr_endpoint_unregister +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xc6471199 qrtr_endpoint_post +EXPORT_SYMBOL_GPL net/qrtr/qrtr 0xf81ffd6f qrtr_endpoint_register +EXPORT_SYMBOL_GPL net/rds/rds 0x00a467af rds_wq +EXPORT_SYMBOL_GPL net/rds/rds 0x0ad197d8 rds_inc_init +EXPORT_SYMBOL_GPL net/rds/rds 0x1ea9c567 rds_atomic_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x20c5e653 rds_cong_map_updated +EXPORT_SYMBOL_GPL net/rds/rds 0x27386628 rds_conn_create_outgoing +EXPORT_SYMBOL_GPL net/rds/rds 0x27b334d9 rds_send_xmit +EXPORT_SYMBOL_GPL net/rds/rds 0x2b0d543c rds_message_add_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x340543de rds_info_deregister_func +EXPORT_SYMBOL_GPL net/rds/rds 0x36087aa4 rds_stats +EXPORT_SYMBOL_GPL net/rds/rds 0x41d4665d rds_info_register_func +EXPORT_SYMBOL_GPL net/rds/rds 0x45a4781e rds_addr_cmp +EXPORT_SYMBOL_GPL net/rds/rds 0x4866a058 rds_conn_path_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x571ecd28 rds_trans_unregister +EXPORT_SYMBOL_GPL net/rds/rds 0x582fe5cf rds_message_add_rdma_dest_extension +EXPORT_SYMBOL_GPL net/rds/rds 0x585f567b rds_message_populate_header +EXPORT_SYMBOL_GPL net/rds/rds 0x5fd08ee0 rds_connect_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x62b272de rds_send_path_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x6a3b6927 rds_for_each_conn_info +EXPORT_SYMBOL_GPL net/rds/rds 0x6a921dad rds_message_unmapped +EXPORT_SYMBOL_GPL net/rds/rds 0x6efed66c rds_message_addref +EXPORT_SYMBOL_GPL net/rds/rds 0x7df85ef1 rds_conn_destroy +EXPORT_SYMBOL_GPL net/rds/rds 0x837613a9 rds_recv_incoming +EXPORT_SYMBOL_GPL net/rds/rds 0x838b804f rds_conn_drop +EXPORT_SYMBOL_GPL net/rds/rds 0x85e4e520 rds_stats_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0x93098120 rds_conn_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0x93bc4b63 rds_inc_put +EXPORT_SYMBOL_GPL net/rds/rds 0x9862e7ca rds_message_put +EXPORT_SYMBOL_GPL net/rds/rds 0x993f4f62 rds_connect_path_complete +EXPORT_SYMBOL_GPL net/rds/rds 0x9b4a1696 rds_send_drop_acked +EXPORT_SYMBOL_GPL net/rds/rds 0x9dcbbbf0 rds_page_remainder_alloc +EXPORT_SYMBOL_GPL net/rds/rds 0xa4b63855 rds_trans_register +EXPORT_SYMBOL_GPL net/rds/rds 0xa510723a rds_send_ping +EXPORT_SYMBOL_GPL net/rds/rds 0xbf6e2167 rds_conn_create +EXPORT_SYMBOL_GPL net/rds/rds 0xc2dab779 rds_info_copy +EXPORT_SYMBOL_GPL net/rds/rds 0xccbaf60d rds_send_path_reset +EXPORT_SYMBOL_GPL net/rds/rds 0xe04246d3 rds_rdma_send_complete +EXPORT_SYMBOL_GPL net/rds/rds 0xf052a460 rds_conn_path_connect_if_down +EXPORT_SYMBOL_GPL net/rds/rds 0xfa590215 rds_inc_path_init +EXPORT_SYMBOL_GPL net/sched/sch_mqprio_lib 0x44b5c025 mqprio_validate_qopt +EXPORT_SYMBOL_GPL net/sched/sch_mqprio_lib 0xcede419b mqprio_fp_to_offload +EXPORT_SYMBOL_GPL net/sched/sch_mqprio_lib 0xdc012078 mqprio_qopt_reconstruct +EXPORT_SYMBOL_GPL net/sched/sch_pie 0x6ce9b467 pie_calculate_probability +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xad9b2367 pie_process_dequeue +EXPORT_SYMBOL_GPL net/sched/sch_pie 0xf9aefe50 pie_drop_early +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x16f8ba5d taprio_offload_get +EXPORT_SYMBOL_GPL net/sched/sch_taprio 0x6a6b1c12 taprio_offload_free +EXPORT_SYMBOL_GPL net/sctp/sctp 0x2a7c8cdf sctp_get_sctp_info +EXPORT_SYMBOL_GPL net/sctp/sctp 0x2e10022c sctp_for_each_endpoint +EXPORT_SYMBOL_GPL net/sctp/sctp 0x3bc1f628 sctp_transport_traverse_process +EXPORT_SYMBOL_GPL net/sctp/sctp 0xcaa5c3e1 sctp_transport_lookup_process +EXPORT_SYMBOL_GPL net/smc/smc 0x10b837ac smc_unhash_sk +EXPORT_SYMBOL_GPL net/smc/smc 0x2749040b smc_proto +EXPORT_SYMBOL_GPL net/smc/smc 0x6201ea1e smc_proto6 +EXPORT_SYMBOL_GPL net/smc/smc 0xda5a7586 smc_hash_sk +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x3044d520 gss_mech_unregister +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x38d3dce5 g_make_token_header +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x482ac5a4 g_token_size +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0x96f21b7b svcauth_gss_register_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbab83244 svcauth_gss_flavor +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xbec29fe5 gss_mech_register +EXPORT_SYMBOL_GPL net/sunrpc/auth_gss/auth_rpcgss 0xd7673035 g_verify_token_header +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x04efdfb1 rpc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0551ff22 sunrpc_destroy_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x05e807a9 xdr_encode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x065994f1 xdr_encode_opaque_fixed +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0680c3ef unix_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x06ec66e7 svc_rpcbind_set_version +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x075eefb1 xprt_setup_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x076a2e1f xprt_free_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x09c9646e rpc_alloc_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b2c1bcb sunrpc_cache_pipe_upcall_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0b789f5e xdr_stream_encode_opaque_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0beb4d87 xprt_wait_for_reply_request_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0c982a85 xdr_decode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0d250991 rpc_cancel_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x0f7eece4 xprt_alloc_slot +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1017ed6d rpc_wake_up_first +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1139a36d xdr_inline_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x11d15105 rpc_clnt_iterate_for_each_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1533e2bf rpc_prepare_reply_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15c240de auth_domain_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x15fb009a xprt_wait_for_buffer_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x16b9048f rpc_exit +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x183b70f6 svc_generic_rpcbind_set +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1946c4c5 rpc_count_iostats_metrics +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19546a44 svc_reserve +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x197f93ed rpc_switch_client_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x19cb8803 rpc_call_null +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c640299 csum_partial_copy_to_xdr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1c6fa162 cache_seq_start_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e119a79 rpcauth_get_pseudoflavor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1e9caf24 xprt_release_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1ef1982b xdr_reserve_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x1fa23bf0 rpc_call_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x21d1df30 __xdr_commit_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x226e35ea svc_xprt_enqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x226f5086 rpc_mkpipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22716715 xprt_reserve_xprt_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22e1da09 xdr_reserve_space_vec +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x22ea7e3f xdr_stream_move_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x23be715f rpc_force_rebind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2430d022 cache_destroy_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x24d1bca4 svc_fill_write_vector +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x251a241f rpc_clnt_swap_deactivate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x25626f8d rpc_d_lookup_sb +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x26f4f1b3 rpc_restart_call +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27248854 rpc_init_pipe_dir_head +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x27f4b2d4 xprt_request_get_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2919b156 xdr_decode_string_inplace +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2d57fead svc_reg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x2f53d1e3 rpc_sleep_on_priority_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x303bd5a7 rpc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x304bd60f rpc_clnt_show_stats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x30cb75af sunrpc_cache_lookup_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x313d74d2 rpc_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x31a89d59 rpc_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x324ed91a rpc_pipe_generic_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3416fe95 svc_exit_thread +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3494d121 svc_sock_update_bufs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x349f0a66 xdr_init_decode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34afd86b rpc_malloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34c85833 rpc_shutdown_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x34d184de rpc_wake_up_status +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35697e03 svc_rqst_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3599f298 rpc_init_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x35bf1c05 rpc_count_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x37ae035d rpc_wait_for_completion_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x387e1639 rpc_pipefs_notifier_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3a700944 svc_proc_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3e40f2db xdr_terminate_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3f9a2b0b rpcauth_get_gssinfo +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x3faf650e svc_age_temp_xprts_now +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x43cc39da rpc_mkpipe_dentry +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44219279 rpc_clnt_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4466f978 rpc_call_sync +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x44f6caae xdr_inline_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x46155ee2 xprt_release_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47d286c9 svc_xprt_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x47e8c823 rpc_num_bc_slots +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x491355f9 rpc_max_bc_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4920f9c2 rpcb_getport_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49526893 xdr_buf_from_iov +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49908834 xdr_write_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x49dce456 rpc_clnt_probe_trunked_xprts +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4acf1a98 rpcauth_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4afedab1 xprtiod_workqueue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4b24c955 auth_domain_lookup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4d9825c9 rpc_queue_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4dac77f0 xdr_encode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4e8f6ca7 sunrpc_net_id +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x4f13e08c svc_xprt_deferred_close +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x51a369d1 xdr_enter_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5317efca rpcauth_unwrap_resp_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x53445f68 nlm_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x543118e8 svc_xprt_destroy_all +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x549c0738 rpc_ntop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5827ce04 svc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x59e19751 xdr_stream_zero +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5a45ba31 svc_auth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5d84c9ce rpcauth_lookupcred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5dadb68a rpcauth_lookup_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5e4e710a svc_xprt_received +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5ec95235 rpc_clnt_manage_trunked_xprts +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x5f7943d5 rpc_call_start +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x609202f9 rpc_task_gfp_mask +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x636ad9e4 xprt_complete_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x642c8406 rpc_restart_call_prepare +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6564442e rpc_put_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x65ba1f0c rpc_max_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x66ed2439 rpc_destroy_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6761a784 xprt_reconnect_delay +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x67c89f41 rpc_remove_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x68cc2ed7 cache_seq_stop_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6a312695 gssd_running +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6dc0311c svc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x6e485312 rpcauth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70b136fb svc_recv +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x70f21d6e svc_set_num_threads +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x714e3025 rpc_run_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7181efc4 sunrpc_cache_unregister_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71bc40e3 rpc_wake_up +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x71fa908a cache_flush +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7271e246 xprt_unlock_connect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x72d0a518 rpc_peeraddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x73465920 rpc_clnt_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x74c1cb8d xdr_init_encode_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7691837d svc_encode_result_payload +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78816619 xdr_decode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x78bc8941 rpc_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b1fb119 xprt_unregister_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7b224c9c svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7c2cafc5 xprt_disconnect_done +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7de53067 rpc_init_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e0953cb rpc_bind_new_program +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7e1c5123 rpc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f0424f6 sunrpc_cache_unhash +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7f5dcc1b rpcauth_init_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x7ff47fd6 cache_register_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x816ccc8f svc_fill_symlink_pathname +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81a05906 svcauth_unix_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x81e3fe57 xprt_adjust_cwnd +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8434b853 xprt_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8623c4de rpc_clone_client_set_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88ce4e4d xdr_read_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x88dca730 rpcauth_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x890d2191 rpc_sleep_on_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x89ba0148 rpc_task_release_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b1a68a5 svc_authenticate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b400ebc xdr_stream_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8b79f65b svc_auth_register +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8ceaa4ce xprt_add_backlog +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8e5288ea rpc_clnt_xprt_switch_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8f3fe8df svc_generic_init_request +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x8fa8c605 xprt_wake_up_backlog +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x908c8ca0 svc_drop +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x90a657df xdr_page_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x927ee7cb rpc_put_task_async +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92bab492 bc_svc_process +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x92d165f8 rpc_clnt_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9390c727 _copy_from_pages +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x947200f3 rpcauth_wrap_req_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94e9fd41 svc_rqst_replace_page +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x94fd99cf rpc_peeraddr2str +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x956e6705 svc_proc_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x95e5e315 xprt_reconnect_backoff +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9670b5a1 rpc_free_iostats +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x97bfb6be xdr_stream_pos +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x98b3bd0f xdr_init_encode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99839a34 sunrpc_cache_update +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x99aee353 rpc_init_priority_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9a513af0 rpc_clone_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9aec5b24 xprt_lookup_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9c0902be rpc_clnt_xprt_switch_has_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d373fcf xprt_unpin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9d8f0631 rpc_sleep_on +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0x9f08d71d svc_addsock +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1b18bd1 xdr_buf_subsegment +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa1d28ca3 svc_bind +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa23e4b0d xdr_stream_decode_opaque_auth +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa28b49c3 svc_xprt_copy_addrs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2c305c4 cache_check +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa2db734b xdr_stream_decode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa31638ee rpc_find_or_alloc_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa50597a4 rpc_get_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa76bf85a cache_unregister_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xa823c3a0 xprt_force_disconnect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xabb8f654 sunrpc_cache_register_pipefs +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac797671 svc_xprt_init +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xac8df347 xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf5bf6ef nfs_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xaf62da17 xprt_reserve_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xafc2d1e4 rpc_wake_up_queued_task +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb1154834 xprt_pin_rqst +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb4e8dff9 xprt_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb51a3724 rpc_pipefs_notifier_unregister +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb5445b2f xdr_process_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6bd414d put_rpccred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb6e5fedf rpc_killall_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xb93bb6f4 svc_xprt_names +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbb8bca49 svc_create_pooled +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbc8f1179 xprt_release_rqst_cong +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbcf42f80 rpcauth_init_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbd4761c5 xprt_destroy_backchannel +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf4f7322 xprt_wake_pending_tasks +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf695db9 rpc_set_connect_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf76134e auth_domain_find +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbf9d1b96 nfsd_debug +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xbfc530b8 svc_xprt_close +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc0908dd0 svc_destroy +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12435e3 rpc_calc_rto +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc12f7457 rpc_task_timeout +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5ddf827 rpc_setbufsize +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc5e58bc0 rpc_clnt_xprt_switch_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc71207fb read_bytes_from_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc8e96dea qword_addhex +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xc98154ad svc_find_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcb2a3d11 xdr_truncate_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcc5d6330 xdr_set_pagelen +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcccb44c8 svc_rqst_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xccf0b41c svc_xprt_put +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce200a95 xdr_stream_decode_string +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xce678a59 xdr_decode_netobj +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xcfd6ba9f rpc_localaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd0632413 xprt_wait_for_reply_request_def +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1391663 rpc_pton +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd1c1aa20 xdr_encode_word +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd2508b65 rpc_clnt_swap_activate +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd3479e8c xprt_lock_connect +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd38bbcad rpcauth_destroy_credcache +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd6ded712 svcauth_unix_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd71c5d40 write_bytes_to_xdr_buf +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8d366d4 svc_create +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8e1e11f xprt_alloc +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xd8ebe7fd svc_seq_show +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdbc95a49 svc_print_addr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdc01c5d8 xprt_free +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdd691402 xprt_find_transport_ident +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdeb39b48 rpc_destroy_pipe_data +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdec35e08 rpc_unlink +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xdedf0f3a sunrpc_init_cache_detail +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe14dcf3e cache_seq_next_rcu +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe2603eab cache_purge +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5919cb1 xdr_encode_opaque +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe5d3e2c5 sunrpc_cache_pipe_upcall +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8996395 svc_rpcb_setup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe8a8e89b xprt_register_transport +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xe97f4ce5 qword_get +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xec3128e5 rpc_put_sb_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xecaf56e1 rpc_clnt_xprt_switch_remove_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xedcf6be4 qword_add +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xee7fbd70 xdr_init_decode +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xeeacab69 rpc_update_rtt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf05d3c5e xdr_stream_decode_opaque_dup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf092efda rpc_sleep_on_priority +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf0b7775d rpc_init_wait_queue +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf50c52b1 rpc_add_pipe_dir_object +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf65b9e59 svc_rpcb_cleanup +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf72bee88 cache_create_net +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7724653 svc_unreg_xprt_class +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf78e3f3d rpc_release_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf7c866ca rpc_machine_cred +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf8d9b827 svc_set_client +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xf9f122a2 xprt_write_space +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfa9f61e3 rpc_wake_up_next +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfafbf84a xdr_encode_array2 +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfc4c18a8 rpcauth_stringify_acceptor +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfd1293da rpc_uaddr2sockaddr +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfde633dd rpc_clnt_setup_test_and_add_xprt +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe08525b rpc_net_ns +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xfe667686 xdr_buf_trim +EXPORT_SYMBOL_GPL net/sunrpc/sunrpc 0xff6225a0 xdr_stream_decode_string_dup +EXPORT_SYMBOL_GPL net/tls/tls 0x074d2ce0 tls_offload_tx_resync_request +EXPORT_SYMBOL_GPL net/tls/tls 0x2e3ebe96 tls_validate_xmit_skb +EXPORT_SYMBOL_GPL net/tls/tls 0x565a3691 tls_encrypt_skb +EXPORT_SYMBOL_GPL net/tls/tls 0xeefe8073 tls_device_sk_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x03a81e69 virtio_transport_stream_allow +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x11e0250e virtio_transport_seqpacket_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x13ba34d2 virtio_transport_seqpacket_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x14247501 virtio_transport_notify_poll_out +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x20491002 virtio_transport_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x225b3ec6 virtio_transport_stream_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x2e0235b7 virtio_transport_release +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x32cc3b80 virtio_transport_dgram_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3b81711b virtio_transport_notify_send_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x3f93889f virtio_transport_get_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x46d75734 virtio_transport_read_skb +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x471535b4 virtio_transport_inc_tx_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x4790b5a0 virtio_transport_notify_send_pre_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x47c01dc2 virtio_transport_stream_is_active +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x47fa07df virtio_transport_stream_rcvhiwat +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x584c5a04 virtio_transport_seqpacket_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x6a65abcb virtio_transport_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x7d03f0b0 virtio_transport_recv_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x81d08c0a virtio_transport_purge_skbs +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x979190c4 virtio_transport_notify_recv_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x98898c23 virtio_transport_connect +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0x9c053350 virtio_transport_notify_send_pre_block +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa228d055 virtio_transport_shutdown +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa527b15d virtio_transport_stream_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xa8ca0b04 virtio_transport_notify_buffer_size +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xac01c510 virtio_transport_destruct +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xb559b6b6 virtio_transport_deliver_tap_pkt +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xbabd30f5 virtio_transport_dgram_allow +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xccc750de virtio_transport_do_socket_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xcf012465 virtio_transport_notify_send_post_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xd6b25633 virtio_transport_notify_recv_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdd7cb05d virtio_transport_dgram_bind +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xdfa9a051 virtio_transport_notify_recv_post_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xeba9bcc8 virtio_transport_notify_poll_in +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xecfe7dc3 virtio_transport_notify_recv_pre_dequeue +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf6c65cb4 virtio_transport_put_credit +EXPORT_SYMBOL_GPL net/vmw_vsock/vmw_vsock_virtio_transport_common 0xf87affa8 virtio_transport_dgram_enqueue +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x00b2a067 vsock_find_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x0e9bc9b6 vsock_addr_unbind +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x124b315c vsock_remove_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x16762334 vsock_find_bound_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x23310bd2 vsock_assign_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x245d9cf7 vsock_create_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x26bb7d00 vsock_deliver_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x284e07d8 vsock_bind_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x33e2c9e2 vsock_data_ready +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x3d4b0fca vsock_addr_init +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4b99648c vsock_addr_bound +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x4f9b3e8f vsock_core_unregister +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6d9a4a1c vsock_add_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x6e0838ff vsock_remove_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x76aa3edb vsock_enqueue_accept +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x7723ae08 vsock_core_get_transport +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x78c9696f vsock_dgram_recvmsg +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x82be9fd8 vsock_core_register +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x90aa8549 vsock_find_cid +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x93bc31da vsock_connectible_recvmsg +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x98296ce7 vsock_add_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9a074f9d vsock_connectible_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0x9bb6fd09 vsock_connected_table +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa0e45f93 vsock_stream_has_space +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xa6718ad0 vsock_stream_has_data +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xaf2674b5 vsock_addr_equals_addr +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xb0d7bda7 vsock_addr_cast +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xbea3aac4 vsock_for_each_connected_socket +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc51ed679 vsock_remove_sock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xc92f7f50 vsock_table_lock +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe1a86fe7 vsock_remove_pending +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xe87b807a vsock_insert_connected +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xec05e6c8 vsock_remove_tap +EXPORT_SYMBOL_GPL net/vmw_vsock/vsock 0xec96eadf vsock_addr_validate +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x0e3f0cc1 cfg80211_wext_giwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x16e7897e cfg80211_vendor_cmd_reply +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x1fccd108 wiphy_work_cancel +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x374b348b cfg80211_wext_giwrange +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x3f627513 cfg80211_vendor_cmd_get_sender +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x62ca61fa cfg80211_wext_giwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x681232b6 cfg80211_wext_giwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x82e1c410 cfg80211_shutdown_all_interfaces +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0x8ead8c11 cfg80211_wext_siwfrag +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb1dce3c4 cfg80211_wext_siwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb342a2c3 wiphy_delayed_work_queue +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb5c32e05 cfg80211_wext_giwrts +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xb7cbff87 wiphy_work_queue +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xbd8e7308 cfg80211_pmsr_complete +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc807e40e cfg80211_pmsr_report +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xc9d4a549 cfg80211_wext_giwname +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xd1561b9f wiphy_delayed_work_cancel +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xe258e12a cfg80211_wext_siwmode +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xea9df89d cfg80211_wext_siwscan +EXPORT_SYMBOL_GPL net/wireless/cfg80211 0xf292ac77 cfg80211_wext_giwretry +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0049ca83 xfrm_aead_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x00c80741 xfrm_ealg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x0a575945 xfrm_count_pfkey_auth_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x28e23139 xfrm_probe_algs +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x37a02412 xfrm_aalg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x5c699441 xfrm_aalg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x72395dc1 xfrm_calg_get_byid +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0x7a8ca627 xfrm_count_pfkey_enc_supported +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xaab23340 xfrm_calg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xb73be794 xfrm_ealg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xc6b1fdbe xfrm_aalg_get_byidx +EXPORT_SYMBOL_GPL net/xfrm/xfrm_algo 0xd6f50cf7 xfrm_ealg_get_byname +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x01decd68 ipcomp_init_state +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x04c65490 ipcomp_input +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0x37280ecd ipcomp_destroy +EXPORT_SYMBOL_GPL net/xfrm/xfrm_ipcomp 0xc25af281 ipcomp_output +EXPORT_SYMBOL_GPL net/xfrm/xfrm_user 0x4a0c7516 xfrm_msg_min +EXPORT_SYMBOL_GPL net/xfrm/xfrm_user 0xa294bed8 xfrma_policy +EXPORT_SYMBOL_GPL virt/lib/irqbypass 0x3fe35aea irq_bypass_unregister_consumer +EXPORT_SYMBOL_GPL virt/lib/irqbypass 0x418873cc irq_bypass_register_producer +EXPORT_SYMBOL_GPL virt/lib/irqbypass 0x888c5be5 irq_bypass_register_consumer +EXPORT_SYMBOL_GPL virt/lib/irqbypass 0xf6e772c3 irq_bypass_unregister_producer +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __seamcall +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __seamcall_ret +EXPORT_SYMBOL_GPL vmlinux 0x00000000 __seamcall_saved_ret +EXPORT_SYMBOL_GPL vmlinux 0x00025e68 rio_unmap_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x00115e10 usb_register_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x001b074f mce_is_correctable +EXPORT_SYMBOL_GPL vmlinux 0x0027b8d4 wakeup_source_add +EXPORT_SYMBOL_GPL vmlinux 0x0034f3b6 xen_has_pv_nic_devices +EXPORT_SYMBOL_GPL vmlinux 0x0046f339 device_iommu_capable +EXPORT_SYMBOL_GPL vmlinux 0x00513f58 get_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x00565f18 pernet_ops_rwsem +EXPORT_SYMBOL_GPL vmlinux 0x005bd46f alarmtimer_get_rtcdev +EXPORT_SYMBOL_GPL vmlinux 0x005d6735 regmap_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x005f18a6 add_wait_queue_priority +EXPORT_SYMBOL_GPL vmlinux 0x006cf7f5 hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x007927c4 rio_route_add_entry +EXPORT_SYMBOL_GPL vmlinux 0x008539f0 klp_shadow_alloc +EXPORT_SYMBOL_GPL vmlinux 0x00861af2 xdp_build_skb_from_frame +EXPORT_SYMBOL_GPL vmlinux 0x00ae49c3 hid_bpf_disconnect_device +EXPORT_SYMBOL_GPL vmlinux 0x00b7dcce fat_fill_super +EXPORT_SYMBOL_GPL vmlinux 0x00d4c500 usb_decode_interval +EXPORT_SYMBOL_GPL vmlinux 0x00df0eb1 phy_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x00f3b907 debugfs_create_str +EXPORT_SYMBOL_GPL vmlinux 0x00fd6408 iommu_group_get +EXPORT_SYMBOL_GPL vmlinux 0x01198384 __tracepoint_sched_util_est_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x012e730e apei_exec_noop +EXPORT_SYMBOL_GPL vmlinux 0x012e7f37 ata_host_init +EXPORT_SYMBOL_GPL vmlinux 0x0131443f __auxiliary_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x0151e412 dev_pm_opp_find_bw_ceil +EXPORT_SYMBOL_GPL vmlinux 0x01567830 regulator_map_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0x01699bbe devm_memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x016b42cf dm_internal_suspend_noflush +EXPORT_SYMBOL_GPL vmlinux 0x016eb8a7 devm_irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x017922ce pci_ims_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x01797721 gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x01848a8e local_apic_timer_c2_ok +EXPORT_SYMBOL_GPL vmlinux 0x01850555 nvme_auth_generate_key +EXPORT_SYMBOL_GPL vmlinux 0x01866a57 ezx_pcap_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x01a0cb78 property_entries_free +EXPORT_SYMBOL_GPL vmlinux 0x01a20dfe spi_delay_to_ns +EXPORT_SYMBOL_GPL vmlinux 0x01b8ad58 clk_gate_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x01be695d vring_create_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x01c12c32 cpu_bit_bitmap +EXPORT_SYMBOL_GPL vmlinux 0x01c849ad hid_bpf_device_init +EXPORT_SYMBOL_GPL vmlinux 0x01d958eb power_supply_put_battery_info +EXPORT_SYMBOL_GPL vmlinux 0x01e1a8de kgdb_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x01e6e82c pcie_flr +EXPORT_SYMBOL_GPL vmlinux 0x01ee5532 smp_call_function_any +EXPORT_SYMBOL_GPL vmlinux 0x01f132e2 bdev_nr_zones +EXPORT_SYMBOL_GPL vmlinux 0x01f42daa sdio_readw +EXPORT_SYMBOL_GPL vmlinux 0x01ff6e72 ip6_flush_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0x0201a7f0 strp_init +EXPORT_SYMBOL_GPL vmlinux 0x0204d57d irq_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x0207a6c6 reset_control_bulk_acquire +EXPORT_SYMBOL_GPL vmlinux 0x0207ebce i2c_acpi_find_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0x022259e3 acpi_is_pnp_device +EXPORT_SYMBOL_GPL vmlinux 0x0237b541 ata_sff_queue_pio_task +EXPORT_SYMBOL_GPL vmlinux 0x02394899 play_idle_precise +EXPORT_SYMBOL_GPL vmlinux 0x02495b8f gnttab_alloc_grant_reference_seq +EXPORT_SYMBOL_GPL vmlinux 0x024d13dd request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x02528244 bpf_map_inc_with_uref +EXPORT_SYMBOL_GPL vmlinux 0x02603c3e rio_mport_send_doorbell +EXPORT_SYMBOL_GPL vmlinux 0x02666a51 usb_find_interface +EXPORT_SYMBOL_GPL vmlinux 0x027dc8a8 syscon_regmap_lookup_by_phandle_optional +EXPORT_SYMBOL_GPL vmlinux 0x0298e1de sysfs_unbreak_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x0299c1c6 rtnl_af_unregister +EXPORT_SYMBOL_GPL vmlinux 0x02b2aabe i2c_generic_scl_recovery +EXPORT_SYMBOL_GPL vmlinux 0x02b44ece fwnode_get_phy_node +EXPORT_SYMBOL_GPL vmlinux 0x02c4f81e crypto_dequeue_request +EXPORT_SYMBOL_GPL vmlinux 0x02c5c501 power_supply_find_ocv2cap_table +EXPORT_SYMBOL_GPL vmlinux 0x02c969f5 param_ops_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x02e3df94 udp_splice_eof +EXPORT_SYMBOL_GPL vmlinux 0x02e67fc6 __synth_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x030065d1 irq_domain_add_legacy +EXPORT_SYMBOL_GPL vmlinux 0x03026509 fat_get_dotdot_entry +EXPORT_SYMBOL_GPL vmlinux 0x03042ff6 dm_internal_resume_fast +EXPORT_SYMBOL_GPL vmlinux 0x03050a3b regulator_disable +EXPORT_SYMBOL_GPL vmlinux 0x030cbca2 ata_id_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x030f65e9 init_user_ns +EXPORT_SYMBOL_GPL vmlinux 0x0312b3b0 reset_controller_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x03316710 devm_platform_get_irqs_affinity +EXPORT_SYMBOL_GPL vmlinux 0x033832c7 usb_amd_hang_symptom_quirk +EXPORT_SYMBOL_GPL vmlinux 0x033c9d7a unregister_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0x0343bdf1 __i2c_board_list +EXPORT_SYMBOL_GPL vmlinux 0x03473809 pcie_bus_configure_settings +EXPORT_SYMBOL_GPL vmlinux 0x03473884 phy_basic_t1s_p2mp_features +EXPORT_SYMBOL_GPL vmlinux 0x0360b278 fsnotify_put_group +EXPORT_SYMBOL_GPL vmlinux 0x036cb73d tps6586x_writes +EXPORT_SYMBOL_GPL vmlinux 0x036de383 perf_event_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x0372fb2c ftrace_set_notrace +EXPORT_SYMBOL_GPL vmlinux 0x0373766a sbitmap_queue_clear +EXPORT_SYMBOL_GPL vmlinux 0x037d992f __fscrypt_prepare_link +EXPORT_SYMBOL_GPL vmlinux 0x03902093 ata_sff_check_status +EXPORT_SYMBOL_GPL vmlinux 0x03952887 ktime_add_safe +EXPORT_SYMBOL_GPL vmlinux 0x039ed7a5 class_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x03a7dda5 dev_pm_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x03c12dfe cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x03c1c035 acrn_remove_intr_handler +EXPORT_SYMBOL_GPL vmlinux 0x03c64cd2 icc_sync_state +EXPORT_SYMBOL_GPL vmlinux 0x03ce7234 sched_smt_present +EXPORT_SYMBOL_GPL vmlinux 0x03d924c2 regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x03df5e63 pwm_request_from_chip +EXPORT_SYMBOL_GPL vmlinux 0x03fe4345 pci_status_get_and_clear_errors +EXPORT_SYMBOL_GPL vmlinux 0x03fe4f70 bio_trim +EXPORT_SYMBOL_GPL vmlinux 0x0402cbbf preempt_notifier_inc +EXPORT_SYMBOL_GPL vmlinux 0x0404222c usb_hcd_pci_pm_ops +EXPORT_SYMBOL_GPL vmlinux 0x0405dfb4 __tracepoint_xhci_dbg_init +EXPORT_SYMBOL_GPL vmlinux 0x040c214f __clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0x042280bc tcp_set_state +EXPORT_SYMBOL_GPL vmlinux 0x042dc542 pinctrl_select_state +EXPORT_SYMBOL_GPL vmlinux 0x0436be58 devm_mipi_dsi_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0x043ab831 pin_get_name +EXPORT_SYMBOL_GPL vmlinux 0x043f1cc3 iommu_domain_free +EXPORT_SYMBOL_GPL vmlinux 0x044196c1 fwnode_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x0446fd4a irq_get_domain_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x0457a466 regmap_irq_get_domain +EXPORT_SYMBOL_GPL vmlinux 0x0465a073 regmap_reg_in_ranges +EXPORT_SYMBOL_GPL vmlinux 0x046ff7cc __SCK__tp_func_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x04767311 regmap_raw_read +EXPORT_SYMBOL_GPL vmlinux 0x0478d566 percpu_down_write +EXPORT_SYMBOL_GPL vmlinux 0x048b5f8d twl4030_audio_get_mclk +EXPORT_SYMBOL_GPL vmlinux 0x0492cd0f pci_dev_lock +EXPORT_SYMBOL_GPL vmlinux 0x049306bb __traceiter_sched_util_est_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x0499e0c7 unmap_mapping_pages +EXPORT_SYMBOL_GPL vmlinux 0x049e5156 gnttab_try_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x04a5d12b shash_no_setkey +EXPORT_SYMBOL_GPL vmlinux 0x04ad7cff thermal_zone_get_temp +EXPORT_SYMBOL_GPL vmlinux 0x04bf0092 io_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x04c4f603 mpi_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0x04c77a5e __SCK__tp_func_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0x04c8aebf console_verbose +EXPORT_SYMBOL_GPL vmlinux 0x04cd2078 devm_usb_get_phy_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x04df8fbc lzo1x_decompress_safe +EXPORT_SYMBOL_GPL vmlinux 0x04f2f771 devm_regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0x050543ac __tracepoint_sched_update_nr_running_tp +EXPORT_SYMBOL_GPL vmlinux 0x051085e3 lock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x051a0bc1 stack_depot_fetch +EXPORT_SYMBOL_GPL vmlinux 0x0528770f devm_pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0x052b4013 register_vmcore_cb +EXPORT_SYMBOL_GPL vmlinux 0x052c9aed ktime_get_real_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x054b9900 switchdev_handle_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0x054e550b kernel_halt +EXPORT_SYMBOL_GPL vmlinux 0x0557bedb pwm_lpss_bxt_info +EXPORT_SYMBOL_GPL vmlinux 0x0576ff5a nd_cmd_in_size +EXPORT_SYMBOL_GPL vmlinux 0x05785cb4 mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x05788d69 genphy_c45_check_and_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x0583bc0b irq_domain_associate +EXPORT_SYMBOL_GPL vmlinux 0x0585aa91 register_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0x05883efb __traceiter_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x058f9366 apei_exec_collect_resources +EXPORT_SYMBOL_GPL vmlinux 0x05ac0559 of_phy_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0x05adcb2a __tracepoint_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x05afc9f8 dev_pm_opp_disable +EXPORT_SYMBOL_GPL vmlinux 0x05b2d18c virtqueue_detach_unused_buf +EXPORT_SYMBOL_GPL vmlinux 0x05b6b255 extcon_set_property +EXPORT_SYMBOL_GPL vmlinux 0x05be855f mmc_app_cmd +EXPORT_SYMBOL_GPL vmlinux 0x05c6e174 vcap_tc_flower_handler_ethaddr_usage +EXPORT_SYMBOL_GPL vmlinux 0x05c9e842 class_unregister +EXPORT_SYMBOL_GPL vmlinux 0x05cd1dd4 vcap_rule_add_key_bit +EXPORT_SYMBOL_GPL vmlinux 0x05e37af7 pinctrl_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x05e8d054 ata_bmdma_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x05fccf82 tpm_default_chip +EXPORT_SYMBOL_GPL vmlinux 0x0601e896 fb_deferred_io_open +EXPORT_SYMBOL_GPL vmlinux 0x061336ae blocking_notifier_chain_register_unique_prio +EXPORT_SYMBOL_GPL vmlinux 0x061e2126 phy_speed_down +EXPORT_SYMBOL_GPL vmlinux 0x06209f49 phy_lookup_setting +EXPORT_SYMBOL_GPL vmlinux 0x0626da5f od_unregister_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x062b89c4 ghes_unregister_report_chain +EXPORT_SYMBOL_GPL vmlinux 0x063dc274 devm_usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0x064191ee kiocb_modified +EXPORT_SYMBOL_GPL vmlinux 0x064ab20f __pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0x064b59a6 __traceiter_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x064db9a5 mark_mounts_for_expiry +EXPORT_SYMBOL_GPL vmlinux 0x064e6c46 simple_attr_release +EXPORT_SYMBOL_GPL vmlinux 0x066d7a96 msi_domain_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x066eeb33 akcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x066ffd47 clk_register_divider_table +EXPORT_SYMBOL_GPL vmlinux 0x06a63894 da903x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0x06aecfd1 cros_ec_check_features +EXPORT_SYMBOL_GPL vmlinux 0x06cbd6ad ata_pci_bmdma_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0x06cca30b ring_buffer_record_off +EXPORT_SYMBOL_GPL vmlinux 0x06df02c1 __cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0x06f40090 dev_pm_opp_put_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x06fa8ecd crypto_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x06fb9e42 dev_fill_forward_path +EXPORT_SYMBOL_GPL vmlinux 0x0702f1dc devm_gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x071aeb42 usb_hcd_check_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0x07242d92 put_dax +EXPORT_SYMBOL_GPL vmlinux 0x073205e7 vcap_filter_rule_keys +EXPORT_SYMBOL_GPL vmlinux 0x073d13bf dw_pcie_host_deinit +EXPORT_SYMBOL_GPL vmlinux 0x07483e13 cn_del_callback +EXPORT_SYMBOL_GPL vmlinux 0x074e98c5 __SCK__tp_func_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x074f98db synth_event_add_field +EXPORT_SYMBOL_GPL vmlinux 0x0755abc1 __srcu_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x0756a31c register_platform_power_off +EXPORT_SYMBOL_GPL vmlinux 0x0758c6b6 pci_scan_child_bus +EXPORT_SYMBOL_GPL vmlinux 0x076356e7 sfp_may_have_phy +EXPORT_SYMBOL_GPL vmlinux 0x076c8523 scsi_host_unblock +EXPORT_SYMBOL_GPL vmlinux 0x0779c0fd devm_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x0782ff8f __SCK__tp_func_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x079bf131 devlink_port_register_with_ops +EXPORT_SYMBOL_GPL vmlinux 0x07aaaccd nvme_cancel_request +EXPORT_SYMBOL_GPL vmlinux 0x07b21f85 kdb_get_kbd_char +EXPORT_SYMBOL_GPL vmlinux 0x07b52e38 rtnl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x07b64d81 hyperv_stop_tsc_emulation +EXPORT_SYMBOL_GPL vmlinux 0x07b7517b put_device +EXPORT_SYMBOL_GPL vmlinux 0x07be6905 net_inc_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x07c92638 xenbus_setup_ring +EXPORT_SYMBOL_GPL vmlinux 0x07e1a2a1 xdp_return_frame_rx_napi +EXPORT_SYMBOL_GPL vmlinux 0x07ec220e backing_file_real_path +EXPORT_SYMBOL_GPL vmlinux 0x07fed016 ipv6_opt_accepted +EXPORT_SYMBOL_GPL vmlinux 0x080925dd __mmc_poll_for_busy +EXPORT_SYMBOL_GPL vmlinux 0x08135613 dax_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x08284d4b fsnotify_put_mark +EXPORT_SYMBOL_GPL vmlinux 0x0831ed20 sysfs_create_files +EXPORT_SYMBOL_GPL vmlinux 0x08364ee2 nf_queue_entry_free +EXPORT_SYMBOL_GPL vmlinux 0x08481c6a access_process_vm +EXPORT_SYMBOL_GPL vmlinux 0x085d510e __xenbus_register_backend +EXPORT_SYMBOL_GPL vmlinux 0x086b57fb nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x086facc1 ohci_restart +EXPORT_SYMBOL_GPL vmlinux 0x0872a191 iommu_unregister_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x0874a1c7 regcache_cache_bypass +EXPORT_SYMBOL_GPL vmlinux 0x087f5dc5 wm831x_of_match +EXPORT_SYMBOL_GPL vmlinux 0x0887ba56 devm_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0x0894205c netlink_strict_get_check +EXPORT_SYMBOL_GPL vmlinux 0x089f1519 crypto_register_rng +EXPORT_SYMBOL_GPL vmlinux 0x08a32d46 clk_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x08acaa77 devm_device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x08b5a906 inet_twsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x08b990fe mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x08c78cf7 offline_and_remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x08d371c2 shash_ahash_update +EXPORT_SYMBOL_GPL vmlinux 0x08d7bc3b trace_seq_path +EXPORT_SYMBOL_GPL vmlinux 0x08e09361 i2c_dw_prepare_clk +EXPORT_SYMBOL_GPL vmlinux 0x08e2b333 cppc_set_auto_sel +EXPORT_SYMBOL_GPL vmlinux 0x08e8bd80 cpuidle_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x08f5246b usb_get_role_switch_default_mode +EXPORT_SYMBOL_GPL vmlinux 0x09049df2 kobj_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x0907d14d blocking_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x09081e3e noop_direct_IO +EXPORT_SYMBOL_GPL vmlinux 0x091eb9b4 round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x0925493f clear_page_orig +EXPORT_SYMBOL_GPL vmlinux 0x09337cd0 __wake_up_locked_key +EXPORT_SYMBOL_GPL vmlinux 0x093786cf synth_event_add_field_str +EXPORT_SYMBOL_GPL vmlinux 0x093815d3 blk_bio_list_merge +EXPORT_SYMBOL_GPL vmlinux 0x093ac6c0 regcache_mark_dirty +EXPORT_SYMBOL_GPL vmlinux 0x094875bd sch_frag_xmit_hook +EXPORT_SYMBOL_GPL vmlinux 0x094981da component_add_typed +EXPORT_SYMBOL_GPL vmlinux 0x096a7e6f x86_spec_ctrl_base +EXPORT_SYMBOL_GPL vmlinux 0x096a9805 kstrdup_quotable_cmdline +EXPORT_SYMBOL_GPL vmlinux 0x096ae3f3 tdx_get_sysinfo +EXPORT_SYMBOL_GPL vmlinux 0x096bfa61 blk_crypto_has_capabilities +EXPORT_SYMBOL_GPL vmlinux 0x0976822d sfp_get_module_eeprom_by_page +EXPORT_SYMBOL_GPL vmlinux 0x097c023e dev_pm_genpd_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x09849edb irq_domain_free_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x0989fc62 pci_disable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x099a6db3 devm_extcon_dev_allocate +EXPORT_SYMBOL_GPL vmlinux 0x09a34b4e devlink_to_dev +EXPORT_SYMBOL_GPL vmlinux 0x09a52c28 usb_device_match_id +EXPORT_SYMBOL_GPL vmlinux 0x09a7bd41 crypto_alloc_acomp +EXPORT_SYMBOL_GPL vmlinux 0x09b53e14 interval_tree_remove +EXPORT_SYMBOL_GPL vmlinux 0x09ba7670 ping_rcv +EXPORT_SYMBOL_GPL vmlinux 0x09d0e544 serdev_device_set_parity +EXPORT_SYMBOL_GPL vmlinux 0x09e6923f ata_sff_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0x09e8d6af of_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x09f0e961 mmc_sanitize +EXPORT_SYMBOL_GPL vmlinux 0x09f26be7 blk_rq_unprep_clone +EXPORT_SYMBOL_GPL vmlinux 0x09f46309 pkcs7_validate_trust +EXPORT_SYMBOL_GPL vmlinux 0x09fbbd18 bio_clone_blkg_association +EXPORT_SYMBOL_GPL vmlinux 0x09fe14a6 dev_fill_metadata_dst +EXPORT_SYMBOL_GPL vmlinux 0x0a135d34 fscrypt_ioctl_get_nonce +EXPORT_SYMBOL_GPL vmlinux 0x0a1d5745 vp_legacy_set_status +EXPORT_SYMBOL_GPL vmlinux 0x0a3078c4 fuse_dev_alloc_install +EXPORT_SYMBOL_GPL vmlinux 0x0a421914 ohci_resume +EXPORT_SYMBOL_GPL vmlinux 0x0a45412d edac_device_handle_ue_count +EXPORT_SYMBOL_GPL vmlinux 0x0a47553f tdx_kvm_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x0a4e6e0a nf_hooks_lwtunnel_sysctl_handler +EXPORT_SYMBOL_GPL vmlinux 0x0a502c98 dmar_platform_optin +EXPORT_SYMBOL_GPL vmlinux 0x0a52c511 hv_query_ext_cap +EXPORT_SYMBOL_GPL vmlinux 0x0a67248d ip6_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0x0a8162a8 raw_v4_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x0a8894f4 mas_find_range_rev +EXPORT_SYMBOL_GPL vmlinux 0x0a8e458b crypto_req_done +EXPORT_SYMBOL_GPL vmlinux 0x0a920390 usb_reset_configuration +EXPORT_SYMBOL_GPL vmlinux 0x0a9a41ce ip6_dst_lookup +EXPORT_SYMBOL_GPL vmlinux 0x0aa706dc crypto_unregister_acomps +EXPORT_SYMBOL_GPL vmlinux 0x0aba7ffc rio_map_inb_region +EXPORT_SYMBOL_GPL vmlinux 0x0abdc439 cc_platform_has +EXPORT_SYMBOL_GPL vmlinux 0x0ac60ff1 device_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0x0ad137d3 lpit_read_residency_count_address +EXPORT_SYMBOL_GPL vmlinux 0x0ad906f6 pci_epf_add_vepf +EXPORT_SYMBOL_GPL vmlinux 0x0adcc820 crypto_unregister_kpp +EXPORT_SYMBOL_GPL vmlinux 0x0b07abe2 unshare_fs_struct +EXPORT_SYMBOL_GPL vmlinux 0x0b0ffcb6 user_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0b1c26f0 regulator_get_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x0b2db2d5 remove_resource +EXPORT_SYMBOL_GPL vmlinux 0x0b3b163f regmap_reinit_cache +EXPORT_SYMBOL_GPL vmlinux 0x0b52e502 apei_resources_add +EXPORT_SYMBOL_GPL vmlinux 0x0b60d821 gpiochip_free_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x0b69e104 pse_ethtool_get_status +EXPORT_SYMBOL_GPL vmlinux 0x0b73dc1f acpi_dev_state_d0 +EXPORT_SYMBOL_GPL vmlinux 0x0b7ed0c4 dev_pm_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x0b8c8a23 static_key_fast_inc_not_disabled +EXPORT_SYMBOL_GPL vmlinux 0x0b976c45 __SCK__tp_func_udp_fail_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x0b99219d dma_mmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x0bbc6a4a pm_generic_restore_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0bbdc9b2 remove_memory +EXPORT_SYMBOL_GPL vmlinux 0x0bbdda3a perf_report_aux_output_id +EXPORT_SYMBOL_GPL vmlinux 0x0bbeaeba uv_bios_enum_ports +EXPORT_SYMBOL_GPL vmlinux 0x0bda6b70 tpm_tis_remove +EXPORT_SYMBOL_GPL vmlinux 0x0be3584b vcap_find_admin +EXPORT_SYMBOL_GPL vmlinux 0x0be42f3f pci_epc_linkup +EXPORT_SYMBOL_GPL vmlinux 0x0be75d8d pm_generic_poweroff_noirq +EXPORT_SYMBOL_GPL vmlinux 0x0c0d30a9 tty_buffer_lock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x0c2c5802 work_busy +EXPORT_SYMBOL_GPL vmlinux 0x0c32ff8a edac_pci_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x0c35879a led_compose_name +EXPORT_SYMBOL_GPL vmlinux 0x0c3d169f pm_wakeup_ws_event +EXPORT_SYMBOL_GPL vmlinux 0x0c3ffc66 pm_runtime_force_resume +EXPORT_SYMBOL_GPL vmlinux 0x0c43271d mdiobus_c45_modify +EXPORT_SYMBOL_GPL vmlinux 0x0c45985e pci_p2pdma_enable_store +EXPORT_SYMBOL_GPL vmlinux 0x0c560b80 dev_pm_opp_get_level +EXPORT_SYMBOL_GPL vmlinux 0x0c67979b fuse_sync_release +EXPORT_SYMBOL_GPL vmlinux 0x0c6e11a4 iommu_page_response +EXPORT_SYMBOL_GPL vmlinux 0x0c728a19 crypto_unregister_template +EXPORT_SYMBOL_GPL vmlinux 0x0c805f93 clflush_cache_range +EXPORT_SYMBOL_GPL vmlinux 0x0c82d832 nvmem_cell_read_u32 +EXPORT_SYMBOL_GPL vmlinux 0x0c830caf register_btf_kfunc_id_set +EXPORT_SYMBOL_GPL vmlinux 0x0c84fbb8 lwtunnel_encap_del_ops +EXPORT_SYMBOL_GPL vmlinux 0x0c861936 pci_p2pdma_distance_many +EXPORT_SYMBOL_GPL vmlinux 0x0c88c1c3 pci_vpd_find_id_string +EXPORT_SYMBOL_GPL vmlinux 0x0c984a32 extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cab439a pci_epc_add_epf +EXPORT_SYMBOL_GPL vmlinux 0x0cbd39cb max8997_write_reg +EXPORT_SYMBOL_GPL vmlinux 0x0cbe3ee2 software_node_unregister +EXPORT_SYMBOL_GPL vmlinux 0x0cbe55ed crypto_grab_kpp +EXPORT_SYMBOL_GPL vmlinux 0x0cc9d36c iommu_group_claim_dma_owner +EXPORT_SYMBOL_GPL vmlinux 0x0ce2c94f pci_epc_bme_notify +EXPORT_SYMBOL_GPL vmlinux 0x0cfe59cb hyperv_fill_flush_guest_mapping_list +EXPORT_SYMBOL_GPL vmlinux 0x0d09285a clk_gate_ops +EXPORT_SYMBOL_GPL vmlinux 0x0d23e6bd get_user_pages_fast_only +EXPORT_SYMBOL_GPL vmlinux 0x0d26d582 __traceiter_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x0d270eac __fscrypt_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x0d358e21 umd_load_blob +EXPORT_SYMBOL_GPL vmlinux 0x0d3fb7d4 phy_interface_num_ports +EXPORT_SYMBOL_GPL vmlinux 0x0d459213 work_on_cpu_safe +EXPORT_SYMBOL_GPL vmlinux 0x0d4961de nf_log_buf_open +EXPORT_SYMBOL_GPL vmlinux 0x0d4e3f8c iopf_queue_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0d542809 ata_sff_hsm_move +EXPORT_SYMBOL_GPL vmlinux 0x0d5cecc6 ima_measure_critical_data +EXPORT_SYMBOL_GPL vmlinux 0x0d5dfa25 __rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x0d666bc1 device_destroy +EXPORT_SYMBOL_GPL vmlinux 0x0d6a49d4 tcp_memory_per_cpu_fw_alloc +EXPORT_SYMBOL_GPL vmlinux 0x0d6dea5c dma_resv_get_fences +EXPORT_SYMBOL_GPL vmlinux 0x0d7d99f2 regulator_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x0d97c221 dma_opt_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x0d9b4ba5 thermal_remove_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0x0da095c5 devm_led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x0dd93569 mptcp_diag_fill_info +EXPORT_SYMBOL_GPL vmlinux 0x0ddadea2 __SCT__tp_func_pelt_thermal_tp +EXPORT_SYMBOL_GPL vmlinux 0x0ddb1cd7 llist_reverse_order +EXPORT_SYMBOL_GPL vmlinux 0x0dea68e1 pci_store_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x0df84179 dev_pm_opp_set_opp +EXPORT_SYMBOL_GPL vmlinux 0x0e007edf xen_evtchn_nr_channels +EXPORT_SYMBOL_GPL vmlinux 0x0e0c6a7d crypto_dh_encode_key +EXPORT_SYMBOL_GPL vmlinux 0x0e1194d5 hrtimer_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0x0e13cb4d apei_resources_release +EXPORT_SYMBOL_GPL vmlinux 0x0e1c5743 serdev_device_break_ctl +EXPORT_SYMBOL_GPL vmlinux 0x0e1d523e tdx_trace_seamcalls +EXPORT_SYMBOL_GPL vmlinux 0x0e1fc8ef __SCT__tp_func_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x0e224235 firmware_request_platform +EXPORT_SYMBOL_GPL vmlinux 0x0e3dd026 regmap_can_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x0e42e231 blk_mq_quiesce_queue_nowait +EXPORT_SYMBOL_GPL vmlinux 0x0e53ca24 ip6_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x0e5cc9d7 xdp_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x0e6b79af static_key_disable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x0e6e9379 perf_event_refresh +EXPORT_SYMBOL_GPL vmlinux 0x0e7cbcec spi_finalize_current_transfer +EXPORT_SYMBOL_GPL vmlinux 0x0e96cfd8 of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0x0e96d3b6 acpi_match_device +EXPORT_SYMBOL_GPL vmlinux 0x0e9fdded synth_event_trace +EXPORT_SYMBOL_GPL vmlinux 0x0ea059cd crypto_register_kpp +EXPORT_SYMBOL_GPL vmlinux 0x0ea5cbce xen_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x0eac7ec5 pid_nr_ns +EXPORT_SYMBOL_GPL vmlinux 0x0eb162b7 platform_get_irq_optional +EXPORT_SYMBOL_GPL vmlinux 0x0ebd02bd pinctrl_pm_select_sleep_state +EXPORT_SYMBOL_GPL vmlinux 0x0ec096b0 hv_read_reference_counter +EXPORT_SYMBOL_GPL vmlinux 0x0ec51428 tpm_put_ops +EXPORT_SYMBOL_GPL vmlinux 0x0ecdadc8 irq_domain_create_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x0ecf8f0f irq_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x0ecfea88 btf_type_by_id +EXPORT_SYMBOL_GPL vmlinux 0x0ed41b84 bd_unlink_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x0ed63de9 sata_scr_valid +EXPORT_SYMBOL_GPL vmlinux 0x0eeae3e8 key_type_encrypted +EXPORT_SYMBOL_GPL vmlinux 0x0ef7e152 ip_route_output_flow +EXPORT_SYMBOL_GPL vmlinux 0x0efaaae5 tdx_get_nr_guest_keyids +EXPORT_SYMBOL_GPL vmlinux 0x0efd190c __traceiter_ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x0f0b21fe pm_trace_rtc_abused +EXPORT_SYMBOL_GPL vmlinux 0x0f180070 ring_buffer_free_read_page +EXPORT_SYMBOL_GPL vmlinux 0x0f1a0515 devm_extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0x0f20a869 devm_hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0x0f2d7d87 mce_unregister_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0x0f422012 devres_remove +EXPORT_SYMBOL_GPL vmlinux 0x0f512744 tpm_pm_resume +EXPORT_SYMBOL_GPL vmlinux 0x0f5a5047 edac_get_sysfs_subsys +EXPORT_SYMBOL_GPL vmlinux 0x0f7718bb sk_psock_drop +EXPORT_SYMBOL_GPL vmlinux 0x0f7ca236 dmi_memdev_name +EXPORT_SYMBOL_GPL vmlinux 0x0f801382 xfrm_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x0f866184 pci_user_read_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x0f8f10f1 __traceiter_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x0f9a80e4 hsu_dma_remove +EXPORT_SYMBOL_GPL vmlinux 0x0f9fc04e uv_get_archtype +EXPORT_SYMBOL_GPL vmlinux 0x0fad5088 pci_epc_clear_bar +EXPORT_SYMBOL_GPL vmlinux 0x0fad9868 ata_cable_ignore +EXPORT_SYMBOL_GPL vmlinux 0x0fbb7344 memremap_compat_align +EXPORT_SYMBOL_GPL vmlinux 0x0fbc0c0e xas_pause +EXPORT_SYMBOL_GPL vmlinux 0x0fc37562 amd_smn_read +EXPORT_SYMBOL_GPL vmlinux 0x0fcc1969 copy_from_user_nmi +EXPORT_SYMBOL_GPL vmlinux 0x0fd13848 platform_get_irq_byname +EXPORT_SYMBOL_GPL vmlinux 0x0fd4610e kmem_dump_obj +EXPORT_SYMBOL_GPL vmlinux 0x0fe2f064 sysfs_remove_group +EXPORT_SYMBOL_GPL vmlinux 0x0fed5b52 gpiochip_generic_free +EXPORT_SYMBOL_GPL vmlinux 0x0ff9af87 preempt_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x10091b7b sbitmap_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x1011ab92 genphy_c45_pma_resume +EXPORT_SYMBOL_GPL vmlinux 0x10138352 tracing_on +EXPORT_SYMBOL_GPL vmlinux 0x101960ab pinctrl_dev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x1038b96f adxl_get_component_names +EXPORT_SYMBOL_GPL vmlinux 0x10455bc7 rio_mport_chk_dev_access +EXPORT_SYMBOL_GPL vmlinux 0x104b2b7d vcap_rule_get_key_u32 +EXPORT_SYMBOL_GPL vmlinux 0x105127c3 md_bitmap_load +EXPORT_SYMBOL_GPL vmlinux 0x1063b505 i2c_add_numbered_adapter +EXPORT_SYMBOL_GPL vmlinux 0x1073b35a dax_writeback_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x107f801e phy_power_on +EXPORT_SYMBOL_GPL vmlinux 0x1089326a ip6_route_lookup +EXPORT_SYMBOL_GPL vmlinux 0x108a0acd bstr_printf +EXPORT_SYMBOL_GPL vmlinux 0x10a68502 devm_gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x10b89330 crypto_has_shash +EXPORT_SYMBOL_GPL vmlinux 0x10bc1626 tcp_twsk_destructor +EXPORT_SYMBOL_GPL vmlinux 0x10c09b4c bus_register +EXPORT_SYMBOL_GPL vmlinux 0x10c94fcd kobject_uevent_env +EXPORT_SYMBOL_GPL vmlinux 0x10cbc8d5 usb_acpi_power_manageable +EXPORT_SYMBOL_GPL vmlinux 0x10d7be3c virtqueue_get_buf +EXPORT_SYMBOL_GPL vmlinux 0x10d9f317 stack_depot_init +EXPORT_SYMBOL_GPL vmlinux 0x10dc3f9e tracing_snapshot_cond +EXPORT_SYMBOL_GPL vmlinux 0x10dcf395 devm_clk_hw_get_clk +EXPORT_SYMBOL_GPL vmlinux 0x10dd5fe7 rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0x10ddd0cb __SCT__perf_lopwr_cb +EXPORT_SYMBOL_GPL vmlinux 0x10e02caf rio_request_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x10ec2423 dpm_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x10ecc52c usb_amd_quirk_pll_enable +EXPORT_SYMBOL_GPL vmlinux 0x10f0effb blk_mq_sched_mark_restart_hctx +EXPORT_SYMBOL_GPL vmlinux 0x10fe3820 serial8250_do_get_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x110106c1 cper_severity_to_aer +EXPORT_SYMBOL_GPL vmlinux 0x110147f5 dma_request_chan +EXPORT_SYMBOL_GPL vmlinux 0x1101f0be find_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x1106cd34 event_triggers_call +EXPORT_SYMBOL_GPL vmlinux 0x111c4257 usb_acpi_set_power_state +EXPORT_SYMBOL_GPL vmlinux 0x11336ac9 genphy_c45_read_pma +EXPORT_SYMBOL_GPL vmlinux 0x1134ae5e task_user_regset_view +EXPORT_SYMBOL_GPL vmlinux 0x11485c2f icc_node_del +EXPORT_SYMBOL_GPL vmlinux 0x11564993 ata_sff_wait_ready +EXPORT_SYMBOL_GPL vmlinux 0x116180b5 hv_current_partition_id +EXPORT_SYMBOL_GPL vmlinux 0x116490c9 nvdimm_region_delete +EXPORT_SYMBOL_GPL vmlinux 0x11655275 input_ff_erase +EXPORT_SYMBOL_GPL vmlinux 0x116c01db badblocks_init +EXPORT_SYMBOL_GPL vmlinux 0x11971c7f securityfs_remove +EXPORT_SYMBOL_GPL vmlinux 0x11973560 devm_usb_get_phy_by_node +EXPORT_SYMBOL_GPL vmlinux 0x119d02c4 virtqueue_enable_cb_delayed +EXPORT_SYMBOL_GPL vmlinux 0x119dd5e4 nvmem_device_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x11a50e3a modify_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x11b1fe60 device_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x11bac933 devm_regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x11bc358a phy_exit +EXPORT_SYMBOL_GPL vmlinux 0x11cba8c3 bpf_trace_run7 +EXPORT_SYMBOL_GPL vmlinux 0x11d302ad genphy_c45_loopback +EXPORT_SYMBOL_GPL vmlinux 0x11d4513e __SCK__tp_func_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x11daa92d vfs_set_acl +EXPORT_SYMBOL_GPL vmlinux 0x11df0e75 devlink_fmsg_binary_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x11e06ee9 badrange_init +EXPORT_SYMBOL_GPL vmlinux 0x11e08f96 trace_seq_putmem_hex +EXPORT_SYMBOL_GPL vmlinux 0x11f3f0c7 phy_set_speed +EXPORT_SYMBOL_GPL vmlinux 0x11fe5b37 __tracepoint_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x12032428 elv_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12044a5c tracing_snapshot_cond_disable +EXPORT_SYMBOL_GPL vmlinux 0x12056e53 mas_store_gfp +EXPORT_SYMBOL_GPL vmlinux 0x12189359 __SCT__tp_func_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x121d958a unregister_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0x1225209d vfs_fallocate +EXPORT_SYMBOL_GPL vmlinux 0x122f3f91 vp_modern_set_queue_reset +EXPORT_SYMBOL_GPL vmlinux 0x1234e483 get_cpu_iowait_time_us +EXPORT_SYMBOL_GPL vmlinux 0x1234ffa1 cper_estatus_check_header +EXPORT_SYMBOL_GPL vmlinux 0x123646b0 xdp_set_features_flag +EXPORT_SYMBOL_GPL vmlinux 0x12376fdf __static_call_update +EXPORT_SYMBOL_GPL vmlinux 0x123b3713 spi_split_transfers_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x1261425b thermal_zone_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x126fedec register_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x1276d887 gpiod_disable_hw_timestamp_ns +EXPORT_SYMBOL_GPL vmlinux 0x127c109b __SCT__tp_func_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x128a7397 clkdev_hw_create +EXPORT_SYMBOL_GPL vmlinux 0x12960319 nvme_stop_keep_alive +EXPORT_SYMBOL_GPL vmlinux 0x129983de inverse_translate +EXPORT_SYMBOL_GPL vmlinux 0x129e8b44 device_set_wakeup_capable +EXPORT_SYMBOL_GPL vmlinux 0x129fd643 devm_regulator_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0x12a1ee3f rtc_alarm_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x12a69ac4 devm_clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x12bef1c0 crypto_unregister_rng +EXPORT_SYMBOL_GPL vmlinux 0x12db3a8b kvm_clock +EXPORT_SYMBOL_GPL vmlinux 0x12e285ec is_uv_system +EXPORT_SYMBOL_GPL vmlinux 0x12ee1173 memory_group_unregister +EXPORT_SYMBOL_GPL vmlinux 0x12f23752 regulator_set_load +EXPORT_SYMBOL_GPL vmlinux 0x130109d1 cpuidle_poll_state_init +EXPORT_SYMBOL_GPL vmlinux 0x1306dd13 ata_sff_softreset +EXPORT_SYMBOL_GPL vmlinux 0x1319ac86 vcap_get_rule +EXPORT_SYMBOL_GPL vmlinux 0x131a5ed7 regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x131db64a system_long_wq +EXPORT_SYMBOL_GPL vmlinux 0x131e9eea __traceiter_sched_util_est_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x13288e6a trace_event_raw_init +EXPORT_SYMBOL_GPL vmlinux 0x132b4cca mnt_drop_write +EXPORT_SYMBOL_GPL vmlinux 0x13381295 dw_pcie_wait_for_link +EXPORT_SYMBOL_GPL vmlinux 0x13381eba unregister_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x133969d7 __trace_printk +EXPORT_SYMBOL_GPL vmlinux 0x134c3b9f serdev_device_write_room +EXPORT_SYMBOL_GPL vmlinux 0x13578521 pci_has_p2pmem +EXPORT_SYMBOL_GPL vmlinux 0x135ee5ef ip6_datagram_recv_ctl +EXPORT_SYMBOL_GPL vmlinux 0x136209db power_supply_reg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x137d0c1e relay_close +EXPORT_SYMBOL_GPL vmlinux 0x13803d14 wakeup_sources_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x138aff76 gnttab_init +EXPORT_SYMBOL_GPL vmlinux 0x138e0957 dax_write_cache_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1392a0c1 thermal_zone_device_id +EXPORT_SYMBOL_GPL vmlinux 0x1394d032 __mt_destroy +EXPORT_SYMBOL_GPL vmlinux 0x13a990c8 tty_port_tty_hangup +EXPORT_SYMBOL_GPL vmlinux 0x13b9e193 acpi_dev_resource_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x13ce87e8 asn1_ber_decoder +EXPORT_SYMBOL_GPL vmlinux 0x13d80336 sata_sff_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x13e04b7d dw_pcie_find_capability +EXPORT_SYMBOL_GPL vmlinux 0x13ed8784 sdev_evt_alloc +EXPORT_SYMBOL_GPL vmlinux 0x13f09bd3 task_cputime_adjusted +EXPORT_SYMBOL_GPL vmlinux 0x13f81486 inet6_lookup +EXPORT_SYMBOL_GPL vmlinux 0x13fd346d udp4_hwcsum +EXPORT_SYMBOL_GPL vmlinux 0x1403ad09 cpufreq_add_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x141f38bf ktime_get_raw_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x143884c1 usb_hcd_unmap_urb_setup_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x14484204 sock_diag_register +EXPORT_SYMBOL_GPL vmlinux 0x144fc2a0 fscrypt_prepare_new_inode +EXPORT_SYMBOL_GPL vmlinux 0x1459b19a acpi_device_uevent_modalias +EXPORT_SYMBOL_GPL vmlinux 0x1461a64b regulator_get_linear_step +EXPORT_SYMBOL_GPL vmlinux 0x146626a0 mas_find_rev +EXPORT_SYMBOL_GPL vmlinux 0x1468c2a5 pci_common_swizzle +EXPORT_SYMBOL_GPL vmlinux 0x146cc88f bpf_master_redirect_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x1475d603 xstate_get_guest_group_perm +EXPORT_SYMBOL_GPL vmlinux 0x148c61f1 crypto_unregister_aeads +EXPORT_SYMBOL_GPL vmlinux 0x148eb7ce dev_pm_opp_remove +EXPORT_SYMBOL_GPL vmlinux 0x14a30fe6 of_pse_control_get +EXPORT_SYMBOL_GPL vmlinux 0x14af5198 regmap_multi_reg_write_bypassed +EXPORT_SYMBOL_GPL vmlinux 0x14bbf864 blk_queue_required_elevator_features +EXPORT_SYMBOL_GPL vmlinux 0x14c60a5a bpf_prog_destroy +EXPORT_SYMBOL_GPL vmlinux 0x14c6bbf6 pci_user_write_config_word +EXPORT_SYMBOL_GPL vmlinux 0x14c9f83d pm_generic_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x14d3547f __tracepoint_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x14d6726b sysfs_break_active_protection +EXPORT_SYMBOL_GPL vmlinux 0x14dd9f1d unregister_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x14e8e7c1 led_sysfs_enable +EXPORT_SYMBOL_GPL vmlinux 0x14ec4fdb evtchn_put +EXPORT_SYMBOL_GPL vmlinux 0x14f71538 pci_check_and_mask_intx +EXPORT_SYMBOL_GPL vmlinux 0x15021b4a xa_delete_node +EXPORT_SYMBOL_GPL vmlinux 0x1517bfc7 au_platform_setup +EXPORT_SYMBOL_GPL vmlinux 0x151ca764 devm_platform_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x152f0522 skcipher_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x15340f2a sdio_writesb +EXPORT_SYMBOL_GPL vmlinux 0x153b60a6 klist_del +EXPORT_SYMBOL_GPL vmlinux 0x1542690e __spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0x1549703d kernfs_get +EXPORT_SYMBOL_GPL vmlinux 0x15510a89 devlink_fmsg_binary_put +EXPORT_SYMBOL_GPL vmlinux 0x155f1ece vcap_tc_flower_handler_portnum_usage +EXPORT_SYMBOL_GPL vmlinux 0x15654ce9 pm_clk_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x156e8afe __SCT__tp_func_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x157eb7be ip6_redirect +EXPORT_SYMBOL_GPL vmlinux 0x15886f48 hte_disable_ts +EXPORT_SYMBOL_GPL vmlinux 0x159ee9b6 xdp_rxq_info_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x15ade1cc filter_irq_stacks +EXPORT_SYMBOL_GPL vmlinux 0x15b1b040 pci_bus_add_device +EXPORT_SYMBOL_GPL vmlinux 0x15b3135d ipv6_find_tlv +EXPORT_SYMBOL_GPL vmlinux 0x15b518d4 da903x_read +EXPORT_SYMBOL_GPL vmlinux 0x15bd7435 psi_memstall_leave +EXPORT_SYMBOL_GPL vmlinux 0x15bf6fc5 perf_trace_run_bpf_submit +EXPORT_SYMBOL_GPL vmlinux 0x15e26109 ping_get_port +EXPORT_SYMBOL_GPL vmlinux 0x15e6f667 device_reprobe +EXPORT_SYMBOL_GPL vmlinux 0x15e7140b __tracepoint_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x15ea2648 hwpoison_filter_flags_mask +EXPORT_SYMBOL_GPL vmlinux 0x15f78f44 msg_zerocopy_realloc +EXPORT_SYMBOL_GPL vmlinux 0x15fa9a8b rio_mport_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x15fb3df0 irq_find_matching_fwspec +EXPORT_SYMBOL_GPL vmlinux 0x16018b4a __tracepoint_sched_cpu_capacity_tp +EXPORT_SYMBOL_GPL vmlinux 0x1610f0dd ata_scsi_unlock_native_capacity +EXPORT_SYMBOL_GPL vmlinux 0x16141bee fwnode_graph_get_remote_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x16184bbb fsnotify_add_mark +EXPORT_SYMBOL_GPL vmlinux 0x1633f220 fat_update_time +EXPORT_SYMBOL_GPL vmlinux 0x16422a6e xdp_reg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x16516798 osc_pc_lpi_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x1652fbbc dm_internal_suspend_fast +EXPORT_SYMBOL_GPL vmlinux 0x166482a8 hid_bpf_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0x16664fd3 sched_numa_find_nth_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1666beeb regmap_field_read +EXPORT_SYMBOL_GPL vmlinux 0x1667684d sock_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x166b7362 dst_cache_set_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x166db1b5 sched_clock_idle_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0x167605c5 sbitmap_bitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x167726bb cpuidle_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x167d7113 acpi_bus_register_early_device +EXPORT_SYMBOL_GPL vmlinux 0x168055b2 pwm_adjust_config +EXPORT_SYMBOL_GPL vmlinux 0x1681c9b7 pci_epc_mem_exit +EXPORT_SYMBOL_GPL vmlinux 0x1684ae53 fib4_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x1687ec20 tty_get_frame_size +EXPORT_SYMBOL_GPL vmlinux 0x1690b503 usb_role_switch_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x169b453f regmap_field_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x169d35aa nvme_unquiesce_io_queues +EXPORT_SYMBOL_GPL vmlinux 0x169fc244 sk_msg_alloc +EXPORT_SYMBOL_GPL vmlinux 0x16a67497 irq_gc_set_wake +EXPORT_SYMBOL_GPL vmlinux 0x16bf12f8 register_fprobe_ips +EXPORT_SYMBOL_GPL vmlinux 0x16cb6a90 radix_tree_preloads +EXPORT_SYMBOL_GPL vmlinux 0x16d32fe8 tty_kopen_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x16da1f88 devlink_fmsg_u32_put +EXPORT_SYMBOL_GPL vmlinux 0x16dfbf36 add_interrupt_randomness +EXPORT_SYMBOL_GPL vmlinux 0x16e613e5 tty_port_link_device +EXPORT_SYMBOL_GPL vmlinux 0x16ef67b6 pm_genpd_init +EXPORT_SYMBOL_GPL vmlinux 0x16f15139 bind_evtchn_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x17009ebb pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x170cc36c put_timespec64 +EXPORT_SYMBOL_GPL vmlinux 0x17144951 kthread_cancel_delayed_work_sync +EXPORT_SYMBOL_GPL vmlinux 0x1741ddee trace_seq_puts +EXPORT_SYMBOL_GPL vmlinux 0x174c6274 ring_buffer_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x174e6c46 inet_ehash_locks_alloc +EXPORT_SYMBOL_GPL vmlinux 0x17504c60 usb_remove_hcd +EXPORT_SYMBOL_GPL vmlinux 0x175427e6 rt288x_setup +EXPORT_SYMBOL_GPL vmlinux 0x176031a7 devlink_fmsg_string_put +EXPORT_SYMBOL_GPL vmlinux 0x17614bf3 apei_resources_sub +EXPORT_SYMBOL_GPL vmlinux 0x1762da95 find_mci_by_dev +EXPORT_SYMBOL_GPL vmlinux 0x1764846a blk_next_bio +EXPORT_SYMBOL_GPL vmlinux 0x1768c761 acpi_device_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x176adf76 xenmem_reservation_decrease +EXPORT_SYMBOL_GPL vmlinux 0x1776ec49 irq_chip_set_wake_parent +EXPORT_SYMBOL_GPL vmlinux 0x177c338d twl_get_version +EXPORT_SYMBOL_GPL vmlinux 0x177c6097 sdio_retune_release +EXPORT_SYMBOL_GPL vmlinux 0x1781d8b3 regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x17893be2 inet6_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0x17939249 perf_event_disable +EXPORT_SYMBOL_GPL vmlinux 0x17add64b gdt_page +EXPORT_SYMBOL_GPL vmlinux 0x17c92b11 ata_acpi_gtm +EXPORT_SYMBOL_GPL vmlinux 0x17ca4ec7 __platform_register_drivers +EXPORT_SYMBOL_GPL vmlinux 0x17e01f11 erst_clear +EXPORT_SYMBOL_GPL vmlinux 0x17edebb1 pcc_mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0x18008c59 ring_buffer_resize +EXPORT_SYMBOL_GPL vmlinux 0x182c2574 bpf_verifier_log_write +EXPORT_SYMBOL_GPL vmlinux 0x182c4bc7 devm_clk_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x182e2f09 cn_netlink_send_mult +EXPORT_SYMBOL_GPL vmlinux 0x1833f39b ata_qc_get_active +EXPORT_SYMBOL_GPL vmlinux 0x18363eea debugfs_attr_read +EXPORT_SYMBOL_GPL vmlinux 0x18428692 __cookie_v6_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x184ad2dc ehci_resume +EXPORT_SYMBOL_GPL vmlinux 0x1856651d skb_mpls_dec_ttl +EXPORT_SYMBOL_GPL vmlinux 0x18582826 amd_pmu_disable_virt +EXPORT_SYMBOL_GPL vmlinux 0x187075f4 __get_task_comm +EXPORT_SYMBOL_GPL vmlinux 0x187261da rdev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x18793027 usb_hcd_resume_root_hub +EXPORT_SYMBOL_GPL vmlinux 0x187a069d get_pid_task +EXPORT_SYMBOL_GPL vmlinux 0x187b5f2a wm831x_auxadc_read +EXPORT_SYMBOL_GPL vmlinux 0x187c8185 devlink_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0x188dc856 iptunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0x18903de8 usb_driver_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x189a5dcc ipv4_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x18a9aba9 fsnotify +EXPORT_SYMBOL_GPL vmlinux 0x18b1a2b3 lp8788_read_multi_bytes +EXPORT_SYMBOL_GPL vmlinux 0x18b2790f uv_bios_obj_count +EXPORT_SYMBOL_GPL vmlinux 0x18b7bad5 fib6_new_table +EXPORT_SYMBOL_GPL vmlinux 0x18c0dc56 fib_rules_lookup +EXPORT_SYMBOL_GPL vmlinux 0x18e1fb75 dev_pm_opp_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x18e4f8aa swphy_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x18fb2caf cpus_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x18fb978c clk_hw_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x1902f33f blk_steal_bios +EXPORT_SYMBOL_GPL vmlinux 0x19143412 virtio_break_device +EXPORT_SYMBOL_GPL vmlinux 0x191f8ec9 pci_hp_del +EXPORT_SYMBOL_GPL vmlinux 0x193282ae acpi_dev_resource_ext_address_space +EXPORT_SYMBOL_GPL vmlinux 0x193dfdf6 klp_get_prev_state +EXPORT_SYMBOL_GPL vmlinux 0x193f479d iommu_sva_bind_device +EXPORT_SYMBOL_GPL vmlinux 0x1945550d device_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0x1949462c tpm1_do_selftest +EXPORT_SYMBOL_GPL vmlinux 0x1959ea58 __devm_regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0x196614ce hw_breakpoint_restore +EXPORT_SYMBOL_GPL vmlinux 0x19790c26 irq_chip_release_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x19882643 scsi_target_unblock +EXPORT_SYMBOL_GPL vmlinux 0x1993073c ima_file_hash +EXPORT_SYMBOL_GPL vmlinux 0x199c4833 __irq_apply_affinity_hint +EXPORT_SYMBOL_GPL vmlinux 0x19a304ba usb_disabled +EXPORT_SYMBOL_GPL vmlinux 0x19c20269 soc_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x19c42957 blk_op_str +EXPORT_SYMBOL_GPL vmlinux 0x19dfc0e8 ata_do_dev_read_id +EXPORT_SYMBOL_GPL vmlinux 0x19e0ae50 __SCT__tp_func_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x19e81304 btree_alloc +EXPORT_SYMBOL_GPL vmlinux 0x19edd064 blkg_rwstat_exit +EXPORT_SYMBOL_GPL vmlinux 0x19f33626 nf_ctnetlink_has_listener +EXPORT_SYMBOL_GPL vmlinux 0x1a0949a1 wm8350_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0x1a10c32b crypto_ft_tab +EXPORT_SYMBOL_GPL vmlinux 0x1a146ec3 usb_ep_type_string +EXPORT_SYMBOL_GPL vmlinux 0x1a2c0aef xfrm_register_translator +EXPORT_SYMBOL_GPL vmlinux 0x1a3e7fcf shmem_file_setup_with_mnt +EXPORT_SYMBOL_GPL vmlinux 0x1a44468d iommu_present +EXPORT_SYMBOL_GPL vmlinux 0x1a45e019 md_allow_write +EXPORT_SYMBOL_GPL vmlinux 0x1a466460 devm_nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x1a4ae57c nvmem_cell_read_u8 +EXPORT_SYMBOL_GPL vmlinux 0x1a4b4ef5 irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0x1a57efd1 devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x1a5de819 devm_phy_get +EXPORT_SYMBOL_GPL vmlinux 0x1a5e0ae4 virtqueue_get_buf_ctx +EXPORT_SYMBOL_GPL vmlinux 0x1a6bf28f fsnotify_get_cookie +EXPORT_SYMBOL_GPL vmlinux 0x1a7d40e5 tpm2_get_tpm_pt +EXPORT_SYMBOL_GPL vmlinux 0x1a7fc948 ftrace_free_filter +EXPORT_SYMBOL_GPL vmlinux 0x1a82368d ZSTD_customCalloc +EXPORT_SYMBOL_GPL vmlinux 0x1a891e74 vp_modern_set_queue_size +EXPORT_SYMBOL_GPL vmlinux 0x1a91ebbe i2c_new_scanned_device +EXPORT_SYMBOL_GPL vmlinux 0x1a955675 pci_iov_virtfn_devfn +EXPORT_SYMBOL_GPL vmlinux 0x1ac02def crypto_type_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x1acd18c8 cpuset_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x1adac090 firmware_request_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x1af267f8 int_pow +EXPORT_SYMBOL_GPL vmlinux 0x1afaa2fd proc_dou8vec_minmax +EXPORT_SYMBOL_GPL vmlinux 0x1aff3d55 mce_register_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0x1b0602c1 cond_synchronize_rcu_full +EXPORT_SYMBOL_GPL vmlinux 0x1b11e0ce io_cgrp_subsys +EXPORT_SYMBOL_GPL vmlinux 0x1b2dccee extcon_get_state +EXPORT_SYMBOL_GPL vmlinux 0x1b3b4b81 sk_msg_free_partial +EXPORT_SYMBOL_GPL vmlinux 0x1b3fe0dc xen_pci_frontend +EXPORT_SYMBOL_GPL vmlinux 0x1b5c3e11 kthread_flush_worker +EXPORT_SYMBOL_GPL vmlinux 0x1b5c5804 dev_pm_genpd_resume +EXPORT_SYMBOL_GPL vmlinux 0x1b5f4377 trace_seq_putc +EXPORT_SYMBOL_GPL vmlinux 0x1b62ceb0 nvmem_cell_read_variable_le_u32 +EXPORT_SYMBOL_GPL vmlinux 0x1b68ef39 devlink_dpipe_action_put +EXPORT_SYMBOL_GPL vmlinux 0x1b6c0961 nvmem_device_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x1b811fc1 blk_abort_request +EXPORT_SYMBOL_GPL vmlinux 0x1b8822d8 pinctrl_gpio_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x1b92e41d inet_putpeer +EXPORT_SYMBOL_GPL vmlinux 0x1b9a805e debugfs_write_file_bool +EXPORT_SYMBOL_GPL vmlinux 0x1ba237b0 default_cpu_present_to_apicid +EXPORT_SYMBOL_GPL vmlinux 0x1ba5db0a crypto_clone_ahash +EXPORT_SYMBOL_GPL vmlinux 0x1bbc11bf devlink_region_snapshot_id_get +EXPORT_SYMBOL_GPL vmlinux 0x1bc5eebe pinctrl_gpio_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x1bc64087 xas_split +EXPORT_SYMBOL_GPL vmlinux 0x1bd30dd7 __devres_alloc_node +EXPORT_SYMBOL_GPL vmlinux 0x1bd5ed9c __tracepoint_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x1c0c18c6 crypto_alloc_kpp +EXPORT_SYMBOL_GPL vmlinux 0x1c0de9cc vp_legacy_get_queue_size +EXPORT_SYMBOL_GPL vmlinux 0x1c0fb819 pci_epc_stop +EXPORT_SYMBOL_GPL vmlinux 0x1c1e9d3c _copy_mc_to_iter +EXPORT_SYMBOL_GPL vmlinux 0x1c2b319a crypto_register_acomp +EXPORT_SYMBOL_GPL vmlinux 0x1c2d879b __iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0x1c3abbd7 bpf_prog_sub +EXPORT_SYMBOL_GPL vmlinux 0x1c5541bd cpufreq_boost_enabled +EXPORT_SYMBOL_GPL vmlinux 0x1c5b1f28 irq_free_descs +EXPORT_SYMBOL_GPL vmlinux 0x1c5ff742 clk_get_phase +EXPORT_SYMBOL_GPL vmlinux 0x1c7169dc ZSTD_customFree +EXPORT_SYMBOL_GPL vmlinux 0x1c764526 __SCT__tp_func_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1c77c66f phy_restore_page +EXPORT_SYMBOL_GPL vmlinux 0x1c7c67ab gpiochip_find +EXPORT_SYMBOL_GPL vmlinux 0x1c7d973f crypto_remove_spawns +EXPORT_SYMBOL_GPL vmlinux 0x1c80d27d btree_geo128 +EXPORT_SYMBOL_GPL vmlinux 0x1c819c63 of_icc_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0x1c865dad thermal_zone_device_update +EXPORT_SYMBOL_GPL vmlinux 0x1c87a811 __round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x1c95886d regulator_put +EXPORT_SYMBOL_GPL vmlinux 0x1ca3aa97 alarm_forward +EXPORT_SYMBOL_GPL vmlinux 0x1ca9c77a vfs_remove_acl +EXPORT_SYMBOL_GPL vmlinux 0x1cb7c983 apei_exec_read_register_value +EXPORT_SYMBOL_GPL vmlinux 0x1cb9a1c8 xenbus_gather +EXPORT_SYMBOL_GPL vmlinux 0x1cbd92b0 cpu_mitigations_off +EXPORT_SYMBOL_GPL vmlinux 0x1cc09c6c devlink_alloc_ns +EXPORT_SYMBOL_GPL vmlinux 0x1cc0a734 pm_genpd_remove_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x1cc82bc0 ata_sas_tport_delete +EXPORT_SYMBOL_GPL vmlinux 0x1cc9ff9e tty_buffer_set_limit +EXPORT_SYMBOL_GPL vmlinux 0x1cdd0605 xhci_port_state_to_neutral +EXPORT_SYMBOL_GPL vmlinux 0x1cea75e3 regulator_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x1cff8eab sbitmap_init_node +EXPORT_SYMBOL_GPL vmlinux 0x1d0452cf of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1d14afe6 clk_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x1d167eab device_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0x1d18d473 sata_pmp_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x1d1d8daa ata_host_suspend +EXPORT_SYMBOL_GPL vmlinux 0x1d222ced irq_get_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0x1d2e6ffb sdio_readsb +EXPORT_SYMBOL_GPL vmlinux 0x1d2f4d2f debugfs_create_u32_array +EXPORT_SYMBOL_GPL vmlinux 0x1d3a5187 led_init_core +EXPORT_SYMBOL_GPL vmlinux 0x1d3b270f nvme_auth_transform_key +EXPORT_SYMBOL_GPL vmlinux 0x1d6a7749 iommu_map +EXPORT_SYMBOL_GPL vmlinux 0x1d7604de crypto_spawn_tfm2 +EXPORT_SYMBOL_GPL vmlinux 0x1d839178 regulator_count_voltages +EXPORT_SYMBOL_GPL vmlinux 0x1d91d3ce of_hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x1d94a218 dmi_memdev_handle +EXPORT_SYMBOL_GPL vmlinux 0x1da1604e pci_cfg_access_unlock +EXPORT_SYMBOL_GPL vmlinux 0x1db22acc regulator_disable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x1db5cb5a rtc_class_open +EXPORT_SYMBOL_GPL vmlinux 0x1dcc1f1e thermal_cooling_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x1dd3185a to_nvdimm +EXPORT_SYMBOL_GPL vmlinux 0x1dd7427a usb_deregister_device_driver +EXPORT_SYMBOL_GPL vmlinux 0x1ddd4b4c bpf_prog_add +EXPORT_SYMBOL_GPL vmlinux 0x1df3eb51 devlink_port_attrs_pci_vf_set +EXPORT_SYMBOL_GPL vmlinux 0x1dfa5dbd mpi_invm +EXPORT_SYMBOL_GPL vmlinux 0x1e028fe5 crypto_shash_finup +EXPORT_SYMBOL_GPL vmlinux 0x1e0670c6 reset_control_release +EXPORT_SYMBOL_GPL vmlinux 0x1e230a62 extcon_set_property_sync +EXPORT_SYMBOL_GPL vmlinux 0x1e2e6430 skb_segment_list +EXPORT_SYMBOL_GPL vmlinux 0x1e3460a0 ata_sff_postreset +EXPORT_SYMBOL_GPL vmlinux 0x1e3817a3 sched_numa_hop_mask +EXPORT_SYMBOL_GPL vmlinux 0x1e3bc77c xas_create_range +EXPORT_SYMBOL_GPL vmlinux 0x1e424d61 user_preparse +EXPORT_SYMBOL_GPL vmlinux 0x1e4e18cc rio_unregister_scan +EXPORT_SYMBOL_GPL vmlinux 0x1e53f827 stack_depot_print +EXPORT_SYMBOL_GPL vmlinux 0x1e54d762 ata_scsi_port_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x1e5a5f22 sn_partition_id +EXPORT_SYMBOL_GPL vmlinux 0x1e5b9985 xenbus_frontend_closed +EXPORT_SYMBOL_GPL vmlinux 0x1e7bbcb3 kernel_restart +EXPORT_SYMBOL_GPL vmlinux 0x1e8f6195 disk_set_independent_access_ranges +EXPORT_SYMBOL_GPL vmlinux 0x1e8fac8e wireless_nlevent_flush +EXPORT_SYMBOL_GPL vmlinux 0x1e912415 uv_bios_get_heapsize +EXPORT_SYMBOL_GPL vmlinux 0x1e9bc719 freq_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x1e9c590a usb_find_common_endpoints_reverse +EXPORT_SYMBOL_GPL vmlinux 0x1eacd5cc __traceiter_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x1eb49882 md_submit_discard_bio +EXPORT_SYMBOL_GPL vmlinux 0x1eb526dd eventfd_ctx_fileget +EXPORT_SYMBOL_GPL vmlinux 0x1eb9516e round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x1ebb2fae regmap_might_sleep +EXPORT_SYMBOL_GPL vmlinux 0x1ebf6c2a pci_power_names +EXPORT_SYMBOL_GPL vmlinux 0x1ec8b079 __SCK__tp_func_ipi_send_cpu +EXPORT_SYMBOL_GPL vmlinux 0x1ecd49d8 ptdump_walk_pgd_level_debugfs +EXPORT_SYMBOL_GPL vmlinux 0x1ed4d2eb percpu_ref_kill_and_confirm +EXPORT_SYMBOL_GPL vmlinux 0x1ee47e00 is_vmalloc_or_module_addr +EXPORT_SYMBOL_GPL vmlinux 0x1eee9385 trace_event_buffer_commit +EXPORT_SYMBOL_GPL vmlinux 0x1ef20793 stop_core_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x1ef96a31 hvc_poll +EXPORT_SYMBOL_GPL vmlinux 0x1f1798ed devfreq_event_reset_event +EXPORT_SYMBOL_GPL vmlinux 0x1f1a191c vfs_setlease +EXPORT_SYMBOL_GPL vmlinux 0x1f2b1a3f public_key_subtype +EXPORT_SYMBOL_GPL vmlinux 0x1f355ad6 component_add +EXPORT_SYMBOL_GPL vmlinux 0x1f35abfa __devm_intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0x1f38a4f6 mpi_set_highbit +EXPORT_SYMBOL_GPL vmlinux 0x1f3e14b1 debugfs_attr_write +EXPORT_SYMBOL_GPL vmlinux 0x1f422149 irq_domain_create_simple +EXPORT_SYMBOL_GPL vmlinux 0x1f449588 mctrl_gpio_disable_ms +EXPORT_SYMBOL_GPL vmlinux 0x1f563160 bpf_offload_dev_priv +EXPORT_SYMBOL_GPL vmlinux 0x1f5de809 iomap_release_folio +EXPORT_SYMBOL_GPL vmlinux 0x1f6256d6 inet_twsk_hashdance +EXPORT_SYMBOL_GPL vmlinux 0x1f63ee60 dev_pm_opp_get_voltage +EXPORT_SYMBOL_GPL vmlinux 0x1f656b57 dma_resv_describe +EXPORT_SYMBOL_GPL vmlinux 0x1f6cd584 efivar_reserved_space +EXPORT_SYMBOL_GPL vmlinux 0x1f76e586 aead_geniv_alloc +EXPORT_SYMBOL_GPL vmlinux 0x1f800aa9 blk_queue_max_zone_append_sectors +EXPORT_SYMBOL_GPL vmlinux 0x1f8544b8 panic_timeout +EXPORT_SYMBOL_GPL vmlinux 0x1f86d3fe rio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x1f89fc71 of_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0x1f8f4c2d nvdimm_bus_add_badrange +EXPORT_SYMBOL_GPL vmlinux 0x1fa0fbe3 ohci_hub_status_data +EXPORT_SYMBOL_GPL vmlinux 0x1fa120fd xdp_features_clear_redirect_target +EXPORT_SYMBOL_GPL vmlinux 0x1fa1d95c sha256_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x1fa29a6e hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x1fa48995 efivar_supports_writes +EXPORT_SYMBOL_GPL vmlinux 0x1fcf3362 hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0x1fe447e2 ata_sff_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x1fe6c75f nvme_unquiesce_admin_queue +EXPORT_SYMBOL_GPL vmlinux 0x1fe6e504 gpiod_add_hogs +EXPORT_SYMBOL_GPL vmlinux 0x1fe8e5a6 nfct_btf_struct_access +EXPORT_SYMBOL_GPL vmlinux 0x1ff50228 nf_hook_entries_insert_raw +EXPORT_SYMBOL_GPL vmlinux 0x2009e400 devlink_info_board_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x20270ec1 gpiod_set_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x202c1ca7 sysfs_update_group +EXPORT_SYMBOL_GPL vmlinux 0x202d4ed6 nvmem_cell_write +EXPORT_SYMBOL_GPL vmlinux 0x203d2905 sock_diag_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2049accb get_governor_parent_kobj +EXPORT_SYMBOL_GPL vmlinux 0x204f2c5c gnttab_free_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x205b9984 iommu_set_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x205f3580 class_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2067df0e crypto_register_aeads +EXPORT_SYMBOL_GPL vmlinux 0x2068e2fe driver_find +EXPORT_SYMBOL_GPL vmlinux 0x2070571d __tracepoint_map +EXPORT_SYMBOL_GPL vmlinux 0x2081cf48 nvdimm_has_flush +EXPORT_SYMBOL_GPL vmlinux 0x208222f6 acpi_register_gsi +EXPORT_SYMBOL_GPL vmlinux 0x20899467 hv_stimer0_isr +EXPORT_SYMBOL_GPL vmlinux 0x209102ba xenbus_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x20978fb9 idr_find +EXPORT_SYMBOL_GPL vmlinux 0x209bf509 xhci_get_ep_ctx +EXPORT_SYMBOL_GPL vmlinux 0x20a4e01a HUF_readStats_wksp +EXPORT_SYMBOL_GPL vmlinux 0x20ac123f for_each_kernel_tracepoint +EXPORT_SYMBOL_GPL vmlinux 0x20ac17d5 raw_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0x20b9dc98 usb_hcd_unmap_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x20c7f3ea serial8250_em485_start_tx +EXPORT_SYMBOL_GPL vmlinux 0x20ed203a pinctrl_utils_add_map_configs +EXPORT_SYMBOL_GPL vmlinux 0x20f6de57 acpi_bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x20f78975 blk_trace_setup +EXPORT_SYMBOL_GPL vmlinux 0x20fb618f dma_async_device_channel_unregister +EXPORT_SYMBOL_GPL vmlinux 0x21003da9 task_cls_state +EXPORT_SYMBOL_GPL vmlinux 0x210ece1c devlink_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x2113f64f pm_runtime_force_suspend +EXPORT_SYMBOL_GPL vmlinux 0x212734c5 vcap_netbytes_copy +EXPORT_SYMBOL_GPL vmlinux 0x21349920 platform_get_irq_byname_optional +EXPORT_SYMBOL_GPL vmlinux 0x213b032a __devm_regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x215315ba usb_unlocked_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x215dc495 devm_bitmap_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2164ab6d fsverity_ioctl_read_metadata +EXPORT_SYMBOL_GPL vmlinux 0x2165fe0a __phy_modify +EXPORT_SYMBOL_GPL vmlinux 0x216de4e1 rcu_get_gp_kthreads_prio +EXPORT_SYMBOL_GPL vmlinux 0x2176e42a hwpoison_filter_memcg +EXPORT_SYMBOL_GPL vmlinux 0x2181d9d0 led_classdev_notify_brightness_hw_changed +EXPORT_SYMBOL_GPL vmlinux 0x218515de devfreq_get_devfreq_by_node +EXPORT_SYMBOL_GPL vmlinux 0x21a563da clk_get_accuracy +EXPORT_SYMBOL_GPL vmlinux 0x21aeebed xen_xenbus_fops +EXPORT_SYMBOL_GPL vmlinux 0x21cd536a crypto_put_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x21d8a7b3 gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0x21e1053f gnttab_end_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x21e1168e iommu_detach_device +EXPORT_SYMBOL_GPL vmlinux 0x21e3e93c __tracepoint_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x21e67920 unwind_next_frame +EXPORT_SYMBOL_GPL vmlinux 0x21f473b0 devm_hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0x21f6db69 spi_mem_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x220082de pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x221b0660 dev_get_tstats64 +EXPORT_SYMBOL_GPL vmlinux 0x22310137 devfreq_get_devfreq_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2231466e devm_namespace_enable +EXPORT_SYMBOL_GPL vmlinux 0x223c56c2 skcipher_alloc_instance_simple +EXPORT_SYMBOL_GPL vmlinux 0x224ec9ec dmaengine_desc_attach_metadata +EXPORT_SYMBOL_GPL vmlinux 0x2253c35b fuse_dev_alloc +EXPORT_SYMBOL_GPL vmlinux 0x2264109c __devm_clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x2267e3bb i2c_client_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x227b42fd fwnode_usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0x2290148f inet_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0x22936740 devm_hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x229723c0 acpi_processor_get_performance_info +EXPORT_SYMBOL_GPL vmlinux 0x22a33f2f ata_dev_set_feature +EXPORT_SYMBOL_GPL vmlinux 0x22aef11d virtio_config_changed +EXPORT_SYMBOL_GPL vmlinux 0x22b49203 swapcache_mapping +EXPORT_SYMBOL_GPL vmlinux 0x22bacc24 da9052_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x22d60537 tcf_frag_xmit_count +EXPORT_SYMBOL_GPL vmlinux 0x22d9409b iomap_sort_ioends +EXPORT_SYMBOL_GPL vmlinux 0x22e5d1de nvme_auth_augmented_challenge +EXPORT_SYMBOL_GPL vmlinux 0x22ec5205 cpu_latency_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x22fd08ba cpuacct_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x22fd4c03 x86_vector_domain +EXPORT_SYMBOL_GPL vmlinux 0x22fedb1e fscrypt_set_bio_crypt_ctx +EXPORT_SYMBOL_GPL vmlinux 0x230ce57c palmas_ext_control_req_config +EXPORT_SYMBOL_GPL vmlinux 0x230e63d1 vp_legacy_get_driver_features +EXPORT_SYMBOL_GPL vmlinux 0x2316d84a devfreq_event_enable_edev +EXPORT_SYMBOL_GPL vmlinux 0x2319b020 acpi_pci_find_root +EXPORT_SYMBOL_GPL vmlinux 0x2325b97d thermal_zone_device +EXPORT_SYMBOL_GPL vmlinux 0x23412816 rtc_tm_to_ktime +EXPORT_SYMBOL_GPL vmlinux 0x234cf416 devlink_fmsg_string_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x234d982d regmap_raw_write_async +EXPORT_SYMBOL_GPL vmlinux 0x234ef820 switchdev_handle_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0x235b48cc xfrm_audit_policy_delete +EXPORT_SYMBOL_GPL vmlinux 0x236ac27e __clk_hw_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x23864ce7 cpuset_mem_spread_node +EXPORT_SYMBOL_GPL vmlinux 0x2386c0ea __SCT__tp_func_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x23937701 scsi_dh_set_params +EXPORT_SYMBOL_GPL vmlinux 0x2396c7f0 clk_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x239e7fd4 xfrm_audit_state_replay_overflow +EXPORT_SYMBOL_GPL vmlinux 0x239ff1ae vchan_init +EXPORT_SYMBOL_GPL vmlinux 0x23a3af72 platform_device_add_resources +EXPORT_SYMBOL_GPL vmlinux 0x23b4e0d7 clear_page_rep +EXPORT_SYMBOL_GPL vmlinux 0x23c3b778 phy_basic_features +EXPORT_SYMBOL_GPL vmlinux 0x23c67fa9 usb_amd_pt_check_port +EXPORT_SYMBOL_GPL vmlinux 0x23ca0613 free_vm_area +EXPORT_SYMBOL_GPL vmlinux 0x23cb1f3a dma_map_sgtable +EXPORT_SYMBOL_GPL vmlinux 0x23e12f23 crypto_skcipher_setkey +EXPORT_SYMBOL_GPL vmlinux 0x23f7f88d sysfs_chmod_file +EXPORT_SYMBOL_GPL vmlinux 0x23fae4c0 sock_diag_unregister_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x24067024 net_failover_create +EXPORT_SYMBOL_GPL vmlinux 0x2414ac4d vp_modern_queue_vector +EXPORT_SYMBOL_GPL vmlinux 0x2421097b mpi_const +EXPORT_SYMBOL_GPL vmlinux 0x24235223 phy_10gbit_full_features +EXPORT_SYMBOL_GPL vmlinux 0x24241893 sdio_memcpy_toio +EXPORT_SYMBOL_GPL vmlinux 0x242be13f sysfs_remove_file_from_group +EXPORT_SYMBOL_GPL vmlinux 0x24413343 erst_read_record +EXPORT_SYMBOL_GPL vmlinux 0x245333e1 led_stop_software_blink +EXPORT_SYMBOL_GPL vmlinux 0x2454665d from_vfsuid +EXPORT_SYMBOL_GPL vmlinux 0x245e1c3b tty_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x2464da17 gen_pool_size +EXPORT_SYMBOL_GPL vmlinux 0x24709b2f trace_seq_putmem +EXPORT_SYMBOL_GPL vmlinux 0x247aaf4c iommu_dev_disable_feature +EXPORT_SYMBOL_GPL vmlinux 0x247d094e rio_release_outb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x247f59a8 skb_cow_data +EXPORT_SYMBOL_GPL vmlinux 0x2484e789 vbin_printf +EXPORT_SYMBOL_GPL vmlinux 0x248bc867 raw_notifier_call_chain_robust +EXPORT_SYMBOL_GPL vmlinux 0x248e1473 kfree_strarray +EXPORT_SYMBOL_GPL vmlinux 0x24949bea input_ff_create +EXPORT_SYMBOL_GPL vmlinux 0x24ad11db wakeup_sources_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x24b4008f walk_hmem_resources +EXPORT_SYMBOL_GPL vmlinux 0x24bafb06 devm_register_power_off_handler +EXPORT_SYMBOL_GPL vmlinux 0x24d181c7 xdp_rxq_info_unused +EXPORT_SYMBOL_GPL vmlinux 0x24da0093 rcu_inkernel_boot_has_ended +EXPORT_SYMBOL_GPL vmlinux 0x24e826b0 root_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x24eb7e32 leds_list +EXPORT_SYMBOL_GPL vmlinux 0x24f39c39 reset_control_reset +EXPORT_SYMBOL_GPL vmlinux 0x24f7e554 icc_node_add +EXPORT_SYMBOL_GPL vmlinux 0x24fc50f4 kdb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x25078d7a __phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x250bffdb elv_register +EXPORT_SYMBOL_GPL vmlinux 0x25115f51 phy_reset +EXPORT_SYMBOL_GPL vmlinux 0x251e8a7a md_rdev_clear +EXPORT_SYMBOL_GPL vmlinux 0x252f2940 regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0x25301bc6 arch_wb_cache_pmem +EXPORT_SYMBOL_GPL vmlinux 0x25379e73 clk_set_min_rate +EXPORT_SYMBOL_GPL vmlinux 0x253c9778 wbc_detach_inode +EXPORT_SYMBOL_GPL vmlinux 0x2546c23e skb_mpls_update_lse +EXPORT_SYMBOL_GPL vmlinux 0x25672766 udp_bpf_update_proto +EXPORT_SYMBOL_GPL vmlinux 0x257da671 xenbus_map_ring_valloc +EXPORT_SYMBOL_GPL vmlinux 0x25842ac5 ip_route_output_key_hash +EXPORT_SYMBOL_GPL vmlinux 0x258a4035 inet_csk_listen_stop +EXPORT_SYMBOL_GPL vmlinux 0x258e9fd3 mctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x2592fc6c console_printk +EXPORT_SYMBOL_GPL vmlinux 0x25947f4a pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x259a5a86 device_match_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x25a7a1e0 desc_to_gpio +EXPORT_SYMBOL_GPL vmlinux 0x25aae5a6 ata_bmdma_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x25b1f0b1 power_supply_get_property_from_supplier +EXPORT_SYMBOL_GPL vmlinux 0x25b22c6d regmap_raw_write +EXPORT_SYMBOL_GPL vmlinux 0x25bbfa9a security_kernel_load_data +EXPORT_SYMBOL_GPL vmlinux 0x25d23743 sdio_set_block_size +EXPORT_SYMBOL_GPL vmlinux 0x25f02c87 xen_p2m_addr +EXPORT_SYMBOL_GPL vmlinux 0x2627806e nvme_auth_negotiate +EXPORT_SYMBOL_GPL vmlinux 0x262a7063 xen_start_info +EXPORT_SYMBOL_GPL vmlinux 0x2633d532 spi_target_abort +EXPORT_SYMBOL_GPL vmlinux 0x2651642a kthread_park +EXPORT_SYMBOL_GPL vmlinux 0x26520970 vm_memory_committed +EXPORT_SYMBOL_GPL vmlinux 0x265b6e29 hyperv_flush_guest_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x265bbef9 kexec_crash_loaded +EXPORT_SYMBOL_GPL vmlinux 0x265c8771 bsg_job_get +EXPORT_SYMBOL_GPL vmlinux 0x2660f2ef rio_request_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0x2667efb3 rtnl_af_register +EXPORT_SYMBOL_GPL vmlinux 0x26681679 usb_phy_set_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x266a4b08 tasklet_unlock +EXPORT_SYMBOL_GPL vmlinux 0x2678cb3d xenbus_register_driver_common +EXPORT_SYMBOL_GPL vmlinux 0x267df662 smp_call_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2681468f uhci_check_and_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x2689a448 gpiochip_irq_domain_activate +EXPORT_SYMBOL_GPL vmlinux 0x268b2665 __trace_trigger_soft_disabled +EXPORT_SYMBOL_GPL vmlinux 0x269cd6ee fsverity_ioctl_enable +EXPORT_SYMBOL_GPL vmlinux 0x26a0abc0 __tracepoint_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0x26a7a5d3 edac_device_add_device +EXPORT_SYMBOL_GPL vmlinux 0x26a93eb2 verify_pkcs7_signature +EXPORT_SYMBOL_GPL vmlinux 0x26ab4755 put_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x26c90ea4 scsi_eh_get_sense +EXPORT_SYMBOL_GPL vmlinux 0x26cda94f e820__mapped_raw_any +EXPORT_SYMBOL_GPL vmlinux 0x26d9d197 fuse_dax_cancel_work +EXPORT_SYMBOL_GPL vmlinux 0x26de184f pci_user_read_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x26e77fae netlink_remove_tap +EXPORT_SYMBOL_GPL vmlinux 0x26ed2186 register_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0x26f3b3e6 pci_msix_free_irq +EXPORT_SYMBOL_GPL vmlinux 0x26fc7812 devm_led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x270408aa gpiochip_relres_irq +EXPORT_SYMBOL_GPL vmlinux 0x270725fe crypto_destroy_tfm +EXPORT_SYMBOL_GPL vmlinux 0x273aff5c __SCT__tp_func_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x273e1002 fpu_sync_guest_vmexit_xfd_state +EXPORT_SYMBOL_GPL vmlinux 0x274c8f96 crypto_grab_aead +EXPORT_SYMBOL_GPL vmlinux 0x27701ab6 rio_mport_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x2773c485 __wake_up_locked +EXPORT_SYMBOL_GPL vmlinux 0x27826dc5 usb_bulk_msg +EXPORT_SYMBOL_GPL vmlinux 0x2787bf2f acpi_dev_suspend +EXPORT_SYMBOL_GPL vmlinux 0x2795fc9d vcap_set_rule_set_actionset +EXPORT_SYMBOL_GPL vmlinux 0x27a5784e device_phy_find_device +EXPORT_SYMBOL_GPL vmlinux 0x27ae745a irq_gc_ack_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x27bd1b3d devm_regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x27bfff92 pse_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0x27c50e96 ata_link_offline +EXPORT_SYMBOL_GPL vmlinux 0x27c82890 msi_domain_first_desc +EXPORT_SYMBOL_GPL vmlinux 0x27d14f9b ethnl_cable_test_step +EXPORT_SYMBOL_GPL vmlinux 0x27d8f65d usb_kill_urb +EXPORT_SYMBOL_GPL vmlinux 0x27df3105 hv_alloc_hyperv_zeroed_page +EXPORT_SYMBOL_GPL vmlinux 0x27e2896c scsi_internal_device_block_nowait +EXPORT_SYMBOL_GPL vmlinux 0x27f3a5d3 __pm_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x27f4f029 ftrace_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x27fa5366 gnttab_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x27fa66e1 nr_free_buffer_pages +EXPORT_SYMBOL_GPL vmlinux 0x27fcb5c3 pci_bridge_secondary_bus_reset +EXPORT_SYMBOL_GPL vmlinux 0x2805f249 dax_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2817f7fd cppc_get_desired_perf +EXPORT_SYMBOL_GPL vmlinux 0x281cc8df dma_async_device_channel_register +EXPORT_SYMBOL_GPL vmlinux 0x282cdabc usb_led_activity +EXPORT_SYMBOL_GPL vmlinux 0x28310bcd kasprintf_strarray +EXPORT_SYMBOL_GPL vmlinux 0x2842afef hv_get_non_nested_register +EXPORT_SYMBOL_GPL vmlinux 0x2864abc9 klist_node_attached +EXPORT_SYMBOL_GPL vmlinux 0x28657e7d xdp_attachment_setup +EXPORT_SYMBOL_GPL vmlinux 0x28659872 nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x286cc647 async_synchronize_cookie_domain +EXPORT_SYMBOL_GPL vmlinux 0x28754d4b ata_sff_data_xfer +EXPORT_SYMBOL_GPL vmlinux 0x2882d40e usb_role_switch_unregister +EXPORT_SYMBOL_GPL vmlinux 0x288c515e gpiod_to_chip +EXPORT_SYMBOL_GPL vmlinux 0x28916736 tpm_chip_bootstrap +EXPORT_SYMBOL_GPL vmlinux 0x28a75e20 blkcg_policy_unregister +EXPORT_SYMBOL_GPL vmlinux 0x28aa6a67 call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x28ab4fb9 pinctrl_gpio_free +EXPORT_SYMBOL_GPL vmlinux 0x28afbb08 cpu_latency_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x28ba7904 cpufreq_generic_attr +EXPORT_SYMBOL_GPL vmlinux 0x28bdf11b spi_mem_get_name +EXPORT_SYMBOL_GPL vmlinux 0x28da0765 dev_coredumpsg +EXPORT_SYMBOL_GPL vmlinux 0x28e64c64 xen_has_pv_and_legacy_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0x28ed99c8 devfreq_event_disable_edev +EXPORT_SYMBOL_GPL vmlinux 0x29077dc1 __tracepoint_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x291665d6 devl_params_register +EXPORT_SYMBOL_GPL vmlinux 0x291876f3 mpi_ec_get_affine +EXPORT_SYMBOL_GPL vmlinux 0x29312565 scsi_template_proc_dir +EXPORT_SYMBOL_GPL vmlinux 0x29315727 efivars_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2934cd58 register_btf_fmodret_id_set +EXPORT_SYMBOL_GPL vmlinux 0x2937ab5e kill_pid_usb_asyncio +EXPORT_SYMBOL_GPL vmlinux 0x2951a872 trace_clock_local +EXPORT_SYMBOL_GPL vmlinux 0x2951c26e devm_watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x295d5ec5 devm_pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0x29685781 pci_epf_bind +EXPORT_SYMBOL_GPL vmlinux 0x2991dea0 phy_modify_mmd_changed +EXPORT_SYMBOL_GPL vmlinux 0x299b2559 pci_stop_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x299b7d84 devm_hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0x29a2052f dm_get_md +EXPORT_SYMBOL_GPL vmlinux 0x29a47677 acpi_storage_d3 +EXPORT_SYMBOL_GPL vmlinux 0x29a81545 clk_hw_rate_is_protected +EXPORT_SYMBOL_GPL vmlinux 0x29bd4dd6 __spi_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x29d45648 __devm_regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0x29e75c0c apply_to_page_range +EXPORT_SYMBOL_GPL vmlinux 0x29eae5ea device_match_name +EXPORT_SYMBOL_GPL vmlinux 0x29eba37f current_is_async +EXPORT_SYMBOL_GPL vmlinux 0x29f10bfc fat_scan +EXPORT_SYMBOL_GPL vmlinux 0x29fb6e4a vp_legacy_get_queue_enable +EXPORT_SYMBOL_GPL vmlinux 0x29fdb96c __sock_recv_cmsgs +EXPORT_SYMBOL_GPL vmlinux 0x2a0055df vcap_tc_flower_handler_ipv4_usage +EXPORT_SYMBOL_GPL vmlinux 0x2a25da0e devm_namespace_disable +EXPORT_SYMBOL_GPL vmlinux 0x2a2e3d72 mnt_want_write +EXPORT_SYMBOL_GPL vmlinux 0x2a2f04fa ip_tunnel_netlink_parms +EXPORT_SYMBOL_GPL vmlinux 0x2a302ca6 pci_epc_start +EXPORT_SYMBOL_GPL vmlinux 0x2a3050db uart_get_rs485_mode +EXPORT_SYMBOL_GPL vmlinux 0x2a30865f extcon_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x2a3de806 relay_reset +EXPORT_SYMBOL_GPL vmlinux 0x2a50aed0 dw_pcie_host_init +EXPORT_SYMBOL_GPL vmlinux 0x2a5d0a7a pci_restore_msi_state +EXPORT_SYMBOL_GPL vmlinux 0x2a5d757c subsys_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x2a5ea9ef rhashtable_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2a62cb3a ring_buffer_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x2a70f366 fib_nh_common_init +EXPORT_SYMBOL_GPL vmlinux 0x2a859610 spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0x2a928856 __platform_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x2a976d1c dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x2a9b236b rtm_getroute_parse_ip_proto +EXPORT_SYMBOL_GPL vmlinux 0x2aaa36cd pm_generic_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x2aad3d1d pin_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x2aadad1a efi_capsule_update +EXPORT_SYMBOL_GPL vmlinux 0x2ac34c3b pci_find_next_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0x2acba8b1 i2c_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x2ae1d569 class_dev_iter_init +EXPORT_SYMBOL_GPL vmlinux 0x2af48826 make_device_exclusive_range +EXPORT_SYMBOL_GPL vmlinux 0x2b0fe000 gnttab_cancel_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x2b1c9463 crypto_register_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x2b24a198 bus_sort_breadthfirst +EXPORT_SYMBOL_GPL vmlinux 0x2b3acc3b __SCT__tp_func_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0x2b3f2b94 devm_pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2b4509dd devlink_health_reporter_state_update +EXPORT_SYMBOL_GPL vmlinux 0x2b53f902 ip_icmp_error +EXPORT_SYMBOL_GPL vmlinux 0x2b60a989 ehci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x2b60f7a6 spi_get_next_queued_message +EXPORT_SYMBOL_GPL vmlinux 0x2b6150fb power_supply_temp2resist_simple +EXPORT_SYMBOL_GPL vmlinux 0x2b67b6b7 mds_idle_clear +EXPORT_SYMBOL_GPL vmlinux 0x2b6d960d synth_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x2b7e1fea component_compare_of +EXPORT_SYMBOL_GPL vmlinux 0x2b9997fb atomic_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0x2b9ab90b clk_hw_is_prepared +EXPORT_SYMBOL_GPL vmlinux 0x2bb53278 pci_cfg_access_trylock +EXPORT_SYMBOL_GPL vmlinux 0x2bb77ee9 acpi_dev_clear_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x2bbd0838 rio_route_clr_table +EXPORT_SYMBOL_GPL vmlinux 0x2bbf49b8 tracepoint_probe_register +EXPORT_SYMBOL_GPL vmlinux 0x2bc6ec73 __device_reset +EXPORT_SYMBOL_GPL vmlinux 0x2bcff508 pm_runtime_autosuspend_expiration +EXPORT_SYMBOL_GPL vmlinux 0x2bd8a8bb blk_fill_rwbs +EXPORT_SYMBOL_GPL vmlinux 0x2bdf5ab0 pm_wakeup_pending +EXPORT_SYMBOL_GPL vmlinux 0x2be316cd __SCK__tp_func_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x2bfc1253 __xenmem_reservation_va_mapping_update +EXPORT_SYMBOL_GPL vmlinux 0x2bfd03cb soc_device_match +EXPORT_SYMBOL_GPL vmlinux 0x2c139a02 acpi_dma_configure_id +EXPORT_SYMBOL_GPL vmlinux 0x2c208607 power_supply_is_system_supplied +EXPORT_SYMBOL_GPL vmlinux 0x2c2f5a09 x86_family +EXPORT_SYMBOL_GPL vmlinux 0x2c3054f9 net_inc_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x2c32429b ata_sff_irq_on +EXPORT_SYMBOL_GPL vmlinux 0x2c50394a regmap_fields_read +EXPORT_SYMBOL_GPL vmlinux 0x2c571bf1 xhci_check_bandwidth +EXPORT_SYMBOL_GPL vmlinux 0x2c5977b8 skcipher_walk_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x2c5c2274 iommu_fwspec_free +EXPORT_SYMBOL_GPL vmlinux 0x2c60104a sdio_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x2c61bb09 uv_bios_get_pci_topology +EXPORT_SYMBOL_GPL vmlinux 0x2c635527 arch_invalidate_pmem +EXPORT_SYMBOL_GPL vmlinux 0x2c66ac85 devlink_info_serial_number_put +EXPORT_SYMBOL_GPL vmlinux 0x2c6752b0 dev_pm_opp_get_supplies +EXPORT_SYMBOL_GPL vmlinux 0x2c74969d blkcg_get_fc_appid +EXPORT_SYMBOL_GPL vmlinux 0x2c7db649 irq_dispose_mapping +EXPORT_SYMBOL_GPL vmlinux 0x2c834418 static_key_slow_inc +EXPORT_SYMBOL_GPL vmlinux 0x2c84a11d led_set_brightness_sync +EXPORT_SYMBOL_GPL vmlinux 0x2c8dd6b8 edac_mem_types +EXPORT_SYMBOL_GPL vmlinux 0x2c9d248e class_dev_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x2c9eba95 pci_disable_ats +EXPORT_SYMBOL_GPL vmlinux 0x2caadd57 pci_hp_remove_module_link +EXPORT_SYMBOL_GPL vmlinux 0x2cac7b89 ata_eh_freeze_port +EXPORT_SYMBOL_GPL vmlinux 0x2ccf0565 vcap_rule_find_keysets +EXPORT_SYMBOL_GPL vmlinux 0x2cf3990a wakeup_source_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2cfbb2b5 __SCT__tp_func_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x2d0684a9 hrtimer_init +EXPORT_SYMBOL_GPL vmlinux 0x2d1b02d2 usermodehelper_read_lock_wait +EXPORT_SYMBOL_GPL vmlinux 0x2d1d29a6 devlink_port_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x2d2dd36f kobj_ns_grab_current +EXPORT_SYMBOL_GPL vmlinux 0x2d393f48 intel_soc_pmic_exec_mipi_pmic_seq_element +EXPORT_SYMBOL_GPL vmlinux 0x2d41e6f5 __trace_puts +EXPORT_SYMBOL_GPL vmlinux 0x2d42cd0e bsg_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0x2d44be3b __SCT__tp_func_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x2d5f69b3 rcu_read_unlock_strict +EXPORT_SYMBOL_GPL vmlinux 0x2d609547 dax_direct_access +EXPORT_SYMBOL_GPL vmlinux 0x2d7f9967 phy_select_page +EXPORT_SYMBOL_GPL vmlinux 0x2d86d9e0 __tracepoint_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x2d881e53 nvme_alloc_io_tag_set +EXPORT_SYMBOL_GPL vmlinux 0x2d89b1ad __SCT__tp_func_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x2da76b0f nvmem_cell_read_u64 +EXPORT_SYMBOL_GPL vmlinux 0x2dae1860 gpiod_get_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x2db32c0e dev_pm_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0x2db949f6 rio_pw_enable +EXPORT_SYMBOL_GPL vmlinux 0x2dbcf545 clk_hw_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x2dc5b2c3 dispatch_hid_bpf_device_event +EXPORT_SYMBOL_GPL vmlinux 0x2dd09403 extcon_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2de01ca9 iov_iter_is_aligned +EXPORT_SYMBOL_GPL vmlinux 0x2de4b3be relay_switch_subbuf +EXPORT_SYMBOL_GPL vmlinux 0x2e028ae6 rcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0x2e08226d badrange_add +EXPORT_SYMBOL_GPL vmlinux 0x2e2360b1 ftrace_set_global_notrace +EXPORT_SYMBOL_GPL vmlinux 0x2e2c6618 pwmchip_remove +EXPORT_SYMBOL_GPL vmlinux 0x2e2df7f4 irq_remapping_cap +EXPORT_SYMBOL_GPL vmlinux 0x2e300f24 nvme_dev_attrs_group +EXPORT_SYMBOL_GPL vmlinux 0x2e65b188 unregister_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x2e6e277a acpi_subsys_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x2e7887d2 nf_ct_set_closing +EXPORT_SYMBOL_GPL vmlinux 0x2e79fb49 gnttab_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x2e7a17d4 vmap_pfn +EXPORT_SYMBOL_GPL vmlinux 0x2e7b62bd regulator_map_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x2e8343e3 disk_update_readahead +EXPORT_SYMBOL_GPL vmlinux 0x2e8b31ed mmc_cmdq_disable +EXPORT_SYMBOL_GPL vmlinux 0x2e902e28 raw_unhash_sk +EXPORT_SYMBOL_GPL vmlinux 0x2e9ec24d free_iova +EXPORT_SYMBOL_GPL vmlinux 0x2ea0714d nvme_init_ctrl_finish +EXPORT_SYMBOL_GPL vmlinux 0x2ea4aa9b pktgen_xfrm_outer_mode_output +EXPORT_SYMBOL_GPL vmlinux 0x2eb0e88a sdio_claim_host +EXPORT_SYMBOL_GPL vmlinux 0x2eb31c04 devm_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x2eb98f6a locks_release_private +EXPORT_SYMBOL_GPL vmlinux 0x2ebb19fd execute_in_process_context +EXPORT_SYMBOL_GPL vmlinux 0x2ebe3135 cpu_is_hotpluggable +EXPORT_SYMBOL_GPL vmlinux 0x2ec8a27d device_show_int +EXPORT_SYMBOL_GPL vmlinux 0x2eca6a19 phy_basic_t1s_p2mp_features_array +EXPORT_SYMBOL_GPL vmlinux 0x2ecd7369 pm_generic_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x2eda4807 is_uv_hubbed +EXPORT_SYMBOL_GPL vmlinux 0x2ee7732b devl_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2ee7c52b btree_visitor +EXPORT_SYMBOL_GPL vmlinux 0x2eedb267 pm_clk_destroy +EXPORT_SYMBOL_GPL vmlinux 0x2f0d9053 usb_otg_state_string +EXPORT_SYMBOL_GPL vmlinux 0x2f192347 gpiochip_remove_pin_ranges +EXPORT_SYMBOL_GPL vmlinux 0x2f1ce840 sdio_claim_irq +EXPORT_SYMBOL_GPL vmlinux 0x2f2c55dc regulator_get_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x2f2c95c4 flush_work +EXPORT_SYMBOL_GPL vmlinux 0x2f44bb00 l3mdev_master_ifindex_rcu +EXPORT_SYMBOL_GPL vmlinux 0x2f458f19 devl_param_driverinit_value_set +EXPORT_SYMBOL_GPL vmlinux 0x2f4880df static_key_slow_dec +EXPORT_SYMBOL_GPL vmlinux 0x2f5ebcc4 regulator_get_mode +EXPORT_SYMBOL_GPL vmlinux 0x2f602903 of_css +EXPORT_SYMBOL_GPL vmlinux 0x2f64415f unregister_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x2f71d5f3 serdev_device_set_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x2f80f357 crypto_register_acomps +EXPORT_SYMBOL_GPL vmlinux 0x2f82e133 devlink_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0x2f91b575 vp_modern_get_queue_reset +EXPORT_SYMBOL_GPL vmlinux 0x2f93b0f8 __fl6_sock_lookup +EXPORT_SYMBOL_GPL vmlinux 0x2f9d9c49 device_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x2f9ddd99 thermal_zone_device_priv +EXPORT_SYMBOL_GPL vmlinux 0x2fc1e0fe kmem_valid_obj +EXPORT_SYMBOL_GPL vmlinux 0x2fce9e59 nvdimm_flush +EXPORT_SYMBOL_GPL vmlinux 0x2fdf09d9 blk_mq_sched_try_merge +EXPORT_SYMBOL_GPL vmlinux 0x2fe6f32b metadata_dst_free +EXPORT_SYMBOL_GPL vmlinux 0x2ffedb6b hv_free_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x300f66fd usb_hub_clear_tt_buffer +EXPORT_SYMBOL_GPL vmlinux 0x30110a29 phy_eee_cap1_features +EXPORT_SYMBOL_GPL vmlinux 0x3018871e ata_scsi_dma_need_drain +EXPORT_SYMBOL_GPL vmlinux 0x301b713a pci_cfg_access_lock +EXPORT_SYMBOL_GPL vmlinux 0x30319a2d init_uts_ns +EXPORT_SYMBOL_GPL vmlinux 0x3031a44f dma_resv_iter_first +EXPORT_SYMBOL_GPL vmlinux 0x305363ab acpi_dev_remove_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x3058e566 nf_nat_hook +EXPORT_SYMBOL_GPL vmlinux 0x305f7228 platform_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3061cfce ring_buffer_entries_cpu +EXPORT_SYMBOL_GPL vmlinux 0x30692911 xenbus_dev_error +EXPORT_SYMBOL_GPL vmlinux 0x3069c072 __SCK__tp_func_sched_util_est_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x308b3631 failover_unregister +EXPORT_SYMBOL_GPL vmlinux 0x30a4f544 serdev_device_write +EXPORT_SYMBOL_GPL vmlinux 0x30a60c5f pci_vfs_assigned +EXPORT_SYMBOL_GPL vmlinux 0x30b08804 __SCK__tp_func_tcp_bad_csum +EXPORT_SYMBOL_GPL vmlinux 0x30b3131d of_icc_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x30c22958 generic_fh_to_parent +EXPORT_SYMBOL_GPL vmlinux 0x30cf804f slow_virt_to_phys +EXPORT_SYMBOL_GPL vmlinux 0x30da0dc7 __pci_hp_initialize +EXPORT_SYMBOL_GPL vmlinux 0x30e1ec25 apei_map_generic_address +EXPORT_SYMBOL_GPL vmlinux 0x30e7dc23 acpi_get_first_physical_node +EXPORT_SYMBOL_GPL vmlinux 0x31019477 __ftrace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x3106cc89 ata_sff_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x31128b8e hv_remove_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0x311c6da4 put_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0x311cd46a cpuidle_get_cpu_driver +EXPORT_SYMBOL_GPL vmlinux 0x31266931 con_debug_leave +EXPORT_SYMBOL_GPL vmlinux 0x3139f862 regulator_unregister +EXPORT_SYMBOL_GPL vmlinux 0x314f3bc4 pinctrl_lookup_state +EXPORT_SYMBOL_GPL vmlinux 0x3151bacc devl_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3153377f dst_blackhole_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x315adb27 vp_modern_probe +EXPORT_SYMBOL_GPL vmlinux 0x31650ab7 unregister_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x3165daa3 arbitrary_virt_to_machine +EXPORT_SYMBOL_GPL vmlinux 0x31706316 __SCT__tp_func_error_report_end +EXPORT_SYMBOL_GPL vmlinux 0x31819ea1 sk_msg_free_nocharge +EXPORT_SYMBOL_GPL vmlinux 0x3183412c pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x31905756 hwmon_device_register +EXPORT_SYMBOL_GPL vmlinux 0x3192d768 cpufreq_remove_update_util_hook +EXPORT_SYMBOL_GPL vmlinux 0x31a76d61 mas_destroy +EXPORT_SYMBOL_GPL vmlinux 0x31a95e8b ring_buffer_record_enable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x31b73b89 driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x31bb7fea ata_port_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x31c7970f pciserial_suspend_ports +EXPORT_SYMBOL_GPL vmlinux 0x31d34278 xas_load +EXPORT_SYMBOL_GPL vmlinux 0x31dca4d8 gnttab_claim_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x31e9074b key_set_timeout +EXPORT_SYMBOL_GPL vmlinux 0x31fc3470 spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0x321bce5f xhci_drop_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x32295715 dev_pm_opp_clear_config +EXPORT_SYMBOL_GPL vmlinux 0x3231c59c acpi_device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0x3243deb9 led_init_default_state_get +EXPORT_SYMBOL_GPL vmlinux 0x32461e17 class_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x324d5fe6 pci_destroy_slot +EXPORT_SYMBOL_GPL vmlinux 0x324eca61 __tracepoint_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x325f9d61 vcap_rule_add_key_u72 +EXPORT_SYMBOL_GPL vmlinux 0x326cefe5 hwpoison_filter_dev_minor +EXPORT_SYMBOL_GPL vmlinux 0x326eaee9 debugfs_create_file_unsafe +EXPORT_SYMBOL_GPL vmlinux 0x327a2687 bind_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0x327a2cab rio_attach_device +EXPORT_SYMBOL_GPL vmlinux 0x327e92d2 pci_dev_run_wake +EXPORT_SYMBOL_GPL vmlinux 0x328e3354 __memcpy_flushcache +EXPORT_SYMBOL_GPL vmlinux 0x329d4b02 virtqueue_add_outbuf +EXPORT_SYMBOL_GPL vmlinux 0x32a04a85 switchdev_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0x32ab06cc irq_percpu_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x32bc0fcf preempt_notifier_dec +EXPORT_SYMBOL_GPL vmlinux 0x32bdd4e0 __pm_runtime_disable +EXPORT_SYMBOL_GPL vmlinux 0x32c3cb4e class_compat_register +EXPORT_SYMBOL_GPL vmlinux 0x32c83346 __devm_clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0x32cbd40d crypto_mod_put +EXPORT_SYMBOL_GPL vmlinux 0x32cbe1db call_switchdev_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x32ce5275 ata_pci_bmdma_init_one +EXPORT_SYMBOL_GPL vmlinux 0x32dbf877 irq_domain_remove_sim +EXPORT_SYMBOL_GPL vmlinux 0x32e3b076 mxcsr_feature_mask +EXPORT_SYMBOL_GPL vmlinux 0x32e4d1e0 sgx_virt_ecreate +EXPORT_SYMBOL_GPL vmlinux 0x32f0e37c pci_p2pmem_publish +EXPORT_SYMBOL_GPL vmlinux 0x32f3f159 register_kretprobe +EXPORT_SYMBOL_GPL vmlinux 0x330010b6 cpuset_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x330b0e01 sbitmap_queue_min_shallow_depth +EXPORT_SYMBOL_GPL vmlinux 0x330f6116 set_dax_synchronous +EXPORT_SYMBOL_GPL vmlinux 0x331b8b81 nvme_complete_rq +EXPORT_SYMBOL_GPL vmlinux 0x332c5832 usb_disable_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x33338211 rcuref_get_slowpath +EXPORT_SYMBOL_GPL vmlinux 0x333b934a __tracepoint_br_mdb_full +EXPORT_SYMBOL_GPL vmlinux 0x33406b15 usb_hcd_giveback_urb +EXPORT_SYMBOL_GPL vmlinux 0x33518fef tps6586x_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x3352823d cppc_get_auto_sel_caps +EXPORT_SYMBOL_GPL vmlinux 0x335a613c mas_next_range +EXPORT_SYMBOL_GPL vmlinux 0x335c570f enable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x3362b03c xen_p2m_size +EXPORT_SYMBOL_GPL vmlinux 0x336636bb clk_hw_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x336aafda tty_perform_flush +EXPORT_SYMBOL_GPL vmlinux 0x338f2f3d pwm_capture +EXPORT_SYMBOL_GPL vmlinux 0x339d2187 fscrypt_drop_inode +EXPORT_SYMBOL_GPL vmlinux 0x33a25156 led_blink_set +EXPORT_SYMBOL_GPL vmlinux 0x33b406b1 xdp_features_set_redirect_target +EXPORT_SYMBOL_GPL vmlinux 0x33bf4443 acpi_quirk_skip_acpi_ac_and_battery +EXPORT_SYMBOL_GPL vmlinux 0x33c97e5a cgrp_dfl_root +EXPORT_SYMBOL_GPL vmlinux 0x33d11730 css_next_descendant_pre +EXPORT_SYMBOL_GPL vmlinux 0x33d153ff pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x33d3e39e param_set_bool_enable_only +EXPORT_SYMBOL_GPL vmlinux 0x33df4cc8 report_iommu_fault +EXPORT_SYMBOL_GPL vmlinux 0x33f27d2e gpiochip_add_pin_range +EXPORT_SYMBOL_GPL vmlinux 0x33fa2a08 nvdimm_bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x340c2838 tps65912_device_exit +EXPORT_SYMBOL_GPL vmlinux 0x340cbac8 bio_poll +EXPORT_SYMBOL_GPL vmlinux 0x34108c18 crypto_unregister_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x341286d2 dm_submit_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x3427c761 iomap_readahead +EXPORT_SYMBOL_GPL vmlinux 0x342abf33 register_acpi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x34331f04 acpi_os_unmap_memory +EXPORT_SYMBOL_GPL vmlinux 0x3437d61e dummy_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0x343ee7a3 pci_hp_destroy +EXPORT_SYMBOL_GPL vmlinux 0x343fead7 rtc_update_irq_enable +EXPORT_SYMBOL_GPL vmlinux 0x34407691 crypto_has_ahash +EXPORT_SYMBOL_GPL vmlinux 0x344361a1 kdb_register +EXPORT_SYMBOL_GPL vmlinux 0x34464fc4 misc_cg_uncharge +EXPORT_SYMBOL_GPL vmlinux 0x344a2c84 iomap_dio_complete +EXPORT_SYMBOL_GPL vmlinux 0x344d0d29 devm_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x344d395d hsu_dma_probe +EXPORT_SYMBOL_GPL vmlinux 0x3450ad94 mpi_set_ui +EXPORT_SYMBOL_GPL vmlinux 0x34556a49 i2c_new_smbus_alert_device +EXPORT_SYMBOL_GPL vmlinux 0x3466ce63 x86_msi_msg_get_destid +EXPORT_SYMBOL_GPL vmlinux 0x3469e00d kill_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x3476ac5b list_lru_walk_node +EXPORT_SYMBOL_GPL vmlinux 0x347fc49c folio_wait_stable +EXPORT_SYMBOL_GPL vmlinux 0x3489812f bdev_alignment_offset +EXPORT_SYMBOL_GPL vmlinux 0x34901d57 dev_pm_domain_attach +EXPORT_SYMBOL_GPL vmlinux 0x3491f3c7 inet_pernet_hashinfo_free +EXPORT_SYMBOL_GPL vmlinux 0x349302c2 em_dev_unregister_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0x34a0eaea vfs_submount +EXPORT_SYMBOL_GPL vmlinux 0x34b29292 dw_pcie_ep_init_notify +EXPORT_SYMBOL_GPL vmlinux 0x34b3baa1 regcache_cache_only +EXPORT_SYMBOL_GPL vmlinux 0x34d82de0 cpufreq_policy_transition_delay_us +EXPORT_SYMBOL_GPL vmlinux 0x34db62bd fpu_enable_guest_xfd_features +EXPORT_SYMBOL_GPL vmlinux 0x34dccfb2 context_tracking +EXPORT_SYMBOL_GPL vmlinux 0x34df3dfc unregister_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0x34eab46d bind_evtchn_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x34f94502 ehci_handshake +EXPORT_SYMBOL_GPL vmlinux 0x34fa98f8 crypto_drop_spawn +EXPORT_SYMBOL_GPL vmlinux 0x350f6ce5 tasklet_unlock_wait +EXPORT_SYMBOL_GPL vmlinux 0x3510f0f8 fwnode_get_named_child_node +EXPORT_SYMBOL_GPL vmlinux 0x3516b0e3 __SCK__tp_func_ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x3520840f shmem_read_mapping_page_gfp +EXPORT_SYMBOL_GPL vmlinux 0x35256031 dev_pm_genpd_set_performance_state +EXPORT_SYMBOL_GPL vmlinux 0x352773aa unregister_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0x352a8271 iopf_queue_flush_dev +EXPORT_SYMBOL_GPL vmlinux 0x352b3813 maxim_charger_calc_reg_current +EXPORT_SYMBOL_GPL vmlinux 0x352ec68b bpf_offload_dev_destroy +EXPORT_SYMBOL_GPL vmlinux 0x352f8604 xhci_ext_cap_init +EXPORT_SYMBOL_GPL vmlinux 0x3532a71c fw_devlink_purge_absent_suppliers +EXPORT_SYMBOL_GPL vmlinux 0x3533336a ata_pci_sff_init_one +EXPORT_SYMBOL_GPL vmlinux 0x35387bd2 devres_add +EXPORT_SYMBOL_GPL vmlinux 0x3538a939 pci_remove_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x3542e347 phy_10gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x3547c71b vp_modern_set_status +EXPORT_SYMBOL_GPL vmlinux 0x355bc89a klist_next +EXPORT_SYMBOL_GPL vmlinux 0x3562e9a3 phy_pm_runtime_allow +EXPORT_SYMBOL_GPL vmlinux 0x3565a929 utf8_data_table +EXPORT_SYMBOL_GPL vmlinux 0x35666fc5 led_blink_set_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x356d09a1 unregister_kprobes +EXPORT_SYMBOL_GPL vmlinux 0x35823122 crypto_alloc_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x3586aca9 dm_disk +EXPORT_SYMBOL_GPL vmlinux 0x358ff60f twl_get_hfclk_rate +EXPORT_SYMBOL_GPL vmlinux 0x35a25054 led_trigger_register +EXPORT_SYMBOL_GPL vmlinux 0x35aa04e1 tty_kopen_shared +EXPORT_SYMBOL_GPL vmlinux 0x35bdc8a7 fwnode_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x35ca7fd2 tpm_chip_start +EXPORT_SYMBOL_GPL vmlinux 0x35cfde87 fscrypt_prepare_symlink +EXPORT_SYMBOL_GPL vmlinux 0x35d3dc46 crypto_alg_sem +EXPORT_SYMBOL_GPL vmlinux 0x35d4119c intel_pinctrl_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x35d523ab gov_attr_set_put +EXPORT_SYMBOL_GPL vmlinux 0x35d84d0c add_swap_extent +EXPORT_SYMBOL_GPL vmlinux 0x35d94dcc tpm_is_tpm2 +EXPORT_SYMBOL_GPL vmlinux 0x35f55c19 fscrypt_set_context +EXPORT_SYMBOL_GPL vmlinux 0x35f8a27b __SCK__tp_func_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x35f94061 pm_runtime_barrier +EXPORT_SYMBOL_GPL vmlinux 0x35fbc976 usb_control_msg_send +EXPORT_SYMBOL_GPL vmlinux 0x35fd6327 led_classdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0x35ff31d2 inet6_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x36173c1d phys_to_target_node +EXPORT_SYMBOL_GPL vmlinux 0x361cb586 nvme_auth_free +EXPORT_SYMBOL_GPL vmlinux 0x36242943 switchdev_deferred_process +EXPORT_SYMBOL_GPL vmlinux 0x36381bc0 fuse_dev_install +EXPORT_SYMBOL_GPL vmlinux 0x3640cf75 __skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x3649c66c devl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x365079b2 __tracepoint_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x36530f78 pci_dev_trylock +EXPORT_SYMBOL_GPL vmlinux 0x365a5bf8 raw_seq_next +EXPORT_SYMBOL_GPL vmlinux 0x365bff8d dax_remap_file_range_prep +EXPORT_SYMBOL_GPL vmlinux 0x366f3bdf pwm_lpss_tng_info +EXPORT_SYMBOL_GPL vmlinux 0x367becc9 tracepoint_probe_register_prio_may_exist +EXPORT_SYMBOL_GPL vmlinux 0x36813d68 ping_err +EXPORT_SYMBOL_GPL vmlinux 0x36898d6f gpiod_remove_hogs +EXPORT_SYMBOL_GPL vmlinux 0x36986be1 hv_setup_dma_ops +EXPORT_SYMBOL_GPL vmlinux 0x369fcd70 tracing_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x36a28cdf virtqueue_get_used_addr +EXPORT_SYMBOL_GPL vmlinux 0x36ab1a1e irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x36ac17ab alloc_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0x36b5497e intel_iommu_enabled +EXPORT_SYMBOL_GPL vmlinux 0x36cc80b7 od_register_powersave_bias_handler +EXPORT_SYMBOL_GPL vmlinux 0x36f8a232 __blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0x37024305 __xdp_build_skb_from_frame +EXPORT_SYMBOL_GPL vmlinux 0x37169f79 cpu_latency_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x371ce8a8 xfrm_unregister_translator +EXPORT_SYMBOL_GPL vmlinux 0x37452ed3 kernfs_path_from_node +EXPORT_SYMBOL_GPL vmlinux 0x37490b49 usb_pipe_type_check +EXPORT_SYMBOL_GPL vmlinux 0x3750d770 erst_read +EXPORT_SYMBOL_GPL vmlinux 0x37620dcf usb_control_msg_recv +EXPORT_SYMBOL_GPL vmlinux 0x376e5e5d gpiod_get_raw_array_value +EXPORT_SYMBOL_GPL vmlinux 0x378f9a40 static_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x37914025 xenbus_write +EXPORT_SYMBOL_GPL vmlinux 0x37a1b25d ata_bmdma_post_internal_cmd +EXPORT_SYMBOL_GPL vmlinux 0x37a9c2bd devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0x37bbd001 rio_request_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0x37bf7be3 percpu_ref_exit +EXPORT_SYMBOL_GPL vmlinux 0x37c70ec5 inet6_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x37caa45b badblocks_check +EXPORT_SYMBOL_GPL vmlinux 0x37cb4b6a __traceiter_ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x37e0b4d9 rio_add_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0x37e2b672 genphy_c45_plca_get_status +EXPORT_SYMBOL_GPL vmlinux 0x37ebfcab relay_buf_full +EXPORT_SYMBOL_GPL vmlinux 0x380125ef fscrypt_fname_siphash +EXPORT_SYMBOL_GPL vmlinux 0x3801776b __ioread32_copy +EXPORT_SYMBOL_GPL vmlinux 0x380dde36 power_supply_batinfo_ocv2cap +EXPORT_SYMBOL_GPL vmlinux 0x3813651c bus_get_kset +EXPORT_SYMBOL_GPL vmlinux 0x38190c65 __tracepoint_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0x38200299 crypto_alloc_rng +EXPORT_SYMBOL_GPL vmlinux 0x38268b62 icc_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x383278ce fs_dax_get_by_bdev +EXPORT_SYMBOL_GPL vmlinux 0x38347302 hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0x38374815 clear_selection +EXPORT_SYMBOL_GPL vmlinux 0x383a580b md_bitmap_copy_from_slot +EXPORT_SYMBOL_GPL vmlinux 0x384877a5 register_fprobe_syms +EXPORT_SYMBOL_GPL vmlinux 0x3854fba4 acpi_dma_request_slave_chan_by_index +EXPORT_SYMBOL_GPL vmlinux 0x3866e217 nvmem_device_write +EXPORT_SYMBOL_GPL vmlinux 0x386b821a apei_get_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x38708e25 inet_peer_base_init +EXPORT_SYMBOL_GPL vmlinux 0x38722f80 kernel_fpu_end +EXPORT_SYMBOL_GPL vmlinux 0x387d04c4 debugfs_create_blob +EXPORT_SYMBOL_GPL vmlinux 0x388264ea amd_clear_divider +EXPORT_SYMBOL_GPL vmlinux 0x38874bf1 io_uring_cmd_import_fixed +EXPORT_SYMBOL_GPL vmlinux 0x389af1fc device_add_groups +EXPORT_SYMBOL_GPL vmlinux 0x389b64a2 static_key_count +EXPORT_SYMBOL_GPL vmlinux 0x38aa1397 gpiod_add_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0x38b6a890 __SCT__tp_func_sched_util_est_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x38c3ff30 freq_qos_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x38d4f7f9 __SCK__tp_func_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0x38d9ecc4 device_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x38e1fde7 mpi_set +EXPORT_SYMBOL_GPL vmlinux 0x38e5bc5a clk_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x38ea9765 intel_pt_validate_hw_cap +EXPORT_SYMBOL_GPL vmlinux 0x38ed47e3 pci_epc_get_features +EXPORT_SYMBOL_GPL vmlinux 0x38f704de dm_get_reserved_bio_based_ios +EXPORT_SYMBOL_GPL vmlinux 0x390158ee __SCK__tp_func_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x3903b11e fscrypt_fname_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x3909b802 kstrdup_quotable_file +EXPORT_SYMBOL_GPL vmlinux 0x391e0519 blk_rq_poll +EXPORT_SYMBOL_GPL vmlinux 0x39433cb8 usb_driver_claim_interface +EXPORT_SYMBOL_GPL vmlinux 0x395a87cc ncsi_unregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x395b8b90 sbitmap_prepare_to_wait +EXPORT_SYMBOL_GPL vmlinux 0x396b653c rtc_set_time +EXPORT_SYMBOL_GPL vmlinux 0x397e7fb7 dw_pcie_read_dbi +EXPORT_SYMBOL_GPL vmlinux 0x3991e197 xenbus_probe_devices +EXPORT_SYMBOL_GPL vmlinux 0x3996e295 tty_port_register_device_attr_serdev +EXPORT_SYMBOL_GPL vmlinux 0x399d9ac8 nvme_auth_hmac_hash_len +EXPORT_SYMBOL_GPL vmlinux 0x39a1fd56 regulator_set_voltage_time +EXPORT_SYMBOL_GPL vmlinux 0x39aa4888 usb_role_string +EXPORT_SYMBOL_GPL vmlinux 0x39bb0c8d spi_controller_resume +EXPORT_SYMBOL_GPL vmlinux 0x39bf59a9 init_node_memory_type +EXPORT_SYMBOL_GPL vmlinux 0x39c9d88c xas_find +EXPORT_SYMBOL_GPL vmlinux 0x39db071f virtqueue_is_broken +EXPORT_SYMBOL_GPL vmlinux 0x39dddb12 dev_pm_opp_add +EXPORT_SYMBOL_GPL vmlinux 0x39ded098 rdma_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x39ded14f __SCT__tp_func_unmap +EXPORT_SYMBOL_GPL vmlinux 0x39e3d714 vcap_add_rule +EXPORT_SYMBOL_GPL vmlinux 0x39ea7d62 nvdimm_badblocks_populate +EXPORT_SYMBOL_GPL vmlinux 0x39f63440 ata_bmdma32_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x39fa477b ehci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3a15013b ata_pack_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x3a24d84c dev_pm_opp_free_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x3a24fb2f percpu_ref_resurrect +EXPORT_SYMBOL_GPL vmlinux 0x3a258764 pinctrl_utils_free_map +EXPORT_SYMBOL_GPL vmlinux 0x3a43f3f1 pci_user_write_config_dword +EXPORT_SYMBOL_GPL vmlinux 0x3a477d8d nvmem_cell_read_variable_le_u64 +EXPORT_SYMBOL_GPL vmlinux 0x3a493ce5 tcp_leave_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x3a4f6a32 ata_sff_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x3a536bd7 ring_buffer_read_finish +EXPORT_SYMBOL_GPL vmlinux 0x3a55981a static_key_enable_cpuslocked +EXPORT_SYMBOL_GPL vmlinux 0x3a569c40 edac_pci_handle_pe +EXPORT_SYMBOL_GPL vmlinux 0x3a5ebcef tty_prepare_flip_string +EXPORT_SYMBOL_GPL vmlinux 0x3a7bfc27 iommu_map_sg +EXPORT_SYMBOL_GPL vmlinux 0x3a7d80f9 xen_max_p2m_pfn +EXPORT_SYMBOL_GPL vmlinux 0x3a7e3e0c __rio_local_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x3a826b75 ohci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0x3a897880 gpiochip_irqchip_add_domain +EXPORT_SYMBOL_GPL vmlinux 0x3a8bbb8e trace_clock_jiffies +EXPORT_SYMBOL_GPL vmlinux 0x3a9be019 asymmetric_key_id_partial +EXPORT_SYMBOL_GPL vmlinux 0x3a9c473f devm_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x3a9e8610 acpi_remove_cmos_rtc_space_handler +EXPORT_SYMBOL_GPL vmlinux 0x3aacc054 platform_device_del +EXPORT_SYMBOL_GPL vmlinux 0x3aafb0d3 gpiod_set_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3ab63ef1 __tracepoint_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x3abdc17a cper_dimm_err_location +EXPORT_SYMBOL_GPL vmlinux 0x3ac11c9a pm_generic_poweroff_late +EXPORT_SYMBOL_GPL vmlinux 0x3ac3feba rhltable_init +EXPORT_SYMBOL_GPL vmlinux 0x3ac6a026 gpiochip_get_data +EXPORT_SYMBOL_GPL vmlinux 0x3acdf325 twl4030_audio_enable_resource +EXPORT_SYMBOL_GPL vmlinux 0x3ad8f69e scsi_ioctl_block_when_processing_errors +EXPORT_SYMBOL_GPL vmlinux 0x3ae65f46 netdev_cmd_to_name +EXPORT_SYMBOL_GPL vmlinux 0x3af578f5 hyperv_report_panic +EXPORT_SYMBOL_GPL vmlinux 0x3af7c9db clk_hw_get_num_parents +EXPORT_SYMBOL_GPL vmlinux 0x3afc4a8f sbitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x3b03208d power_supply_battery_info_has_prop +EXPORT_SYMBOL_GPL vmlinux 0x3b0d1ed7 ata_scsi_slave_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3b1e775d nvme_start_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x3b221ee6 fib6_check_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x3b2a437a find_vpid +EXPORT_SYMBOL_GPL vmlinux 0x3b4c240a display_timings_release +EXPORT_SYMBOL_GPL vmlinux 0x3b6cf99d debugfs_create_u64 +EXPORT_SYMBOL_GPL vmlinux 0x3b7707c4 nf_queue_entry_get_refs +EXPORT_SYMBOL_GPL vmlinux 0x3b7a7163 __static_call_return0 +EXPORT_SYMBOL_GPL vmlinux 0x3b7e58ea pm_generic_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x3b91db5b intel_pt_handle_vmx +EXPORT_SYMBOL_GPL vmlinux 0x3b95f543 klp_shadow_free +EXPORT_SYMBOL_GPL vmlinux 0x3b9b935b xhci_stop +EXPORT_SYMBOL_GPL vmlinux 0x3ba01b47 get_compat_sigset +EXPORT_SYMBOL_GPL vmlinux 0x3ba0fa34 ata_sas_port_start +EXPORT_SYMBOL_GPL vmlinux 0x3bb26b08 wm831x_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x3bb75102 tty_ldisc_deref +EXPORT_SYMBOL_GPL vmlinux 0x3bd15091 gnttab_page_cache_put +EXPORT_SYMBOL_GPL vmlinux 0x3bd24a1d nvme_start_freeze +EXPORT_SYMBOL_GPL vmlinux 0x3bdb5d28 alg_test +EXPORT_SYMBOL_GPL vmlinux 0x3be1f56b input_ff_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3be200ce phy_10gbit_fec_features +EXPORT_SYMBOL_GPL vmlinux 0x3be8f352 usb_alloc_urb +EXPORT_SYMBOL_GPL vmlinux 0x3be910eb key_type_user +EXPORT_SYMBOL_GPL vmlinux 0x3bf0a178 gpiod_direction_output +EXPORT_SYMBOL_GPL vmlinux 0x3bf1576c kthread_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x3bf17755 mpi_read_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3bf2393a __SCT__tp_func_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x3c0e8050 hyperv_pcpu_input_arg +EXPORT_SYMBOL_GPL vmlinux 0x3c1c3725 rcu_fwd_progress_check +EXPORT_SYMBOL_GPL vmlinux 0x3c1d4046 thp_get_unmapped_area +EXPORT_SYMBOL_GPL vmlinux 0x3c241c2c public_key_free +EXPORT_SYMBOL_GPL vmlinux 0x3c3c75ab regulator_irq_map_event_simple +EXPORT_SYMBOL_GPL vmlinux 0x3c3eed9a screen_pos +EXPORT_SYMBOL_GPL vmlinux 0x3c5d543a hrtimer_start_range_ns +EXPORT_SYMBOL_GPL vmlinux 0x3c6785b7 block_pr_type_to_scsi +EXPORT_SYMBOL_GPL vmlinux 0x3c681dc4 ring_buffer_record_disable +EXPORT_SYMBOL_GPL vmlinux 0x3c7684cd l3mdev_update_flow +EXPORT_SYMBOL_GPL vmlinux 0x3c8165de usb_cache_string +EXPORT_SYMBOL_GPL vmlinux 0x3c819c45 arch_apei_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x3c893558 blk_mq_quiesce_tagset +EXPORT_SYMBOL_GPL vmlinux 0x3c8cf9a5 devm_hwmon_device_register_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x3c931e2e pci_epc_remove_epf +EXPORT_SYMBOL_GPL vmlinux 0x3c96be97 ata_sas_sync_probe +EXPORT_SYMBOL_GPL vmlinux 0x3c9bfbd1 dma_release_channel +EXPORT_SYMBOL_GPL vmlinux 0x3cb095aa bio_split_rw +EXPORT_SYMBOL_GPL vmlinux 0x3cb505cf dw_pcie_write_dbi +EXPORT_SYMBOL_GPL vmlinux 0x3cc07be9 pv_info +EXPORT_SYMBOL_GPL vmlinux 0x3cc4b494 key_type_trusted +EXPORT_SYMBOL_GPL vmlinux 0x3ccc0c06 dw_pcie_setup_rc +EXPORT_SYMBOL_GPL vmlinux 0x3cd06035 add_input_randomness +EXPORT_SYMBOL_GPL vmlinux 0x3cd1b510 trace_vbprintk +EXPORT_SYMBOL_GPL vmlinux 0x3ce708d3 of_hte_req_count +EXPORT_SYMBOL_GPL vmlinux 0x3cec866b __kthread_init_worker +EXPORT_SYMBOL_GPL vmlinux 0x3cf634bb gpiod_set_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x3cfeedcd __tracepoint_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x3d1972a0 devlink_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x3d2c2ef4 usb_put_hcd +EXPORT_SYMBOL_GPL vmlinux 0x3d2e4f68 l3mdev_link_scope_lookup +EXPORT_SYMBOL_GPL vmlinux 0x3d388324 dpm_resume_end +EXPORT_SYMBOL_GPL vmlinux 0x3d40e0aa intel_pinctrl_get_soc_data +EXPORT_SYMBOL_GPL vmlinux 0x3d510a7b rcu_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0x3d5e3e31 synth_event_gen_cmd_array_start +EXPORT_SYMBOL_GPL vmlinux 0x3d6b1e46 __traceiter_pelt_thermal_tp +EXPORT_SYMBOL_GPL vmlinux 0x3d6c3ffd fscrypt_fname_encrypted_size +EXPORT_SYMBOL_GPL vmlinux 0x3d71c16f handle_mm_fault +EXPORT_SYMBOL_GPL vmlinux 0x3d7691f5 power_supply_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x3d7c6860 gpiod_set_value +EXPORT_SYMBOL_GPL vmlinux 0x3d85f906 ping_hash +EXPORT_SYMBOL_GPL vmlinux 0x3d8baf3b zs_huge_class_size +EXPORT_SYMBOL_GPL vmlinux 0x3da5c41e fb_deferred_io_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x3daa2540 nf_hooks_lwtunnel_enabled +EXPORT_SYMBOL_GPL vmlinux 0x3db6327f md_find_rdev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x3db9aa2e vcap_debugfs +EXPORT_SYMBOL_GPL vmlinux 0x3dbadd98 blk_mq_unquiesce_tagset +EXPORT_SYMBOL_GPL vmlinux 0x3dbb8f7d debugfs_create_ulong +EXPORT_SYMBOL_GPL vmlinux 0x3dc0a3ee crypto_unregister_instance +EXPORT_SYMBOL_GPL vmlinux 0x3dc71c99 dev_pm_opp_init_cpufreq_table +EXPORT_SYMBOL_GPL vmlinux 0x3dd05998 blk_mark_disk_dead +EXPORT_SYMBOL_GPL vmlinux 0x3ddb4388 tty_kclose +EXPORT_SYMBOL_GPL vmlinux 0x3de9cae1 crypto_remove_final +EXPORT_SYMBOL_GPL vmlinux 0x3df395a1 gpiod_get +EXPORT_SYMBOL_GPL vmlinux 0x3df82d00 mce_log +EXPORT_SYMBOL_GPL vmlinux 0x3e0a087f inet_hashinfo2_init_mod +EXPORT_SYMBOL_GPL vmlinux 0x3e107d08 iommu_domain_alloc +EXPORT_SYMBOL_GPL vmlinux 0x3e1939a1 netdev_sw_irq_coalesce_default_on +EXPORT_SYMBOL_GPL vmlinux 0x3e1a10c5 smpboot_unregister_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0x3e411ace sfp_select_interface +EXPORT_SYMBOL_GPL vmlinux 0x3e53d690 dev_pm_genpd_get_next_hrtimer +EXPORT_SYMBOL_GPL vmlinux 0x3e5b9ea7 xdp_master_redirect +EXPORT_SYMBOL_GPL vmlinux 0x3e613288 i2c_parse_fw_timings +EXPORT_SYMBOL_GPL vmlinux 0x3e6544d0 pci_epf_destroy +EXPORT_SYMBOL_GPL vmlinux 0x3e67577c vcap_alloc_rule +EXPORT_SYMBOL_GPL vmlinux 0x3e7080cb mpi_read_from_buffer +EXPORT_SYMBOL_GPL vmlinux 0x3e870769 __of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x3e903560 ip_tunnel_netlink_encap_parms +EXPORT_SYMBOL_GPL vmlinux 0x3e9168e6 sk_msg_free +EXPORT_SYMBOL_GPL vmlinux 0x3e931a19 io_uring_cmd_do_in_task_lazy +EXPORT_SYMBOL_GPL vmlinux 0x3e9423b4 __get_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x3ea5196d apei_osc_setup +EXPORT_SYMBOL_GPL vmlinux 0x3ec652ab ata_common_sdev_groups +EXPORT_SYMBOL_GPL vmlinux 0x3ec93255 hv_get_isolation_type +EXPORT_SYMBOL_GPL vmlinux 0x3edb086b pse_control_put +EXPORT_SYMBOL_GPL vmlinux 0x3ef051c8 crypto_inc +EXPORT_SYMBOL_GPL vmlinux 0x3ef40a1e __tracepoint_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x3f37d564 pci_epc_set_msi +EXPORT_SYMBOL_GPL vmlinux 0x3f491f49 reset_control_bulk_reset +EXPORT_SYMBOL_GPL vmlinux 0x3f63c179 skb_segment +EXPORT_SYMBOL_GPL vmlinux 0x3f84bcd7 dax_alive +EXPORT_SYMBOL_GPL vmlinux 0x3f8ffccc subsys_interface_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3f947f7e ncsi_register_dev +EXPORT_SYMBOL_GPL vmlinux 0x3fa03b41 pci_try_reset_function +EXPORT_SYMBOL_GPL vmlinux 0x3fae6ab0 hv_vp_index +EXPORT_SYMBOL_GPL vmlinux 0x3fae8613 ata_pci_bmdma_init +EXPORT_SYMBOL_GPL vmlinux 0x3fbd1788 devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0x3fbd7dae devl_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0x3fc99913 devm_clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x3fdcfb94 nvme_auth_gen_privkey +EXPORT_SYMBOL_GPL vmlinux 0x3fe6c346 devlink_fmsg_binary_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x3feb6570 vchan_tx_desc_free +EXPORT_SYMBOL_GPL vmlinux 0x3ff2e349 hte_request_ts_ns +EXPORT_SYMBOL_GPL vmlinux 0x3ffdacf3 timerqueue_iterate_next +EXPORT_SYMBOL_GPL vmlinux 0x40013ea1 i2c_dw_probe_master +EXPORT_SYMBOL_GPL vmlinux 0x40017308 inet6_hash +EXPORT_SYMBOL_GPL vmlinux 0x400a024b acpi_scan_lock_release +EXPORT_SYMBOL_GPL vmlinux 0x400b1ae1 xdp_return_frame +EXPORT_SYMBOL_GPL vmlinux 0x4015f820 __tracepoint_tcp_bad_csum +EXPORT_SYMBOL_GPL vmlinux 0x4022acbf fwnode_graph_get_port_parent +EXPORT_SYMBOL_GPL vmlinux 0x40267068 usb_anchor_resume_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x40373ba8 dev_pm_domain_detach +EXPORT_SYMBOL_GPL vmlinux 0x403eac60 sbitmap_get +EXPORT_SYMBOL_GPL vmlinux 0x403f9529 gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x4043757f init_iova_domain +EXPORT_SYMBOL_GPL vmlinux 0x4047dcd5 alloc_page_buffers +EXPORT_SYMBOL_GPL vmlinux 0x4063b9e9 device_release_driver +EXPORT_SYMBOL_GPL vmlinux 0x4065d168 pm_print_active_wakeup_sources +EXPORT_SYMBOL_GPL vmlinux 0x406c4cb1 hrtimer_resolution +EXPORT_SYMBOL_GPL vmlinux 0x4071b517 out_of_line_wait_on_bit_timeout +EXPORT_SYMBOL_GPL vmlinux 0x407af304 usb_wait_anchor_empty_timeout +EXPORT_SYMBOL_GPL vmlinux 0x40876513 poll_state_synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x408989a4 tcp_sendmsg_locked +EXPORT_SYMBOL_GPL vmlinux 0x4099f919 tun_ptr_free +EXPORT_SYMBOL_GPL vmlinux 0x409a4f3a pm_generic_freeze_noirq +EXPORT_SYMBOL_GPL vmlinux 0x409cbdc3 iommu_report_device_fault +EXPORT_SYMBOL_GPL vmlinux 0x40a0aafc __flush_tlb_all +EXPORT_SYMBOL_GPL vmlinux 0x40a5564e amd_iommu_is_attach_deferred +EXPORT_SYMBOL_GPL vmlinux 0x40ae42ea irq_domain_translate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x40d88f9c regmap_get_val_endian +EXPORT_SYMBOL_GPL vmlinux 0x40effdcb acpi_debugfs_dir +EXPORT_SYMBOL_GPL vmlinux 0x40f0683e reset_control_put +EXPORT_SYMBOL_GPL vmlinux 0x40f8b94e ring_buffer_iter_dropped +EXPORT_SYMBOL_GPL vmlinux 0x40f8bd4e klist_add_before +EXPORT_SYMBOL_GPL vmlinux 0x4100a662 clk_get_scaled_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x410a2058 da9052_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x410aaac1 alloc_dax_region +EXPORT_SYMBOL_GPL vmlinux 0x410c1156 usb_interrupt_msg +EXPORT_SYMBOL_GPL vmlinux 0x411228ac __traceiter_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x411cefd8 free_fib_info +EXPORT_SYMBOL_GPL vmlinux 0x4129f5ee kernel_fpu_begin_mask +EXPORT_SYMBOL_GPL vmlinux 0x412bc681 ring_buffer_empty_cpu +EXPORT_SYMBOL_GPL vmlinux 0x414d119a videomode_from_timings +EXPORT_SYMBOL_GPL vmlinux 0x41550592 usb_hcd_setup_local_mem +EXPORT_SYMBOL_GPL vmlinux 0x4156fb85 dev_attr_em_message_type +EXPORT_SYMBOL_GPL vmlinux 0x415840aa device_match_devt +EXPORT_SYMBOL_GPL vmlinux 0x416a5d5f xenbus_dev_remove +EXPORT_SYMBOL_GPL vmlinux 0x416c4f9d crypto_comp_decompress +EXPORT_SYMBOL_GPL vmlinux 0x417284d5 cgroup_path_ns +EXPORT_SYMBOL_GPL vmlinux 0x41746ca8 balloon_page_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x41747d24 mmc_cmdq_enable +EXPORT_SYMBOL_GPL vmlinux 0x41814cb8 dirty_writeback_interval +EXPORT_SYMBOL_GPL vmlinux 0x4183efe5 devlink_free +EXPORT_SYMBOL_GPL vmlinux 0x419489fa dm_path_uevent +EXPORT_SYMBOL_GPL vmlinux 0x419e7efd sfp_module_stop +EXPORT_SYMBOL_GPL vmlinux 0x419f4414 simple_attr_open +EXPORT_SYMBOL_GPL vmlinux 0x41a00a96 phy_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x41a3e403 devl_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0x41b250bf dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x41b5fb7e wb_writeout_inc +EXPORT_SYMBOL_GPL vmlinux 0x41b9a6e6 bsg_unregister_queue +EXPORT_SYMBOL_GPL vmlinux 0x41bce49a ghes_register_vendor_record_notifier +EXPORT_SYMBOL_GPL vmlinux 0x41c494b4 devm_regulator_get_enable_optional +EXPORT_SYMBOL_GPL vmlinux 0x41c8eb33 netdev_walk_all_lower_dev +EXPORT_SYMBOL_GPL vmlinux 0x41daab50 sdio_readl +EXPORT_SYMBOL_GPL vmlinux 0x41ed3cec eventfd_ctx_remove_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x41f36008 nvme_sync_io_queues +EXPORT_SYMBOL_GPL vmlinux 0x42041512 i2c_get_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x420f3d01 nvmem_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x421108d5 __tracepoint_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0x422e578a __SCT__tp_func_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x4249b9f8 acpi_initialize_hp_context +EXPORT_SYMBOL_GPL vmlinux 0x4253ff99 mptcp_token_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x426452a3 acpi_evaluation_failure_warn +EXPORT_SYMBOL_GPL vmlinux 0x4278a655 fat_free_clusters +EXPORT_SYMBOL_GPL vmlinux 0x427d8a7f gnttab_unmap_refs_async +EXPORT_SYMBOL_GPL vmlinux 0x42825ce2 rcu_scheduler_active +EXPORT_SYMBOL_GPL vmlinux 0x428534f1 vfs_getxattr +EXPORT_SYMBOL_GPL vmlinux 0x42974a45 ftrace_set_filter_ips +EXPORT_SYMBOL_GPL vmlinux 0x429c3f9c reboot_mode +EXPORT_SYMBOL_GPL vmlinux 0x42bb7461 acpi_fetch_acpi_dev +EXPORT_SYMBOL_GPL vmlinux 0x42bf8fe1 list_lru_del +EXPORT_SYMBOL_GPL vmlinux 0x42ccae5f devm_gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x42df8938 br_fdb_test_addr_hook +EXPORT_SYMBOL_GPL vmlinux 0x42e67744 crypto_sig_maxsize +EXPORT_SYMBOL_GPL vmlinux 0x42e732cb vcap_rule_add_key_u128 +EXPORT_SYMBOL_GPL vmlinux 0x42f728aa mctrl_gpio_get_outputs +EXPORT_SYMBOL_GPL vmlinux 0x43069db9 bio_iov_iter_get_pages +EXPORT_SYMBOL_GPL vmlinux 0x4307ecbf pm_generic_freeze_late +EXPORT_SYMBOL_GPL vmlinux 0x430d88ec __traceiter_arm_event +EXPORT_SYMBOL_GPL vmlinux 0x4313a47e blk_queue_can_use_dma_map_merging +EXPORT_SYMBOL_GPL vmlinux 0x43333014 nexthop_select_path +EXPORT_SYMBOL_GPL vmlinux 0x43472c96 fuse_conn_get +EXPORT_SYMBOL_GPL vmlinux 0x4349a50b set_primary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x434a4821 l3mdev_table_lookup_register +EXPORT_SYMBOL_GPL vmlinux 0x4358fdc2 tcp_twsk_unique +EXPORT_SYMBOL_GPL vmlinux 0x435d5200 cpci_hp_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x43609fc2 fib6_rule_default +EXPORT_SYMBOL_GPL vmlinux 0x436d817f mpi_clear_bit +EXPORT_SYMBOL_GPL vmlinux 0x4371f2e1 espintcp_queue_out +EXPORT_SYMBOL_GPL vmlinux 0x437eb1df ipv6_mod_enabled +EXPORT_SYMBOL_GPL vmlinux 0x437ee16f sdio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x438d8df2 iova_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x438de55c msi_unlock_descs +EXPORT_SYMBOL_GPL vmlinux 0x4391d770 devlink_dpipe_table_counter_enabled +EXPORT_SYMBOL_GPL vmlinux 0x439d172f disk_alloc_independent_access_ranges +EXPORT_SYMBOL_GPL vmlinux 0x43a2b419 tpm2_get_cc_attrs_tbl +EXPORT_SYMBOL_GPL vmlinux 0x43a440fa __traceiter_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x43a962ee pci_p2pdma_add_resource +EXPORT_SYMBOL_GPL vmlinux 0x43aa319e lease_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x43ab929e firmware_upload_register +EXPORT_SYMBOL_GPL vmlinux 0x43b47ba9 mddev_unlock +EXPORT_SYMBOL_GPL vmlinux 0x43b99fd2 mm_kobj +EXPORT_SYMBOL_GPL vmlinux 0x43bf4706 receive_fd +EXPORT_SYMBOL_GPL vmlinux 0x43c34545 tcp_plb_update_state +EXPORT_SYMBOL_GPL vmlinux 0x43caa7c0 regmap_irq_get_irq_reg_linear +EXPORT_SYMBOL_GPL vmlinux 0x43f81957 clk_round_rate +EXPORT_SYMBOL_GPL vmlinux 0x43f92edd wait_for_initramfs +EXPORT_SYMBOL_GPL vmlinux 0x43f951ab cpufreq_frequency_table_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4401e6c2 mpi_cmpabs +EXPORT_SYMBOL_GPL vmlinux 0x44030de3 regmap_get_val_bytes +EXPORT_SYMBOL_GPL vmlinux 0x4406b3fe start_poll_synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0x441d23d6 usb_get_dr_mode +EXPORT_SYMBOL_GPL vmlinux 0x4427a4fc transport_configure_device +EXPORT_SYMBOL_GPL vmlinux 0x442deaa9 poll_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x442fe241 genphy_c45_plca_get_cfg +EXPORT_SYMBOL_GPL vmlinux 0x44622860 dev_pm_opp_find_freq_floor +EXPORT_SYMBOL_GPL vmlinux 0x4471a51d vhost_task_stop +EXPORT_SYMBOL_GPL vmlinux 0x44741339 acpiphp_register_attention +EXPORT_SYMBOL_GPL vmlinux 0x4475dcaf hv_nested +EXPORT_SYMBOL_GPL vmlinux 0x4476a11c pci_epc_set_bar +EXPORT_SYMBOL_GPL vmlinux 0x4479ccb1 xenbus_read_otherend_details +EXPORT_SYMBOL_GPL vmlinux 0x4484a5a4 wait_for_device_probe +EXPORT_SYMBOL_GPL vmlinux 0x448bb4a3 fib_nl_delrule +EXPORT_SYMBOL_GPL vmlinux 0x4497ee09 devm_acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x44bae227 bit_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x44bc85ac virtio_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x44c10a52 kvfree_call_rcu +EXPORT_SYMBOL_GPL vmlinux 0x44cf8cf0 blk_zone_cond_str +EXPORT_SYMBOL_GPL vmlinux 0x44d49f2c dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0x44e1e9aa balloon_stats +EXPORT_SYMBOL_GPL vmlinux 0x44e4e53c crypto_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0x44e85d6a ethnl_cable_test_fault_length +EXPORT_SYMBOL_GPL vmlinux 0x44fb9ed5 udp_tunnel_nic_ops +EXPORT_SYMBOL_GPL vmlinux 0x44fbcef6 __SCK__tp_func_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0x44fcf04d bpf_trace_run10 +EXPORT_SYMBOL_GPL vmlinux 0x450110e8 perf_assign_events +EXPORT_SYMBOL_GPL vmlinux 0x4507f4a8 cpuhp_tasks_frozen +EXPORT_SYMBOL_GPL vmlinux 0x451618d0 sbitmap_del_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x45213c25 sysfs_create_link_nowarn +EXPORT_SYMBOL_GPL vmlinux 0x4522d463 dma_resv_set_deadline +EXPORT_SYMBOL_GPL vmlinux 0x4531624f usb_decode_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x4531ab62 copy_from_kernel_nofault +EXPORT_SYMBOL_GPL vmlinux 0x45360202 __irq_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0x453da07b iomap_invalidate_folio +EXPORT_SYMBOL_GPL vmlinux 0x453dbd54 securityfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0x45453a5b da903x_update +EXPORT_SYMBOL_GPL vmlinux 0x454d0d21 class_find_device +EXPORT_SYMBOL_GPL vmlinux 0x45502db3 dmi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x4550766e fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x4552b518 kobject_move +EXPORT_SYMBOL_GPL vmlinux 0x4553e038 ata_sas_slave_configure +EXPORT_SYMBOL_GPL vmlinux 0x4554a903 pci_ats_supported +EXPORT_SYMBOL_GPL vmlinux 0x45558f56 clk_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x45629206 acpi_device_fix_up_power +EXPORT_SYMBOL_GPL vmlinux 0x457594fa crypto_alg_list +EXPORT_SYMBOL_GPL vmlinux 0x459b27c6 xfrm_audit_state_delete +EXPORT_SYMBOL_GPL vmlinux 0x459e6151 mm_unaccount_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0x45a25ee5 locks_owner_has_blockers +EXPORT_SYMBOL_GPL vmlinux 0x45a74ee9 devl_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x45bae3fd mmu_notifier_put +EXPORT_SYMBOL_GPL vmlinux 0x45c7cdd6 nvme_get_features +EXPORT_SYMBOL_GPL vmlinux 0x45cde8c7 nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0x45d14bdf hypercall_page +EXPORT_SYMBOL_GPL vmlinux 0x45e8b450 mnt_idmap_get +EXPORT_SYMBOL_GPL vmlinux 0x45efff3c get_user_pages_fast +EXPORT_SYMBOL_GPL vmlinux 0x45f0266b irq_chip_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0x45f4325b pci_slots_kset +EXPORT_SYMBOL_GPL vmlinux 0x45feed1a cpufreq_disable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x46013233 net_dec_ingress_queue +EXPORT_SYMBOL_GPL vmlinux 0x46030074 __hrtimer_get_remaining +EXPORT_SYMBOL_GPL vmlinux 0x46047827 __SCT__tp_func_ata_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x4617870c crypto_akcipher_sync_post +EXPORT_SYMBOL_GPL vmlinux 0x4618477c __tracepoint_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x461a6d02 pci_ignore_hotplug +EXPORT_SYMBOL_GPL vmlinux 0x46275130 mas_expected_entries +EXPORT_SYMBOL_GPL vmlinux 0x46392ae9 devm_serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x4649f5a7 dst_blackhole_redirect +EXPORT_SYMBOL_GPL vmlinux 0x465d5481 gpiochip_generic_config +EXPORT_SYMBOL_GPL vmlinux 0x465f2c15 dmaengine_unmap_put +EXPORT_SYMBOL_GPL vmlinux 0x46600aae devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x4679821e bsg_job_done +EXPORT_SYMBOL_GPL vmlinux 0x46817557 __tracepoint_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0x4688d7ec pvclock_gtod_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4690b035 edac_pci_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x46980123 irq_get_default_host +EXPORT_SYMBOL_GPL vmlinux 0x4698388f watchdog_notify_pretimeout +EXPORT_SYMBOL_GPL vmlinux 0x46a32292 skb_mpls_pop +EXPORT_SYMBOL_GPL vmlinux 0x46a4b118 hrtimer_cancel +EXPORT_SYMBOL_GPL vmlinux 0x46a6c9ef hv_get_tsc_page +EXPORT_SYMBOL_GPL vmlinux 0x46a85c97 dev_pm_clear_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x46ac6757 ata_pio_need_iordy +EXPORT_SYMBOL_GPL vmlinux 0x46ad6172 phy_resolve_aneg_linkmode +EXPORT_SYMBOL_GPL vmlinux 0x46b042b7 blk_stat_enable_accounting +EXPORT_SYMBOL_GPL vmlinux 0x46c61de3 acpi_install_cmos_rtc_space_handler +EXPORT_SYMBOL_GPL vmlinux 0x46e14bbc ip6_sk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x4704a5a1 vp_legacy_set_queue_address +EXPORT_SYMBOL_GPL vmlinux 0x47144d40 regulator_set_ramp_delay_regmap +EXPORT_SYMBOL_GPL vmlinux 0x47229b5c gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x4726ba80 int_active_memcg +EXPORT_SYMBOL_GPL vmlinux 0x47273b9e regulator_set_pull_down_regmap +EXPORT_SYMBOL_GPL vmlinux 0x472c11f0 i2c_new_client_device +EXPORT_SYMBOL_GPL vmlinux 0x472c19d4 devm_pinctrl_register_and_init +EXPORT_SYMBOL_GPL vmlinux 0x473258b9 wm8350_block_write +EXPORT_SYMBOL_GPL vmlinux 0x473ddf86 serial8250_rpm_get +EXPORT_SYMBOL_GPL vmlinux 0x474c39e3 devm_usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x4761f17c register_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x47663cfe vcap_rule_mod_key_u32 +EXPORT_SYMBOL_GPL vmlinux 0x47837d61 pci_enable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x47884890 system_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0x478e81f8 tcp_orphan_count +EXPORT_SYMBOL_GPL vmlinux 0x4791cb91 apei_mce_report_mem_error +EXPORT_SYMBOL_GPL vmlinux 0x479803b9 base64_encode +EXPORT_SYMBOL_GPL vmlinux 0x479f7d4b clk_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x47a4b6ec iomap_bmap +EXPORT_SYMBOL_GPL vmlinux 0x47aad3b9 have_governor_per_policy +EXPORT_SYMBOL_GPL vmlinux 0x47bef4de crypto_grab_spawn +EXPORT_SYMBOL_GPL vmlinux 0x47cf62fe devm_extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0x47d0eea2 acpi_lpat_temp_to_raw +EXPORT_SYMBOL_GPL vmlinux 0x47dac283 lwtunnel_output +EXPORT_SYMBOL_GPL vmlinux 0x47de0dc7 clk_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0x47e163b8 rtnl_link_register +EXPORT_SYMBOL_GPL vmlinux 0x47e640b2 component_release_of +EXPORT_SYMBOL_GPL vmlinux 0x47e66fea device_get_child_node_count +EXPORT_SYMBOL_GPL vmlinux 0x47f354d3 trace_event_reg +EXPORT_SYMBOL_GPL vmlinux 0x480305ca kmsg_dump_rewind +EXPORT_SYMBOL_GPL vmlinux 0x4806ec73 spi_mem_driver_register_with_owner +EXPORT_SYMBOL_GPL vmlinux 0x480c3f42 usb_phy_set_charger_state +EXPORT_SYMBOL_GPL vmlinux 0x481f9b7d mpi_mulm +EXPORT_SYMBOL_GPL vmlinux 0x48203853 em_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x4828e77b acpi_scan_lock_acquire +EXPORT_SYMBOL_GPL vmlinux 0x483f1682 memunmap_pages +EXPORT_SYMBOL_GPL vmlinux 0x484dbe2a register_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0x4864adae devm_register_restart_handler +EXPORT_SYMBOL_GPL vmlinux 0x486af86a debugfs_create_file_size +EXPORT_SYMBOL_GPL vmlinux 0x486dedc3 ghes_unregister_vendor_record_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4876c52f sata_scr_write +EXPORT_SYMBOL_GPL vmlinux 0x487a450b usb_deregister_dev +EXPORT_SYMBOL_GPL vmlinux 0x488c26c1 spi_get_device_match_data +EXPORT_SYMBOL_GPL vmlinux 0x48977fbe sysfs_group_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x4897c852 __regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x4899d260 screen_glyph +EXPORT_SYMBOL_GPL vmlinux 0x48a3d20b mctrl_gpio_get +EXPORT_SYMBOL_GPL vmlinux 0x48a65cf7 irq_domain_disconnect_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0x48afc1b2 set_task_ioprio +EXPORT_SYMBOL_GPL vmlinux 0x48b2b9a6 phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x48c27f0f skcipher_walk_aead_decrypt +EXPORT_SYMBOL_GPL vmlinux 0x48d463fb __blk_req_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0x48d4c1c2 debugfs_print_regs32 +EXPORT_SYMBOL_GPL vmlinux 0x48d7d839 crypto_unregister_algs +EXPORT_SYMBOL_GPL vmlinux 0x48e080b1 x86_virt_spec_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x49029e9d devm_pm_opp_set_config +EXPORT_SYMBOL_GPL vmlinux 0x4904c8a9 fl6_update_dst +EXPORT_SYMBOL_GPL vmlinux 0x490aae47 nvdimm_provider_data +EXPORT_SYMBOL_GPL vmlinux 0x491c1da6 led_trigger_rename_static +EXPORT_SYMBOL_GPL vmlinux 0x49224181 nvme_reset_wq +EXPORT_SYMBOL_GPL vmlinux 0x49242bc7 freezer_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x492f1b9b crypto_alloc_sync_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x4932e00d ping_unhash +EXPORT_SYMBOL_GPL vmlinux 0x4934bdd0 crypto_check_attr_type +EXPORT_SYMBOL_GPL vmlinux 0x4939ebcd numa_map_to_online_node +EXPORT_SYMBOL_GPL vmlinux 0x49535e82 ata_port_wait_eh +EXPORT_SYMBOL_GPL vmlinux 0x495900c6 devlink_params_register +EXPORT_SYMBOL_GPL vmlinux 0x495a4221 __SCT__tp_func_rpm_return_int +EXPORT_SYMBOL_GPL vmlinux 0x495ea9c1 iommu_dev_enable_feature +EXPORT_SYMBOL_GPL vmlinux 0x495fe486 switchdev_bridge_port_offload +EXPORT_SYMBOL_GPL vmlinux 0x49608959 migrate_disable +EXPORT_SYMBOL_GPL vmlinux 0x4962768e fuse_do_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x496f7e2f devm_phy_create +EXPORT_SYMBOL_GPL vmlinux 0x4972244c anon_transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0x49745e0f nvme_stop_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x497bb7ef ata_sff_drain_fifo +EXPORT_SYMBOL_GPL vmlinux 0x497f8881 __SCK__tp_func_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0x4984d616 thermal_zone_device_type +EXPORT_SYMBOL_GPL vmlinux 0x499043d3 crypto_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x49927d25 page_reporting_unregister +EXPORT_SYMBOL_GPL vmlinux 0x499580aa crypto_hash_alg_has_setkey +EXPORT_SYMBOL_GPL vmlinux 0x499782e4 to_nvdimm_bus_dev +EXPORT_SYMBOL_GPL vmlinux 0x499f7cdc xfrm_dev_offload_ok +EXPORT_SYMBOL_GPL vmlinux 0x49aa31ed aead_exit_geniv +EXPORT_SYMBOL_GPL vmlinux 0x49ac4fa5 iocb_bio_iopoll +EXPORT_SYMBOL_GPL vmlinux 0x49b9184e vcap_is_next_lookup +EXPORT_SYMBOL_GPL vmlinux 0x49cd25ed alloc_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x49d143bc device_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0x49d5d508 class_interface_register +EXPORT_SYMBOL_GPL vmlinux 0x49e96999 cond_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x49f21d21 devm_pm_runtime_enable +EXPORT_SYMBOL_GPL vmlinux 0x49f821b9 device_del +EXPORT_SYMBOL_GPL vmlinux 0x49fe78f6 mptcp_pm_get_subflows_max +EXPORT_SYMBOL_GPL vmlinux 0x4a0fc806 dev_pm_opp_xlate_required_opp +EXPORT_SYMBOL_GPL vmlinux 0x4a17ed66 sysrq_mask +EXPORT_SYMBOL_GPL vmlinux 0x4a37b087 mptcp_pm_get_local_addr_max +EXPORT_SYMBOL_GPL vmlinux 0x4a420d09 acpi_bus_detach_private_data +EXPORT_SYMBOL_GPL vmlinux 0x4a43b6af fib_rules_dump +EXPORT_SYMBOL_GPL vmlinux 0x4a49e087 nvdimm_delete +EXPORT_SYMBOL_GPL vmlinux 0x4a4e72cf usb_match_id +EXPORT_SYMBOL_GPL vmlinux 0x4a58d3f8 acpiphp_unregister_attention +EXPORT_SYMBOL_GPL vmlinux 0x4a609f79 spi_new_ancillary_device +EXPORT_SYMBOL_GPL vmlinux 0x4a61f476 io_uring_cmd_done +EXPORT_SYMBOL_GPL vmlinux 0x4a69100e __of_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0x4a6fcbc6 invalidate_inode_pages2 +EXPORT_SYMBOL_GPL vmlinux 0x4a71b52b __tracepoint_error_report_end +EXPORT_SYMBOL_GPL vmlinux 0x4a753511 edac_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0x4aa2c0f9 devl_register +EXPORT_SYMBOL_GPL vmlinux 0x4aa6d4f5 cpufreq_enable_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x4ab7e797 ip6_pol_route +EXPORT_SYMBOL_GPL vmlinux 0x4ac0580e uprobe_register_refctr +EXPORT_SYMBOL_GPL vmlinux 0x4ac6cdd8 find_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x4adae604 uart_console_device +EXPORT_SYMBOL_GPL vmlinux 0x4aee9c27 pci_stop_and_remove_bus_device_locked +EXPORT_SYMBOL_GPL vmlinux 0x4af91af8 dm_report_zones +EXPORT_SYMBOL_GPL vmlinux 0x4b18168c iomap_writepages +EXPORT_SYMBOL_GPL vmlinux 0x4b1bf375 sdio_f0_writeb +EXPORT_SYMBOL_GPL vmlinux 0x4b2a4250 mmu_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4b2bbc53 devm_of_phy_optional_get +EXPORT_SYMBOL_GPL vmlinux 0x4b31071d ata_sas_port_alloc +EXPORT_SYMBOL_GPL vmlinux 0x4b332df8 hv_get_tsc_pfn +EXPORT_SYMBOL_GPL vmlinux 0x4b33bf7a devfreq_event_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0x4b34a0c1 usb_hcd_end_port_resume +EXPORT_SYMBOL_GPL vmlinux 0x4b3aa9a3 __tracepoint_block_rq_insert +EXPORT_SYMBOL_GPL vmlinux 0x4b3f0060 spi_mem_exec_op +EXPORT_SYMBOL_GPL vmlinux 0x4b49919c crypto_alloc_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x4b51210d devm_regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4b555bc3 tps65912_device_init +EXPORT_SYMBOL_GPL vmlinux 0x4b56ce05 xenmem_reservation_increase +EXPORT_SYMBOL_GPL vmlinux 0x4b57ae85 usb_disable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x4b5acf74 rhashtable_init +EXPORT_SYMBOL_GPL vmlinux 0x4b636133 tcp_reno_ssthresh +EXPORT_SYMBOL_GPL vmlinux 0x4b63a516 nvme_cancel_tagset +EXPORT_SYMBOL_GPL vmlinux 0x4b762828 start_thread +EXPORT_SYMBOL_GPL vmlinux 0x4b7871e5 pci_create_root_bus +EXPORT_SYMBOL_GPL vmlinux 0x4b88e033 __trace_array_puts +EXPORT_SYMBOL_GPL vmlinux 0x4b931968 xen_features +EXPORT_SYMBOL_GPL vmlinux 0x4b99e9b2 acpi_get_pci_dev +EXPORT_SYMBOL_GPL vmlinux 0x4baef0f4 scsi_internal_device_unblock_nowait +EXPORT_SYMBOL_GPL vmlinux 0x4bc78e80 fat_setattr +EXPORT_SYMBOL_GPL vmlinux 0x4bd2ce66 netdev_walk_all_lower_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0x4bd6f08b misc_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x4bdb8dcc housekeeping_test_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4be92f30 thermal_zone_unbind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x4bea9b56 sync_page_io +EXPORT_SYMBOL_GPL vmlinux 0x4bf4dc17 gpiochip_is_requested +EXPORT_SYMBOL_GPL vmlinux 0x4bf58d19 genphy_c45_an_disable_aneg +EXPORT_SYMBOL_GPL vmlinux 0x4bf6e454 fb_deferred_io_fsync +EXPORT_SYMBOL_GPL vmlinux 0x4bfd398d hwrng_msleep +EXPORT_SYMBOL_GPL vmlinux 0x4c242b41 sata_pmp_qc_defer_cmd_switch +EXPORT_SYMBOL_GPL vmlinux 0x4c2b351d start_poll_synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x4c453f1e governor_sysfs_ops +EXPORT_SYMBOL_GPL vmlinux 0x4c49f1de hv_clock_per_cpu +EXPORT_SYMBOL_GPL vmlinux 0x4c549b36 __traceiter_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x4c5b9de9 __SCK__tp_func_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x4c5f348e acpi_dev_filter_resource_type +EXPORT_SYMBOL_GPL vmlinux 0x4c68fd2e device_get_dma_attr +EXPORT_SYMBOL_GPL vmlinux 0x4c762b5c x86_stepping +EXPORT_SYMBOL_GPL vmlinux 0x4c78277e clockevent_delta2ns +EXPORT_SYMBOL_GPL vmlinux 0x4c8adfe1 hv_root_partition +EXPORT_SYMBOL_GPL vmlinux 0x4c9a49d7 serdev_device_get_tiocm +EXPORT_SYMBOL_GPL vmlinux 0x4ca5590e mas_prev +EXPORT_SYMBOL_GPL vmlinux 0x4ca9b3fe devlink_flash_update_timeout_notify +EXPORT_SYMBOL_GPL vmlinux 0x4cb27100 ktime_get_snapshot +EXPORT_SYMBOL_GPL vmlinux 0x4cdc1d22 show_class_attr_string +EXPORT_SYMBOL_GPL vmlinux 0x4ce38db4 platform_device_add_data +EXPORT_SYMBOL_GPL vmlinux 0x4cee7653 crypto_aead_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x4cf0a661 ip6_dst_lookup_tunnel +EXPORT_SYMBOL_GPL vmlinux 0x4cf0c453 extcon_sync +EXPORT_SYMBOL_GPL vmlinux 0x4cf8880f vcap_rule_add_key_u32 +EXPORT_SYMBOL_GPL vmlinux 0x4cfb5e49 __traceiter_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0x4d0015e2 cpu_hotplug_disable +EXPORT_SYMBOL_GPL vmlinux 0x4d1de44c devlink_priv +EXPORT_SYMBOL_GPL vmlinux 0x4d24a1e4 sbitmap_finish_wait +EXPORT_SYMBOL_GPL vmlinux 0x4d390f88 i2c_client_type +EXPORT_SYMBOL_GPL vmlinux 0x4d6ca085 wait_for_stable_page +EXPORT_SYMBOL_GPL vmlinux 0x4d6d0bbc iommu_group_ref_get +EXPORT_SYMBOL_GPL vmlinux 0x4d7272e4 migrate_enable +EXPORT_SYMBOL_GPL vmlinux 0x4d77786a fwnode_graph_get_endpoint_count +EXPORT_SYMBOL_GPL vmlinux 0x4d8dd80e serial8250_do_set_ldisc +EXPORT_SYMBOL_GPL vmlinux 0x4d92f32f rio_request_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x4d9710ea folio_mkclean +EXPORT_SYMBOL_GPL vmlinux 0x4d988e19 failover_slave_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4d9bea0a vcap_tc_flower_handler_ip_usage +EXPORT_SYMBOL_GPL vmlinux 0x4d9d3d6e xhci_resume +EXPORT_SYMBOL_GPL vmlinux 0x4dad7990 genphy_c45_read_eee_abilities +EXPORT_SYMBOL_GPL vmlinux 0x4dae16e4 i2c_put_dma_safe_msg_buf +EXPORT_SYMBOL_GPL vmlinux 0x4db3e456 blk_mq_complete_request_remote +EXPORT_SYMBOL_GPL vmlinux 0x4dc7aa1b vcap_set_tc_exterr +EXPORT_SYMBOL_GPL vmlinux 0x4de17ab3 usb_state_string +EXPORT_SYMBOL_GPL vmlinux 0x4de49d40 tcp_splice_eof +EXPORT_SYMBOL_GPL vmlinux 0x4de832fa fwnode_connection_find_matches +EXPORT_SYMBOL_GPL vmlinux 0x4de8e993 pci_find_doe_mailbox +EXPORT_SYMBOL_GPL vmlinux 0x4ded9450 rio_register_scan +EXPORT_SYMBOL_GPL vmlinux 0x4dedcd4a virtqueue_notify +EXPORT_SYMBOL_GPL vmlinux 0x4df37297 crypto_skcipher_encrypt +EXPORT_SYMBOL_GPL vmlinux 0x4df89a22 sdio_align_size +EXPORT_SYMBOL_GPL vmlinux 0x4e009c06 handle_fasteoi_irq +EXPORT_SYMBOL_GPL vmlinux 0x4e0464bc genphy_c45_an_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x4e144a54 __SCT__tp_func_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x4e17c613 ata_sff_queue_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0x4e2b0f04 fib_nexthop_info +EXPORT_SYMBOL_GPL vmlinux 0x4e30a01c sdio_set_host_pm_flags +EXPORT_SYMBOL_GPL vmlinux 0x4e3dc47b regmap_get_raw_write_max +EXPORT_SYMBOL_GPL vmlinux 0x4e44fdbb usb_block_urb +EXPORT_SYMBOL_GPL vmlinux 0x4e494acc attribute_container_find_class_device +EXPORT_SYMBOL_GPL vmlinux 0x4e4afcd8 ata_sff_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x4e4c37e2 freq_qos_remove_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4e505a3c regmap_async_complete_cb +EXPORT_SYMBOL_GPL vmlinux 0x4e528294 __SCK__tp_func_ata_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x4e601a5b debugfs_real_fops +EXPORT_SYMBOL_GPL vmlinux 0x4e657485 free_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x4e6fc9b0 power_supply_battery_info_get_prop +EXPORT_SYMBOL_GPL vmlinux 0x4e7fc7c0 component_master_add_with_match +EXPORT_SYMBOL_GPL vmlinux 0x4e92e221 device_match_of_node +EXPORT_SYMBOL_GPL vmlinux 0x4e9a5995 mbox_request_channel_byname +EXPORT_SYMBOL_GPL vmlinux 0x4ea8a8e2 bpf_prog_get_type_dev +EXPORT_SYMBOL_GPL vmlinux 0x4eac268c pci_find_host_bridge +EXPORT_SYMBOL_GPL vmlinux 0x4eac5fc1 cpu_mitigations_auto_nosmt +EXPORT_SYMBOL_GPL vmlinux 0x4eb5870c pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0x4eb82b18 gpiod_get_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x4ec3bf57 tpm_send +EXPORT_SYMBOL_GPL vmlinux 0x4ec5ae49 vcap_tc_flower_handler_vlan_usage +EXPORT_SYMBOL_GPL vmlinux 0x4ece3615 blocking_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x4ed7f060 pci_enable_ats +EXPORT_SYMBOL_GPL vmlinux 0x4ee48fc2 list_lru_count_one +EXPORT_SYMBOL_GPL vmlinux 0x4eed2d4e crypto_register_aead +EXPORT_SYMBOL_GPL vmlinux 0x4eeee747 __nvdimm_create +EXPORT_SYMBOL_GPL vmlinux 0x4ef29ec5 dev_pm_opp_get_power +EXPORT_SYMBOL_GPL vmlinux 0x4ef5bcf4 perf_swevent_get_recursion_context +EXPORT_SYMBOL_GPL vmlinux 0x4efcf021 mpi_normalize +EXPORT_SYMBOL_GPL vmlinux 0x4f00676e get_net_ns +EXPORT_SYMBOL_GPL vmlinux 0x4f0141e6 tty_port_default_client_ops +EXPORT_SYMBOL_GPL vmlinux 0x4f10415a sata_port_ops +EXPORT_SYMBOL_GPL vmlinux 0x4f1c545b crypto_alloc_tfm_node +EXPORT_SYMBOL_GPL vmlinux 0x4f1cdd61 linear_hugepage_index +EXPORT_SYMBOL_GPL vmlinux 0x4f20d33f ip6_datagram_send_ctl +EXPORT_SYMBOL_GPL vmlinux 0x4f2593f0 btree_update +EXPORT_SYMBOL_GPL vmlinux 0x4f2c996d kmsg_dump_get_line +EXPORT_SYMBOL_GPL vmlinux 0x4f46aad8 kobject_uevent +EXPORT_SYMBOL_GPL vmlinux 0x4f4b321b led_blink_set_oneshot +EXPORT_SYMBOL_GPL vmlinux 0x4f53e44a fwnode_create_software_node +EXPORT_SYMBOL_GPL vmlinux 0x4f56dafb fpu_free_guest_fpstate +EXPORT_SYMBOL_GPL vmlinux 0x4f638d55 regulator_set_active_discharge_regmap +EXPORT_SYMBOL_GPL vmlinux 0x4f661059 devm_remove_action +EXPORT_SYMBOL_GPL vmlinux 0x4f661c4d gpiod_get_array_optional +EXPORT_SYMBOL_GPL vmlinux 0x4f664758 fwnode_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0x4f6a07fe show_rcu_gp_kthreads +EXPORT_SYMBOL_GPL vmlinux 0x4f72a987 uart_parse_options +EXPORT_SYMBOL_GPL vmlinux 0x4f788788 mmc_regulator_set_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x4f8b7369 vring_notification_data +EXPORT_SYMBOL_GPL vmlinux 0x4f9a1e55 ata_acpi_cbl_80wire +EXPORT_SYMBOL_GPL vmlinux 0x4faf82c4 do_unbind_con_driver +EXPORT_SYMBOL_GPL vmlinux 0x4fb5da55 fs_put_dax +EXPORT_SYMBOL_GPL vmlinux 0x4fb79842 vcap_keyfieldset +EXPORT_SYMBOL_GPL vmlinux 0x4fbc1f67 ata_sff_dev_select +EXPORT_SYMBOL_GPL vmlinux 0x4fbefc4c __rio_local_write_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x4fbf21ab dev_pm_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0x4fc99cad crypto_grab_ahash +EXPORT_SYMBOL_GPL vmlinux 0x4fd39017 i2c_adapter_type +EXPORT_SYMBOL_GPL vmlinux 0x4fdc945d sata_deb_timing_normal +EXPORT_SYMBOL_GPL vmlinux 0x4fdd83c8 rdev_get_name +EXPORT_SYMBOL_GPL vmlinux 0x4fe1eddf unregister_netevent_notifier +EXPORT_SYMBOL_GPL vmlinux 0x4feaea21 spi_finalize_current_message +EXPORT_SYMBOL_GPL vmlinux 0x4ff24af2 usb_get_status +EXPORT_SYMBOL_GPL vmlinux 0x500c768c apei_exec_read_register +EXPORT_SYMBOL_GPL vmlinux 0x5026585c xen_irq_from_gsi +EXPORT_SYMBOL_GPL vmlinux 0x502d6582 devm_led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x505787eb usb_wakeup_enabled_descendants +EXPORT_SYMBOL_GPL vmlinux 0x505a17d2 pcie_aspm_enabled +EXPORT_SYMBOL_GPL vmlinux 0x505d2266 ftrace_set_filter_ip +EXPORT_SYMBOL_GPL vmlinux 0x50725b15 ftrace_set_filter +EXPORT_SYMBOL_GPL vmlinux 0x508380e4 ata_bmdma_port_start32 +EXPORT_SYMBOL_GPL vmlinux 0x508b976b rio_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x508df4c6 __netdev_watchdog_up +EXPORT_SYMBOL_GPL vmlinux 0x5091b823 ring_buffer_read_start +EXPORT_SYMBOL_GPL vmlinux 0x50b03f5d l1tf_vmx_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x50b42ba1 entry_ibpb +EXPORT_SYMBOL_GPL vmlinux 0x50b9e299 bd_link_disk_holder +EXPORT_SYMBOL_GPL vmlinux 0x50d1f870 pgprot_writecombine +EXPORT_SYMBOL_GPL vmlinux 0x50d82e08 __nvme_submit_sync_cmd +EXPORT_SYMBOL_GPL vmlinux 0x50df94f5 btree_insert +EXPORT_SYMBOL_GPL vmlinux 0x50e0c299 gpiochip_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0x50e7193a __i2c_first_dynamic_bus_num +EXPORT_SYMBOL_GPL vmlinux 0x50edc1fc edac_device_del_device +EXPORT_SYMBOL_GPL vmlinux 0x50f0f55d dma_request_chan_by_mask +EXPORT_SYMBOL_GPL vmlinux 0x50fad434 round_jiffies_up +EXPORT_SYMBOL_GPL vmlinux 0x50ff58d6 gnttab_unmap_refs_sync +EXPORT_SYMBOL_GPL vmlinux 0x510531ba nvme_init_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x51081a7d gpiod_direction_input +EXPORT_SYMBOL_GPL vmlinux 0x51185f7a thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x51390c96 rcu_barrier_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x51428c32 shmem_truncate_range +EXPORT_SYMBOL_GPL vmlinux 0x51574991 devm_memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x5175eaf1 xfer_to_guest_mode_handle_work +EXPORT_SYMBOL_GPL vmlinux 0x517e52f7 power_supply_unregister +EXPORT_SYMBOL_GPL vmlinux 0x51873876 nvme_auth_get_seqnum +EXPORT_SYMBOL_GPL vmlinux 0x5187ac4b xen_store_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x5188928c fib6_get_table +EXPORT_SYMBOL_GPL vmlinux 0x518c2fc6 hpet_rtc_dropped_irq +EXPORT_SYMBOL_GPL vmlinux 0x518e4d10 led_trigger_set +EXPORT_SYMBOL_GPL vmlinux 0x518f01ae usb_free_coherent +EXPORT_SYMBOL_GPL vmlinux 0x5192e23d usb_put_dev +EXPORT_SYMBOL_GPL vmlinux 0x51991c1a __tracepoint_mc_event +EXPORT_SYMBOL_GPL vmlinux 0x519be736 vfs_truncate +EXPORT_SYMBOL_GPL vmlinux 0x51a16d61 devm_of_phy_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0x51a348cc usb_role_switch_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x51ba8194 devm_clk_hw_register_fixed_factor_index +EXPORT_SYMBOL_GPL vmlinux 0x51bee190 ata_ncq_sdev_groups +EXPORT_SYMBOL_GPL vmlinux 0x51c534da scsi_autopm_get_device +EXPORT_SYMBOL_GPL vmlinux 0x51d9122f sampling_rate_store +EXPORT_SYMBOL_GPL vmlinux 0x51df7e97 fscrypt_context_for_new_inode +EXPORT_SYMBOL_GPL vmlinux 0x51e913b5 fscrypt_symlink_getattr +EXPORT_SYMBOL_GPL vmlinux 0x521ffc76 rio_release_dma +EXPORT_SYMBOL_GPL vmlinux 0x52213722 acpi_dev_resource_memory +EXPORT_SYMBOL_GPL vmlinux 0x52252316 clk_unregister_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0x522d99e9 make_vfsuid +EXPORT_SYMBOL_GPL vmlinux 0x5237f270 iommu_device_claim_dma_owner +EXPORT_SYMBOL_GPL vmlinux 0x52431348 xenbus_transaction_start +EXPORT_SYMBOL_GPL vmlinux 0x525d0aa3 trace_seq_printf +EXPORT_SYMBOL_GPL vmlinux 0x52647db1 ct_idle_exit +EXPORT_SYMBOL_GPL vmlinux 0x52678e7f seg6_do_srh_inline +EXPORT_SYMBOL_GPL vmlinux 0x528cfdd6 devm_device_add_group +EXPORT_SYMBOL_GPL vmlinux 0x52a89f0c msi_next_desc +EXPORT_SYMBOL_GPL vmlinux 0x52b1e3c7 pci_flags +EXPORT_SYMBOL_GPL vmlinux 0x52bfb9b8 crypto_akcipher_sync_prep +EXPORT_SYMBOL_GPL vmlinux 0x52c15790 fib_add_nexthop +EXPORT_SYMBOL_GPL vmlinux 0x52c35e83 call_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x52c36953 nvdimm_in_overwrite +EXPORT_SYMBOL_GPL vmlinux 0x52d54fce devlink_info_version_stored_put +EXPORT_SYMBOL_GPL vmlinux 0x52eddb69 raw_v6_hashinfo +EXPORT_SYMBOL_GPL vmlinux 0x52efb1ec nvdimm_has_cache +EXPORT_SYMBOL_GPL vmlinux 0x52f19bbb devm_regmap_field_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0x530a7ae1 __traceiter_ata_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x530a9cce iomap_file_buffered_write +EXPORT_SYMBOL_GPL vmlinux 0x530e0f8c devl_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x530fbdd3 ata_scsi_slave_config +EXPORT_SYMBOL_GPL vmlinux 0x5315bbf3 trace_array_init_printk +EXPORT_SYMBOL_GPL vmlinux 0x531d94d4 fwnode_connection_find_match +EXPORT_SYMBOL_GPL vmlinux 0x53261f62 dma_vunmap_noncontiguous +EXPORT_SYMBOL_GPL vmlinux 0x532b5f44 fscrypt_file_open +EXPORT_SYMBOL_GPL vmlinux 0x532b90b5 kprobe_event_cmd_init +EXPORT_SYMBOL_GPL vmlinux 0x5330f6b7 devl_region_create +EXPORT_SYMBOL_GPL vmlinux 0x533f8765 dev_pm_set_dedicated_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x5358864e devlink_fmsg_binary_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x5388b1a0 amd_get_dr_addr_mask +EXPORT_SYMBOL_GPL vmlinux 0x538d073d phy_duplex_to_str +EXPORT_SYMBOL_GPL vmlinux 0x539932b0 vcap_addr_keysets +EXPORT_SYMBOL_GPL vmlinux 0x539c0608 fscrypt_show_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0x539ceb4f regulator_get_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x539f157b pci_xen_swiotlb_init_late +EXPORT_SYMBOL_GPL vmlinux 0x53a156b7 cpufreq_table_index_unsorted +EXPORT_SYMBOL_GPL vmlinux 0x53a7b66e rio_request_mport_dma +EXPORT_SYMBOL_GPL vmlinux 0x53ae540a xhci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x53c089f5 property_entries_dup +EXPORT_SYMBOL_GPL vmlinux 0x53c57dd3 hrtimer_init_sleeper +EXPORT_SYMBOL_GPL vmlinux 0x53d7c01e __traceiter_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x53de2f6d spi_bus_unlock +EXPORT_SYMBOL_GPL vmlinux 0x53e03584 usb_get_phy +EXPORT_SYMBOL_GPL vmlinux 0x53e18463 fsnotify_find_mark +EXPORT_SYMBOL_GPL vmlinux 0x53e59cb1 dev_pm_qos_update_request +EXPORT_SYMBOL_GPL vmlinux 0x53e5b459 ata_wait_register +EXPORT_SYMBOL_GPL vmlinux 0x53f0d30e fuse_conn_init +EXPORT_SYMBOL_GPL vmlinux 0x540d3902 __rio_local_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0x541b58bc __SCK__tp_func_ata_exec_command +EXPORT_SYMBOL_GPL vmlinux 0x541bd60a irq_work_run +EXPORT_SYMBOL_GPL vmlinux 0x54215db5 visitor64 +EXPORT_SYMBOL_GPL vmlinux 0x543e8a2f spi_write_then_read +EXPORT_SYMBOL_GPL vmlinux 0x5440ca1c devm_hte_request_ts_ns +EXPORT_SYMBOL_GPL vmlinux 0x54436a5d l3mdev_fib_table_rcu +EXPORT_SYMBOL_GPL vmlinux 0x5462caee gpiod_set_debounce +EXPORT_SYMBOL_GPL vmlinux 0x54651f9b rhashtable_walk_next +EXPORT_SYMBOL_GPL vmlinux 0x5465429c percpu_up_write +EXPORT_SYMBOL_GPL vmlinux 0x5486ac60 edac_pci_add_device +EXPORT_SYMBOL_GPL vmlinux 0x549525ef handle_nested_irq +EXPORT_SYMBOL_GPL vmlinux 0x54b16b05 component_compare_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x54b519cf devl_param_driverinit_value_get +EXPORT_SYMBOL_GPL vmlinux 0x54c09b23 genphy_c45_read_lpa +EXPORT_SYMBOL_GPL vmlinux 0x54df3624 __pneigh_lookup +EXPORT_SYMBOL_GPL vmlinux 0x54f01d1e debugfs_create_x32 +EXPORT_SYMBOL_GPL vmlinux 0x54f0ae03 iommu_group_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x54f3d2e7 thermal_zone_device_disable +EXPORT_SYMBOL_GPL vmlinux 0x54f74f6a fscrypt_ioctl_add_key +EXPORT_SYMBOL_GPL vmlinux 0x54fa21ed gpiochip_irq_map +EXPORT_SYMBOL_GPL vmlinux 0x54fdebd9 __tracepoint_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x55036eb1 thermal_zone_get_num_trips +EXPORT_SYMBOL_GPL vmlinux 0x550ce709 pat_enabled +EXPORT_SYMBOL_GPL vmlinux 0x550f3e05 i2c_freq_mode_string +EXPORT_SYMBOL_GPL vmlinux 0x5510a93b __scsi_init_queue +EXPORT_SYMBOL_GPL vmlinux 0x551b1716 __tracepoint_sk_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x55339365 flush_delayed_fput +EXPORT_SYMBOL_GPL vmlinux 0x553b49a4 cpufreq_get_driver_data +EXPORT_SYMBOL_GPL vmlinux 0x553b8b19 pci_assign_unassigned_bridge_resources +EXPORT_SYMBOL_GPL vmlinux 0x55417264 unregister_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0x554626cd __SCK__tp_func_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x555a5e28 sock_map_destroy +EXPORT_SYMBOL_GPL vmlinux 0x556e4390 clk_get_rate +EXPORT_SYMBOL_GPL vmlinux 0x557187d4 fwnode_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x55743c86 phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x55784228 regmap_irq_get_virq +EXPORT_SYMBOL_GPL vmlinux 0x557966ff of_icc_get_from_provider +EXPORT_SYMBOL_GPL vmlinux 0x5586d09c dma_free_noncontiguous +EXPORT_SYMBOL_GPL vmlinux 0x55a1ff28 __SCK__tp_func_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x55b24dd5 crypto_clone_shash +EXPORT_SYMBOL_GPL vmlinux 0x55c76a23 ksys_sync_helper +EXPORT_SYMBOL_GPL vmlinux 0x55ccf0ef inet_bhash2_update_saddr +EXPORT_SYMBOL_GPL vmlinux 0x55cd739b sata_lpm_ignore_phy_events +EXPORT_SYMBOL_GPL vmlinux 0x55cf42dd dev_pm_opp_get_required_pstate +EXPORT_SYMBOL_GPL vmlinux 0x55d6468e ftrace_ops_set_global_filter +EXPORT_SYMBOL_GPL vmlinux 0x55dbdf1a sk_msg_clone +EXPORT_SYMBOL_GPL vmlinux 0x55dfcf18 perf_pmu_migrate_context +EXPORT_SYMBOL_GPL vmlinux 0x55eecff4 bit_wait_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x56054c05 crypto_it_tab +EXPORT_SYMBOL_GPL vmlinux 0x56173654 pcap_set_ts_bits +EXPORT_SYMBOL_GPL vmlinux 0x561f0fb6 tcp_rate_check_app_limited +EXPORT_SYMBOL_GPL vmlinux 0x5624f826 power_supply_notifier +EXPORT_SYMBOL_GPL vmlinux 0x56256e8a orderly_poweroff +EXPORT_SYMBOL_GPL vmlinux 0x56310925 regulator_mode_to_status +EXPORT_SYMBOL_GPL vmlinux 0x56337c58 usb_autopm_get_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x56398615 mark_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5641485b tty_termios_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x564f3a45 gpiochip_line_is_irq +EXPORT_SYMBOL_GPL vmlinux 0x5675a73b __pm_runtime_idle +EXPORT_SYMBOL_GPL vmlinux 0x56780a05 pci_assign_unassigned_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0x568f5cbe pm_genpd_remove +EXPORT_SYMBOL_GPL vmlinux 0x5692863f extcon_unregister_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0x56948896 spec_ctrl_current +EXPORT_SYMBOL_GPL vmlinux 0x56afd673 usb_control_msg +EXPORT_SYMBOL_GPL vmlinux 0x56c4af01 lp8788_read_byte +EXPORT_SYMBOL_GPL vmlinux 0x56c80894 dev_coredumpm +EXPORT_SYMBOL_GPL vmlinux 0x56dc1402 inet_send_prepare +EXPORT_SYMBOL_GPL vmlinux 0x56faa02d nfs42_ssc_register +EXPORT_SYMBOL_GPL vmlinux 0x56fbb130 no_hash_pointers +EXPORT_SYMBOL_GPL vmlinux 0x5703b552 blk_mq_freeze_queue +EXPORT_SYMBOL_GPL vmlinux 0x571bad35 get_net_ns_by_fd +EXPORT_SYMBOL_GPL vmlinux 0x57286d74 sysfs_merge_group +EXPORT_SYMBOL_GPL vmlinux 0x572c5c1b usb_find_alt_setting +EXPORT_SYMBOL_GPL vmlinux 0x573496bf crypto_alloc_ahash +EXPORT_SYMBOL_GPL vmlinux 0x574609c5 apei_exec_write_register_value +EXPORT_SYMBOL_GPL vmlinux 0x57476529 bgpio_init +EXPORT_SYMBOL_GPL vmlinux 0x57515d3b tpm_get_random +EXPORT_SYMBOL_GPL vmlinux 0x575afc28 fsstack_copy_attr_all +EXPORT_SYMBOL_GPL vmlinux 0x576a4dbc hwpoison_filter +EXPORT_SYMBOL_GPL vmlinux 0x576bf9c9 fuse_free_conn +EXPORT_SYMBOL_GPL vmlinux 0x576f6f8c class_compat_create_link +EXPORT_SYMBOL_GPL vmlinux 0x57719632 gnttab_grant_foreign_access +EXPORT_SYMBOL_GPL vmlinux 0x577de28e xenbus_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x5780a2f5 is_skb_forwardable +EXPORT_SYMBOL_GPL vmlinux 0x57839e6b pciserial_init_ports +EXPORT_SYMBOL_GPL vmlinux 0x57861a5c gds_ucode_mitigated +EXPORT_SYMBOL_GPL vmlinux 0x57882277 regmap_get_device +EXPORT_SYMBOL_GPL vmlinux 0x578ebf4d blk_mq_start_stopped_hw_queue +EXPORT_SYMBOL_GPL vmlinux 0x578eeb4d hugetlb_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x5790e7a0 pci_unlock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0x5799d886 wm8350_gpio_config +EXPORT_SYMBOL_GPL vmlinux 0x579e0bf5 rtnl_unregister_all +EXPORT_SYMBOL_GPL vmlinux 0x57b88982 devm_regulator_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x57cb9c95 agp_remove_bridge +EXPORT_SYMBOL_GPL vmlinux 0x57cc16b3 __clk_mux_determine_rate_closest +EXPORT_SYMBOL_GPL vmlinux 0x57cfbc2d blk_mq_queue_inflight +EXPORT_SYMBOL_GPL vmlinux 0x57cfee22 device_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x57d4050a xhci_get_endpoint_index +EXPORT_SYMBOL_GPL vmlinux 0x57d5471f pinctrl_utils_add_map_mux +EXPORT_SYMBOL_GPL vmlinux 0x57dc4851 mas_erase +EXPORT_SYMBOL_GPL vmlinux 0x57df67ce wakeup_source_register +EXPORT_SYMBOL_GPL vmlinux 0x57e9486d __cpuhp_state_add_instance +EXPORT_SYMBOL_GPL vmlinux 0x57e94da7 pinctrl_utils_reserve_map +EXPORT_SYMBOL_GPL vmlinux 0x57f576b9 mpi_ec_curve_point +EXPORT_SYMBOL_GPL vmlinux 0x57fa4e3a ip_build_and_send_pkt +EXPORT_SYMBOL_GPL vmlinux 0x5808ba4f devl_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x580ed761 check_move_unevictable_folios +EXPORT_SYMBOL_GPL vmlinux 0x5815a77b __tracepoint_sched_util_est_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x581eada8 device_find_child +EXPORT_SYMBOL_GPL vmlinux 0x58232d78 synth_event_trace_end +EXPORT_SYMBOL_GPL vmlinux 0x58276f93 cper_next_record_id +EXPORT_SYMBOL_GPL vmlinux 0x5829e979 mas_pause +EXPORT_SYMBOL_GPL vmlinux 0x5831e062 cpus_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0x583435c9 devlink_dpipe_entry_ctx_prepare +EXPORT_SYMBOL_GPL vmlinux 0x583aa9a3 __regmap_init_mmio_clk +EXPORT_SYMBOL_GPL vmlinux 0x585821e5 devm_pinctrl_put +EXPORT_SYMBOL_GPL vmlinux 0x5867432b adp5520_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x586a5cd0 regulator_get_current_limit +EXPORT_SYMBOL_GPL vmlinux 0x586b3ba9 bpf_trace_run11 +EXPORT_SYMBOL_GPL vmlinux 0x586bfc8a alarm_restart +EXPORT_SYMBOL_GPL vmlinux 0x58712ef9 device_set_of_node_from_dev +EXPORT_SYMBOL_GPL vmlinux 0x5879a27d sfp_get_module_info +EXPORT_SYMBOL_GPL vmlinux 0x589362ac pci_epc_mem_alloc_addr +EXPORT_SYMBOL_GPL vmlinux 0x5896c82b nvme_auth_init_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x58a2fcaa __SCT__tp_func_udp_fail_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0x58a5ca8d switchdev_handle_fdb_event_to_device +EXPORT_SYMBOL_GPL vmlinux 0x58b39ff3 iommu_alloc_resv_region +EXPORT_SYMBOL_GPL vmlinux 0x58b9282f dev_pm_qos_update_user_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0x58c61f31 ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0x58cd4490 fscrypt_mergeable_bio +EXPORT_SYMBOL_GPL vmlinux 0x58d6311d trace_clock +EXPORT_SYMBOL_GPL vmlinux 0x58db1176 ata_xfer_mode2shift +EXPORT_SYMBOL_GPL vmlinux 0x58def6ca sfp_module_remove +EXPORT_SYMBOL_GPL vmlinux 0x58e5020b crypto_register_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x58eb7e43 crypto_wait_for_test +EXPORT_SYMBOL_GPL vmlinux 0x58f80916 blk_mq_alloc_request_hctx +EXPORT_SYMBOL_GPL vmlinux 0x5906d9b3 get_task_mm +EXPORT_SYMBOL_GPL vmlinux 0x5911b138 device_link_remove +EXPORT_SYMBOL_GPL vmlinux 0x592339d1 bdev_disk_changed +EXPORT_SYMBOL_GPL vmlinux 0x592924b8 dev_pm_opp_find_level_ceil +EXPORT_SYMBOL_GPL vmlinux 0x5932e363 tcp_unregister_ulp +EXPORT_SYMBOL_GPL vmlinux 0x5949bc4b alloc_memory_type +EXPORT_SYMBOL_GPL vmlinux 0x5957cddb zs_lookup_class_index +EXPORT_SYMBOL_GPL vmlinux 0x595a9ddb register_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x5963c54d dmaengine_desc_get_metadata_ptr +EXPORT_SYMBOL_GPL vmlinux 0x5975aa86 pci_set_pcie_reset_state +EXPORT_SYMBOL_GPL vmlinux 0x5986d190 kdb_printf +EXPORT_SYMBOL_GPL vmlinux 0x59a1748f crypto_rng_reset +EXPORT_SYMBOL_GPL vmlinux 0x59b02936 spi_take_timestamp_pre +EXPORT_SYMBOL_GPL vmlinux 0x59b063ba start_poll_synchronize_rcu_expedited_full +EXPORT_SYMBOL_GPL vmlinux 0x59b2adbf input_ff_effect_from_user +EXPORT_SYMBOL_GPL vmlinux 0x59b7a784 perf_event_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x59c43dc9 __traceiter_non_standard_event +EXPORT_SYMBOL_GPL vmlinux 0x59d11fbd fwnode_get_next_available_child_node +EXPORT_SYMBOL_GPL vmlinux 0x59d94371 device_find_child_by_name +EXPORT_SYMBOL_GPL vmlinux 0x59e58cc0 pci_msix_can_alloc_dyn +EXPORT_SYMBOL_GPL vmlinux 0x59e688b6 rdev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0x59edfeb8 phy_rate_matching_to_str +EXPORT_SYMBOL_GPL vmlinux 0x59f13cc5 nfs_ssc_register +EXPORT_SYMBOL_GPL vmlinux 0x59f32720 mpi_subm +EXPORT_SYMBOL_GPL vmlinux 0x59f8b7c6 ms_hyperv +EXPORT_SYMBOL_GPL vmlinux 0x5a058909 iommu_attach_group +EXPORT_SYMBOL_GPL vmlinux 0x5a128008 xenbus_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0x5a1d134a rcu_momentary_dyntick_idle +EXPORT_SYMBOL_GPL vmlinux 0x5a229368 arch_apei_enable_cmcff +EXPORT_SYMBOL_GPL vmlinux 0x5a29ef06 pci_d3cold_disable +EXPORT_SYMBOL_GPL vmlinux 0x5a2f3611 __mnt_is_readonly +EXPORT_SYMBOL_GPL vmlinux 0x5a33c527 nvdimm_to_bus +EXPORT_SYMBOL_GPL vmlinux 0x5a3d4937 dma_alloc_noncontiguous +EXPORT_SYMBOL_GPL vmlinux 0x5a48b521 ip6_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x5a49dbc9 timerqueue_del +EXPORT_SYMBOL_GPL vmlinux 0x5a549889 driver_register +EXPORT_SYMBOL_GPL vmlinux 0x5a6cdb52 nf_ct_zone_dflt +EXPORT_SYMBOL_GPL vmlinux 0x5a709649 clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0x5a79b4a8 pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0x5a7bfe41 crypto_probing_notify +EXPORT_SYMBOL_GPL vmlinux 0x5a831321 crypto_unregister_ahash +EXPORT_SYMBOL_GPL vmlinux 0x5a943a6c __traceiter_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x5a959c1d ata_host_resume +EXPORT_SYMBOL_GPL vmlinux 0x5aa70984 acpi_reduced_hardware +EXPORT_SYMBOL_GPL vmlinux 0x5aa7e106 watchdog_init_timeout +EXPORT_SYMBOL_GPL vmlinux 0x5aa95a0d __blkg_prfill_u64 +EXPORT_SYMBOL_GPL vmlinux 0x5ab09745 edac_get_owner +EXPORT_SYMBOL_GPL vmlinux 0x5ac50b37 nop_posix_acl_default +EXPORT_SYMBOL_GPL vmlinux 0x5ac98b0d ipv6_dup_options +EXPORT_SYMBOL_GPL vmlinux 0x5acb63e9 sk_set_peek_off +EXPORT_SYMBOL_GPL vmlinux 0x5ad23929 ata_port_abort +EXPORT_SYMBOL_GPL vmlinux 0x5ad28181 iommu_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5ad34e24 xfrm_dev_policy_add +EXPORT_SYMBOL_GPL vmlinux 0x5ad66cb8 phy_put +EXPORT_SYMBOL_GPL vmlinux 0x5ad6a5f2 dm_table_device_name +EXPORT_SYMBOL_GPL vmlinux 0x5ad79bf1 sdio_retune_crc_disable +EXPORT_SYMBOL_GPL vmlinux 0x5ae87af8 nvdimm_cmd_mask +EXPORT_SYMBOL_GPL vmlinux 0x5aea78a9 devlink_port_type_ib_set +EXPORT_SYMBOL_GPL vmlinux 0x5b11b9fa ohci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0x5b15377d blk_mq_flush_busy_ctxs +EXPORT_SYMBOL_GPL vmlinux 0x5b21ceff ring_buffer_iter_peek +EXPORT_SYMBOL_GPL vmlinux 0x5b2db853 simple_attr_write_signed +EXPORT_SYMBOL_GPL vmlinux 0x5b30e25c vhost_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x5b3ac8f6 __sock_recv_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x5b3bf119 pci_epc_mem_init +EXPORT_SYMBOL_GPL vmlinux 0x5b49311d xfrm_dev_state_add +EXPORT_SYMBOL_GPL vmlinux 0x5b63710a set_cpus_allowed_ptr +EXPORT_SYMBOL_GPL vmlinux 0x5b6ef413 net_ns_type_operations +EXPORT_SYMBOL_GPL vmlinux 0x5b87d8a4 regulator_suspend_enable +EXPORT_SYMBOL_GPL vmlinux 0x5b8de299 regmap_read +EXPORT_SYMBOL_GPL vmlinux 0x5b916039 devl_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0x5b9fb90a max8997_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0x5ba55b4d usb_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0x5ba8fa91 virtqueue_enable_cb_prepare +EXPORT_SYMBOL_GPL vmlinux 0x5ba9c87f blk_crypto_keyslot_index +EXPORT_SYMBOL_GPL vmlinux 0x5bbdc84a fat_sync_inode +EXPORT_SYMBOL_GPL vmlinux 0x5bc55a2c badblocks_exit +EXPORT_SYMBOL_GPL vmlinux 0x5bc63adc irq_chip_mask_parent +EXPORT_SYMBOL_GPL vmlinux 0x5bc950fe regulator_irq_helper_cancel +EXPORT_SYMBOL_GPL vmlinux 0x5bcc0df7 ata_dev_classify +EXPORT_SYMBOL_GPL vmlinux 0x5bd0748f crypto_del_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x5bd996b0 blk_set_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x5bdae35b usb_phy_roothub_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x5bdbac4e rcu_unexpedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x5bf1598c call_hid_bpf_rdesc_fixup +EXPORT_SYMBOL_GPL vmlinux 0x5bf5164f ata_bmdma_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x5c02f3d0 rtc_set_alarm +EXPORT_SYMBOL_GPL vmlinux 0x5c070f62 cper_mem_err_status_str +EXPORT_SYMBOL_GPL vmlinux 0x5c0c165e __SCT__tp_func_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0x5c167c4f regulator_is_equal +EXPORT_SYMBOL_GPL vmlinux 0x5c18b283 usb_root_hub_lost_power +EXPORT_SYMBOL_GPL vmlinux 0x5c1afc67 vmf_insert_pfn_pud +EXPORT_SYMBOL_GPL vmlinux 0x5c1c6b8e edac_device_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x5c1d947b adp5520_read +EXPORT_SYMBOL_GPL vmlinux 0x5c2c5ae9 __crypto_alloc_tfmgfp +EXPORT_SYMBOL_GPL vmlinux 0x5c309e65 hibernate_quiet_exec +EXPORT_SYMBOL_GPL vmlinux 0x5c334bc1 sock_map_close +EXPORT_SYMBOL_GPL vmlinux 0x5c3408c4 fuse_abort_conn +EXPORT_SYMBOL_GPL vmlinux 0x5c377ad1 device_link_add +EXPORT_SYMBOL_GPL vmlinux 0x5c402341 __traceiter_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x5c48be39 fat_search_long +EXPORT_SYMBOL_GPL vmlinux 0x5c5a1b16 tick_broadcast_control +EXPORT_SYMBOL_GPL vmlinux 0x5c5da2a3 virtqueue_get_vring +EXPORT_SYMBOL_GPL vmlinux 0x5c648a51 sdev_evt_send +EXPORT_SYMBOL_GPL vmlinux 0x5c67262f debugfs_rename +EXPORT_SYMBOL_GPL vmlinux 0x5c6d39b1 spi_mem_dirmap_read +EXPORT_SYMBOL_GPL vmlinux 0x5c74b41d public_key_signature_free +EXPORT_SYMBOL_GPL vmlinux 0x5c77af9a cpufreq_freq_attr_scaling_boost_freqs +EXPORT_SYMBOL_GPL vmlinux 0x5c9e896d dev_attr_em_message +EXPORT_SYMBOL_GPL vmlinux 0x5ca4c2ee sfp_bus_add_upstream +EXPORT_SYMBOL_GPL vmlinux 0x5cab9945 unregister_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0x5cad8fc3 power_supply_ocv2cap_simple +EXPORT_SYMBOL_GPL vmlinux 0x5cbab7a7 vfs_inode_has_locks +EXPORT_SYMBOL_GPL vmlinux 0x5cc77c45 led_colors +EXPORT_SYMBOL_GPL vmlinux 0x5cd2cfb8 __clk_mux_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0x5cdd6425 fwnode_device_is_available +EXPORT_SYMBOL_GPL vmlinux 0x5cead98f __xenbus_register_frontend +EXPORT_SYMBOL_GPL vmlinux 0x5ceb79dc inet_unhash +EXPORT_SYMBOL_GPL vmlinux 0x5cede0a7 xdp_flush_frame_bulk +EXPORT_SYMBOL_GPL vmlinux 0x5d0113e0 x86_pred_cmd +EXPORT_SYMBOL_GPL vmlinux 0x5d0eb570 __tracepoint_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x5d17148b apei_write +EXPORT_SYMBOL_GPL vmlinux 0x5d1b85a3 netdev_is_rx_handler_busy +EXPORT_SYMBOL_GPL vmlinux 0x5d22a13f __tracepoint_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x5d27dd41 regulator_get_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x5d2aa5fb rhashtable_walk_peek +EXPORT_SYMBOL_GPL vmlinux 0x5d2bc42a reset_control_rearm +EXPORT_SYMBOL_GPL vmlinux 0x5d2e9204 dev_pm_qos_add_ancestor_request +EXPORT_SYMBOL_GPL vmlinux 0x5d377b2b snp_issue_guest_request +EXPORT_SYMBOL_GPL vmlinux 0x5d4febec dev_queue_xmit_nit +EXPORT_SYMBOL_GPL vmlinux 0x5d61354a crypto_lookup_template +EXPORT_SYMBOL_GPL vmlinux 0x5d61e7fe init_dummy_netdev +EXPORT_SYMBOL_GPL vmlinux 0x5d7705fb mddev_init_writes_pending +EXPORT_SYMBOL_GPL vmlinux 0x5d7aac87 rio_unlock_device +EXPORT_SYMBOL_GPL vmlinux 0x5d7e039e sysfs_groups_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x5d8476d3 bpf_sk_storage_diag_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5d9317d7 uv_teardown_irq +EXPORT_SYMBOL_GPL vmlinux 0x5da67adc zs_compact +EXPORT_SYMBOL_GPL vmlinux 0x5da955ae ptp_msg_is_sync +EXPORT_SYMBOL_GPL vmlinux 0x5dab53cb clk_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0x5dad702d dev_coredumpv +EXPORT_SYMBOL_GPL vmlinux 0x5dbcfa4f boot_cpu_physical_apicid +EXPORT_SYMBOL_GPL vmlinux 0x5dbe82dc rio_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x5dc9bb48 xdp_return_buff +EXPORT_SYMBOL_GPL vmlinux 0x5dd86fa2 register_ftrace_function +EXPORT_SYMBOL_GPL vmlinux 0x5df496da xen_xlate_remap_gfn_array +EXPORT_SYMBOL_GPL vmlinux 0x5dfb17e1 __inet_inherit_port +EXPORT_SYMBOL_GPL vmlinux 0x5dfe8390 ata_sff_port_intr +EXPORT_SYMBOL_GPL vmlinux 0x5e025e4b __tracepoint_console +EXPORT_SYMBOL_GPL vmlinux 0x5e0e44b5 phy_get +EXPORT_SYMBOL_GPL vmlinux 0x5e0fbc75 usb_intf_get_dma_device +EXPORT_SYMBOL_GPL vmlinux 0x5e1528f7 nfs_ssc_client_tbl +EXPORT_SYMBOL_GPL vmlinux 0x5e173309 cpu_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x5e1eb7ba dev_pm_opp_get_freq +EXPORT_SYMBOL_GPL vmlinux 0x5e4431d0 transport_setup_device +EXPORT_SYMBOL_GPL vmlinux 0x5e4d2336 pci_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x5e504b7d device_create_managed_software_node +EXPORT_SYMBOL_GPL vmlinux 0x5e515be6 ktime_get_ts64 +EXPORT_SYMBOL_GPL vmlinux 0x5e628375 ata_bmdma_stop +EXPORT_SYMBOL_GPL vmlinux 0x5e67524e __dev_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x5e74301c icc_node_create +EXPORT_SYMBOL_GPL vmlinux 0x5e7520ae proc_get_parent_data +EXPORT_SYMBOL_GPL vmlinux 0x5e777dfc thermal_acpi_active_trip_temp +EXPORT_SYMBOL_GPL vmlinux 0x5e798ffb divider_get_val +EXPORT_SYMBOL_GPL vmlinux 0x5e7a5134 pci_enable_pasid +EXPORT_SYMBOL_GPL vmlinux 0x5e7bb517 lwtunnel_get_encap_size +EXPORT_SYMBOL_GPL vmlinux 0x5e7f1780 ohci_setup +EXPORT_SYMBOL_GPL vmlinux 0x5e85415b ring_buffer_consume +EXPORT_SYMBOL_GPL vmlinux 0x5e8728ee attribute_container_classdev_to_container +EXPORT_SYMBOL_GPL vmlinux 0x5e9576a3 gpiod_export +EXPORT_SYMBOL_GPL vmlinux 0x5e967c81 __traceiter_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0x5ea7fe2b xen_find_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0x5eae5408 clk_is_enabled_when_prepared +EXPORT_SYMBOL_GPL vmlinux 0x5eaf6db6 __udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x5eb43d89 thermal_zone_device_register_with_trips +EXPORT_SYMBOL_GPL vmlinux 0x5ebe0b3c folio_wait_writeback_killable +EXPORT_SYMBOL_GPL vmlinux 0x5ecbd692 blk_mq_pci_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x5ecf355c compat_only_sysfs_link_entry_to_kobj +EXPORT_SYMBOL_GPL vmlinux 0x5ee2aa12 list_lru_count_node +EXPORT_SYMBOL_GPL vmlinux 0x5ef175e6 clk_gate_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x5eff1a45 dev_pm_genpd_set_next_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x5f0c6d2d serial8250_do_set_mctrl +EXPORT_SYMBOL_GPL vmlinux 0x5f23e3fa insert_resource +EXPORT_SYMBOL_GPL vmlinux 0x5f2da8c4 check_tsc_unstable +EXPORT_SYMBOL_GPL vmlinux 0x5f2fcc83 ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x5f384a68 x509_free_certificate +EXPORT_SYMBOL_GPL vmlinux 0x5f41fb21 tpm2_flush_context +EXPORT_SYMBOL_GPL vmlinux 0x5f44f672 devres_get +EXPORT_SYMBOL_GPL vmlinux 0x5f5ef8cb devm_regmap_field_bulk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x5f6f1e9e dax_get_private +EXPORT_SYMBOL_GPL vmlinux 0x5f790628 handle_level_irq +EXPORT_SYMBOL_GPL vmlinux 0x5f7e68f5 xen_remap_pfn +EXPORT_SYMBOL_GPL vmlinux 0x5f8604b6 __SCK__tp_func_arm_event +EXPORT_SYMBOL_GPL vmlinux 0x5f922dc6 unregister_wide_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0x5f9e6a01 ethnl_cable_test_result +EXPORT_SYMBOL_GPL vmlinux 0x5fa2f47f driver_create_file +EXPORT_SYMBOL_GPL vmlinux 0x5fa625ed mpi_ec_mul_point +EXPORT_SYMBOL_GPL vmlinux 0x5fab8169 bus_rescan_devices +EXPORT_SYMBOL_GPL vmlinux 0x5fb8d170 vring_del_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x5fd26c47 fwnode_property_read_u8_array +EXPORT_SYMBOL_GPL vmlinux 0x5fd274c5 extcon_get_property_capability +EXPORT_SYMBOL_GPL vmlinux 0x5fdf7b32 smca_get_bank_type +EXPORT_SYMBOL_GPL vmlinux 0x5fdfa2c1 amd_pmu_enable_virt +EXPORT_SYMBOL_GPL vmlinux 0x5fe71088 msg_zerocopy_put_abort +EXPORT_SYMBOL_GPL vmlinux 0x5fe8100d tty_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x5ff4d538 perf_restore_debug_store +EXPORT_SYMBOL_GPL vmlinux 0x5ff7f38e fpu_update_guest_xfd +EXPORT_SYMBOL_GPL vmlinux 0x5ffbdb8c generic_handle_domain_irq +EXPORT_SYMBOL_GPL vmlinux 0x6007793d fwnode_get_nth_parent +EXPORT_SYMBOL_GPL vmlinux 0x60091316 clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x601527a7 pci_pr3_present +EXPORT_SYMBOL_GPL vmlinux 0x60245576 ethtool_dev_mm_supported +EXPORT_SYMBOL_GPL vmlinux 0x60300fa4 blkcg_punt_bio_submit +EXPORT_SYMBOL_GPL vmlinux 0x603d0d51 acpi_os_map_iomem +EXPORT_SYMBOL_GPL vmlinux 0x604722fd devices_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x604f793d __traceiter_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0x6052a097 elv_rqhash_add +EXPORT_SYMBOL_GPL vmlinux 0x605420a2 usb_alloc_dev +EXPORT_SYMBOL_GPL vmlinux 0x605ea6a5 dw_pcie_upconfig_setup +EXPORT_SYMBOL_GPL vmlinux 0x606779ef phy_driver_is_genphy +EXPORT_SYMBOL_GPL vmlinux 0x606a9148 fscrypt_prepare_lookup_partial +EXPORT_SYMBOL_GPL vmlinux 0x606b4aba devlink_linecard_provision_set +EXPORT_SYMBOL_GPL vmlinux 0x607807eb ohci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x607c4683 devlink_info_version_fixed_put +EXPORT_SYMBOL_GPL vmlinux 0x607f5541 crypto_grab_akcipher +EXPORT_SYMBOL_GPL vmlinux 0x608c7432 intel_cpu_collect_info +EXPORT_SYMBOL_GPL vmlinux 0x608cd72e bdev_discard_alignment +EXPORT_SYMBOL_GPL vmlinux 0x608d25d6 __xas_prev +EXPORT_SYMBOL_GPL vmlinux 0x6091797f synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x6097451c sdio_memcpy_fromio +EXPORT_SYMBOL_GPL vmlinux 0x609d62ab blk_queue_rq_timeout +EXPORT_SYMBOL_GPL vmlinux 0x60a13e90 rcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0x60a72351 watchdog_register_device +EXPORT_SYMBOL_GPL vmlinux 0x60ae0922 power_supply_vbat2ri +EXPORT_SYMBOL_GPL vmlinux 0x60b86c98 cpufreq_dbs_governor_stop +EXPORT_SYMBOL_GPL vmlinux 0x60c15edd icc_link_create +EXPORT_SYMBOL_GPL vmlinux 0x60c616d3 devm_clk_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x60c7a051 transport_add_device +EXPORT_SYMBOL_GPL vmlinux 0x60d26dba noop_backing_dev_info +EXPORT_SYMBOL_GPL vmlinux 0x60dc3a0b sata_pmp_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x60eb6c0e relay_subbufs_consumed +EXPORT_SYMBOL_GPL vmlinux 0x60ebc96f ring_buffer_read_prepare +EXPORT_SYMBOL_GPL vmlinux 0x60f4bcfa fwnode_graph_get_endpoint_by_id +EXPORT_SYMBOL_GPL vmlinux 0x61104e16 sk_msg_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0x611cfa85 klist_add_tail +EXPORT_SYMBOL_GPL vmlinux 0x611f88a3 __platform_create_bundle +EXPORT_SYMBOL_GPL vmlinux 0x6127bbd4 __devm_rtc_register_device +EXPORT_SYMBOL_GPL vmlinux 0x6129fb93 sfp_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0x612b01f4 devlink_linecard_nested_dl_set +EXPORT_SYMBOL_GPL vmlinux 0x612bfd89 errno_to_blk_status +EXPORT_SYMBOL_GPL vmlinux 0x6134ebaf debugfs_create_x16 +EXPORT_SYMBOL_GPL vmlinux 0x613d1f8a usb_get_maximum_speed +EXPORT_SYMBOL_GPL vmlinux 0x613f66c3 serial8250_request_dma +EXPORT_SYMBOL_GPL vmlinux 0x6151a830 max8997_read_reg +EXPORT_SYMBOL_GPL vmlinux 0x61547d2a synth_event_create +EXPORT_SYMBOL_GPL vmlinux 0x615e0215 crypto_shash_digest +EXPORT_SYMBOL_GPL vmlinux 0x61614ee5 inode_dax +EXPORT_SYMBOL_GPL vmlinux 0x61639b5c sata_async_notification +EXPORT_SYMBOL_GPL vmlinux 0x616df050 dm_start_time_ns_from_clone +EXPORT_SYMBOL_GPL vmlinux 0x616faffe msi_lock_descs +EXPORT_SYMBOL_GPL vmlinux 0x617a76de devm_devfreq_event_add_edev +EXPORT_SYMBOL_GPL vmlinux 0x6181e79f timerqueue_add +EXPORT_SYMBOL_GPL vmlinux 0x6184de44 dev_pm_opp_set_config +EXPORT_SYMBOL_GPL vmlinux 0x619375dd ata_qc_complete_multiple +EXPORT_SYMBOL_GPL vmlinux 0x6198dfea __ring_buffer_alloc +EXPORT_SYMBOL_GPL vmlinux 0x6199ad5d crypto_has_skcipher +EXPORT_SYMBOL_GPL vmlinux 0x61a27b50 scsi_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x61a8da43 call_switchdev_blocking_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x61aff4d1 fat_attach +EXPORT_SYMBOL_GPL vmlinux 0x61b443f8 x86_spec_ctrl_current +EXPORT_SYMBOL_GPL vmlinux 0x61b5abcf usb_wakeup_notification +EXPORT_SYMBOL_GPL vmlinux 0x61bd0bd0 get_completed_synchronize_rcu_full +EXPORT_SYMBOL_GPL vmlinux 0x61d16517 vp_legacy_get_status +EXPORT_SYMBOL_GPL vmlinux 0x61d23e0e gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x61d826c3 pinctrl_force_sleep +EXPORT_SYMBOL_GPL vmlinux 0x61eb1149 acpi_bind_one +EXPORT_SYMBOL_GPL vmlinux 0x61f0d7c6 pinctrl_utils_add_config +EXPORT_SYMBOL_GPL vmlinux 0x61f1644b mas_find_range +EXPORT_SYMBOL_GPL vmlinux 0x61f67c92 phy_gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0x61f9eefe shash_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0x61fdf23f iomap_seek_data +EXPORT_SYMBOL_GPL vmlinux 0x6200112b led_set_brightness_nosleep +EXPORT_SYMBOL_GPL vmlinux 0x6202ba02 device_wakeup_disable +EXPORT_SYMBOL_GPL vmlinux 0x62046e5a lwtunnel_cmp_encap +EXPORT_SYMBOL_GPL vmlinux 0x622108c1 tty_port_tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x622bf38e nfs_ssc_unregister +EXPORT_SYMBOL_GPL vmlinux 0x622c7922 register_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0x62377a7b blk_io_schedule +EXPORT_SYMBOL_GPL vmlinux 0x623c36e8 da903x_reads +EXPORT_SYMBOL_GPL vmlinux 0x6246a629 synchronize_rcu_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0x6246f5c6 iomap_finish_ioends +EXPORT_SYMBOL_GPL vmlinux 0x6257dda7 clk_rate_exclusive_get +EXPORT_SYMBOL_GPL vmlinux 0x6259d291 clk_restore_context +EXPORT_SYMBOL_GPL vmlinux 0x625ce2e5 fb_sys_read +EXPORT_SYMBOL_GPL vmlinux 0x62795ea9 pci_max_pasids +EXPORT_SYMBOL_GPL vmlinux 0x6291987c __SCK__tp_func_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0x6291ee17 regulator_enable_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6298a776 vcap_rule_set_counter +EXPORT_SYMBOL_GPL vmlinux 0x62a1d205 ip6_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0x62a60de9 pci_hp_deregister +EXPORT_SYMBOL_GPL vmlinux 0x62bb09bf clocks_calc_mult_shift +EXPORT_SYMBOL_GPL vmlinux 0x62bda6e7 regulator_set_voltage +EXPORT_SYMBOL_GPL vmlinux 0x62bf1f93 inet6_cleanup_sock +EXPORT_SYMBOL_GPL vmlinux 0x62d93f12 rio_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x62e67e85 device_driver_attach +EXPORT_SYMBOL_GPL vmlinux 0x62e84d95 devm_krealloc +EXPORT_SYMBOL_GPL vmlinux 0x62f6dc39 acomp_request_free +EXPORT_SYMBOL_GPL vmlinux 0x62ff8f8e regulator_list_voltage_pickable_linear_range +EXPORT_SYMBOL_GPL vmlinux 0x63026490 unregister_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x6306d672 tdx_global_keyid +EXPORT_SYMBOL_GPL vmlinux 0x630f9b3e xfrm_put_translator +EXPORT_SYMBOL_GPL vmlinux 0x63150e06 clk_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x63177138 posix_acl_create +EXPORT_SYMBOL_GPL vmlinux 0x631b36e3 blk_mq_freeze_queue_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0x632523ed devfreq_cooling_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63302946 __SCK__tp_func_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0x6336e57a devm_platform_get_and_ioremap_resource +EXPORT_SYMBOL_GPL vmlinux 0x6340434e x86_model +EXPORT_SYMBOL_GPL vmlinux 0x63650d72 blk_crypto_profile_destroy +EXPORT_SYMBOL_GPL vmlinux 0x636751b8 hv_set_non_nested_register +EXPORT_SYMBOL_GPL vmlinux 0x636c2eae irq_set_default_host +EXPORT_SYMBOL_GPL vmlinux 0x637e8a98 wbt_enable_default +EXPORT_SYMBOL_GPL vmlinux 0x637f8ea9 blk_trace_startstop +EXPORT_SYMBOL_GPL vmlinux 0x638a9653 memory_add_physaddr_to_nid +EXPORT_SYMBOL_GPL vmlinux 0x638c75fe uprobe_register +EXPORT_SYMBOL_GPL vmlinux 0x6390cc88 serial8250_update_uartclk +EXPORT_SYMBOL_GPL vmlinux 0x63a3a4ae skb_complete_wifi_ack +EXPORT_SYMBOL_GPL vmlinux 0x63aedfb0 fscrypt_ioctl_remove_key_all_users +EXPORT_SYMBOL_GPL vmlinux 0x63babe2c md_bitmap_resize +EXPORT_SYMBOL_GPL vmlinux 0x63c07b59 powercap_register_zone +EXPORT_SYMBOL_GPL vmlinux 0x63c08029 clk_bulk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0x63ce305e wm8350_clear_bits +EXPORT_SYMBOL_GPL vmlinux 0x63d61ec8 devl_dpipe_headers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x63ea80b3 cper_mem_err_type_str +EXPORT_SYMBOL_GPL vmlinux 0x63ecb0a6 serial8250_rpm_get_tx +EXPORT_SYMBOL_GPL vmlinux 0x63f9b397 sata_std_hardreset +EXPORT_SYMBOL_GPL vmlinux 0x640f2dd5 ata_sff_tf_read +EXPORT_SYMBOL_GPL vmlinux 0x641da353 irq_gc_mask_disable_reg +EXPORT_SYMBOL_GPL vmlinux 0x6425c1d2 phy_create +EXPORT_SYMBOL_GPL vmlinux 0x642e2b2e xdp_do_redirect_frame +EXPORT_SYMBOL_GPL vmlinux 0x6445503d devl_trylock +EXPORT_SYMBOL_GPL vmlinux 0x6447bb30 ata_sff_freeze +EXPORT_SYMBOL_GPL vmlinux 0x64511756 gpiochip_get_desc +EXPORT_SYMBOL_GPL vmlinux 0x6456d570 clk_register_gate +EXPORT_SYMBOL_GPL vmlinux 0x6463b4df vp_modern_set_queue_enable +EXPORT_SYMBOL_GPL vmlinux 0x6482df95 dm_bio_get_target_bio_nr +EXPORT_SYMBOL_GPL vmlinux 0x648dfc82 list_lru_add +EXPORT_SYMBOL_GPL vmlinux 0x648f579f devm_kmalloc +EXPORT_SYMBOL_GPL vmlinux 0x648f59a9 sfp_module_insert +EXPORT_SYMBOL_GPL vmlinux 0x649658ce device_remove_software_node +EXPORT_SYMBOL_GPL vmlinux 0x649d5a58 register_net_sysctl +EXPORT_SYMBOL_GPL vmlinux 0x64a31445 mutex_lock_io +EXPORT_SYMBOL_GPL vmlinux 0x64a62e11 acpi_processor_ffh_cstate_enter +EXPORT_SYMBOL_GPL vmlinux 0x64aaa8bd device_find_any_child +EXPORT_SYMBOL_GPL vmlinux 0x64b2dabb __xenmem_reservation_va_mapping_reset +EXPORT_SYMBOL_GPL vmlinux 0x64b4e99e pm_generic_freeze +EXPORT_SYMBOL_GPL vmlinux 0x64b62862 nvme_wq +EXPORT_SYMBOL_GPL vmlinux 0x64bcbb53 perf_aux_output_end +EXPORT_SYMBOL_GPL vmlinux 0x64c3d46b fscrypt_limit_io_blocks +EXPORT_SYMBOL_GPL vmlinux 0x64c7ef7a devm_reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x64cb79c2 udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0x64d5cc01 driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x64e27c4f synth_event_delete +EXPORT_SYMBOL_GPL vmlinux 0x64f36620 dax_flush +EXPORT_SYMBOL_GPL vmlinux 0x64f7eeeb clk_mux_determine_rate_flags +EXPORT_SYMBOL_GPL vmlinux 0x6502d9c2 xenbus_scanf +EXPORT_SYMBOL_GPL vmlinux 0x65134f9c __tracepoint_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0x65180e8b unregister_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x651872cd blk_mq_virtio_map_queues +EXPORT_SYMBOL_GPL vmlinux 0x651b3023 fat_truncate_time +EXPORT_SYMBOL_GPL vmlinux 0x651d10e5 ktime_get_tai_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x65212f17 blk_mq_free_request +EXPORT_SYMBOL_GPL vmlinux 0x6527a231 dbgp_external_startup +EXPORT_SYMBOL_GPL vmlinux 0x6531a37f mpi_add +EXPORT_SYMBOL_GPL vmlinux 0x6535e3d7 tpm_chip_stop +EXPORT_SYMBOL_GPL vmlinux 0x65525c38 ghes_register_report_chain +EXPORT_SYMBOL_GPL vmlinux 0x65530b9d iommu_attach_device_pasid +EXPORT_SYMBOL_GPL vmlinux 0x65540875 fwnode_get_parent +EXPORT_SYMBOL_GPL vmlinux 0x655e24cf pm_generic_suspend +EXPORT_SYMBOL_GPL vmlinux 0x65614cbc cpufreq_dbs_governor_init +EXPORT_SYMBOL_GPL vmlinux 0x65622e84 vring_new_virtqueue +EXPORT_SYMBOL_GPL vmlinux 0x6562f174 icc_disable +EXPORT_SYMBOL_GPL vmlinux 0x6565514b __SCK__tp_func_ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x656b462c xen_xlate_unmap_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0x65704d22 hv_stimer_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x65acf90c sbitmap_weight +EXPORT_SYMBOL_GPL vmlinux 0x65b29265 ata_sff_qc_issue +EXPORT_SYMBOL_GPL vmlinux 0x65b3e2e0 gnttab_unmap_refs +EXPORT_SYMBOL_GPL vmlinux 0x65ccb6f0 call_netevent_notifiers +EXPORT_SYMBOL_GPL vmlinux 0x65db02b4 nvdimm_pmem_region_create +EXPORT_SYMBOL_GPL vmlinux 0x65e91997 nvdimm_bus_register +EXPORT_SYMBOL_GPL vmlinux 0x65f6ed9e crypto_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x65ff72d5 kernel_file_open +EXPORT_SYMBOL_GPL vmlinux 0x6607a6e2 gnttab_page_cache_shrink +EXPORT_SYMBOL_GPL vmlinux 0x661601de sprint_symbol +EXPORT_SYMBOL_GPL vmlinux 0x6619d264 uhci_reset_hc +EXPORT_SYMBOL_GPL vmlinux 0x661c3009 led_set_brightness_nopm +EXPORT_SYMBOL_GPL vmlinux 0x66207190 __reset_control_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0x6636c3c9 irq_set_vcpu_affinity +EXPORT_SYMBOL_GPL vmlinux 0x663707b8 usb_altnum_to_altsetting +EXPORT_SYMBOL_GPL vmlinux 0x6639fbb7 ata_std_postreset +EXPORT_SYMBOL_GPL vmlinux 0x663b82b4 platform_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x663bb448 devlink_fmsg_obj_nest_end +EXPORT_SYMBOL_GPL vmlinux 0x663fdcce nvdimm_region_notify +EXPORT_SYMBOL_GPL vmlinux 0x66402ea8 vchan_find_desc +EXPORT_SYMBOL_GPL vmlinux 0x664f74d4 gpiod_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x665e92a0 clk_set_duty_cycle +EXPORT_SYMBOL_GPL vmlinux 0x666018de led_put +EXPORT_SYMBOL_GPL vmlinux 0x666b501e dma_get_slave_caps +EXPORT_SYMBOL_GPL vmlinux 0x6672681e inet_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0x668402aa crypto_put_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x668f4886 regmap_get_raw_read_max +EXPORT_SYMBOL_GPL vmlinux 0x66969d76 devlink_sb_register +EXPORT_SYMBOL_GPL vmlinux 0x66b5fd7f perf_event_read_value +EXPORT_SYMBOL_GPL vmlinux 0x66b97421 sfp_link_up +EXPORT_SYMBOL_GPL vmlinux 0x66c49175 clean_acked_data_enable +EXPORT_SYMBOL_GPL vmlinux 0x66cc5839 mmu_interval_notifier_insert_locked +EXPORT_SYMBOL_GPL vmlinux 0x66d87d38 symbol_put_addr +EXPORT_SYMBOL_GPL vmlinux 0x670a719d dw_pcie_ep_raise_msi_irq +EXPORT_SYMBOL_GPL vmlinux 0x670b339c ghes_get_devices +EXPORT_SYMBOL_GPL vmlinux 0x670bedf0 ata_sff_data_xfer32 +EXPORT_SYMBOL_GPL vmlinux 0x6712bdad pm_genpd_add_subdomain +EXPORT_SYMBOL_GPL vmlinux 0x67222739 ata_sff_lost_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x6729d33c phy_validate +EXPORT_SYMBOL_GPL vmlinux 0x67370427 kobject_get_path +EXPORT_SYMBOL_GPL vmlinux 0x6739a503 balloon_set_new_target +EXPORT_SYMBOL_GPL vmlinux 0x674c5bc1 nvme_auth_hmac_name +EXPORT_SYMBOL_GPL vmlinux 0x67575125 __traceiter_br_mdb_full +EXPORT_SYMBOL_GPL vmlinux 0x6759bd00 __SCT__tp_func_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x6765e669 __traceiter_tcp_bad_csum +EXPORT_SYMBOL_GPL vmlinux 0x6772fb6a regulator_set_voltage_sel_regmap +EXPORT_SYMBOL_GPL vmlinux 0x67751b07 iommu_register_device_fault_handler +EXPORT_SYMBOL_GPL vmlinux 0x677c69f1 make_vfsgid +EXPORT_SYMBOL_GPL vmlinux 0x677ff88c xas_store +EXPORT_SYMBOL_GPL vmlinux 0x6790ebd3 mce_is_memory_error +EXPORT_SYMBOL_GPL vmlinux 0x67955ce6 profile_hits +EXPORT_SYMBOL_GPL vmlinux 0x67c3c795 get_state_synchronize_rcu_full +EXPORT_SYMBOL_GPL vmlinux 0x67d9cf8a clk_bulk_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x67da9f7c sha512_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x67dc8e2c max8997_bulk_write +EXPORT_SYMBOL_GPL vmlinux 0x67dcc9f8 ata_sas_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x67dcd76b uv_setup_irq +EXPORT_SYMBOL_GPL vmlinux 0x67de489c devm_of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x67dfd810 platform_get_irq +EXPORT_SYMBOL_GPL vmlinux 0x67fca922 irq_remove_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x680547c0 invalidate_inode_pages2_range +EXPORT_SYMBOL_GPL vmlinux 0x680cde1c usb_lock_device_for_reset +EXPORT_SYMBOL_GPL vmlinux 0x6822de1a firmware_upload_unregister +EXPORT_SYMBOL_GPL vmlinux 0x682ff057 ring_buffer_commit_overrun_cpu +EXPORT_SYMBOL_GPL vmlinux 0x68460527 blkcg_set_fc_appid +EXPORT_SYMBOL_GPL vmlinux 0x687f95f4 wait_on_page_writeback +EXPORT_SYMBOL_GPL vmlinux 0x688cc42b devm_regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x68949543 regmap_write_async +EXPORT_SYMBOL_GPL vmlinux 0x68952493 rcu_note_context_switch +EXPORT_SYMBOL_GPL vmlinux 0x68b3e869 platform_device_put +EXPORT_SYMBOL_GPL vmlinux 0x68b907a4 inet_csk_route_child_sock +EXPORT_SYMBOL_GPL vmlinux 0x68c31372 lwtstate_free +EXPORT_SYMBOL_GPL vmlinux 0x68cb3c3d regulator_set_mode +EXPORT_SYMBOL_GPL vmlinux 0x68def494 regulator_set_current_limit_regmap +EXPORT_SYMBOL_GPL vmlinux 0x6900686f vcap_find_actionfield +EXPORT_SYMBOL_GPL vmlinux 0x69030415 __mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x690f585e phy_basic_ports_array +EXPORT_SYMBOL_GPL vmlinux 0x69138506 pci_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0x691940dc devm_led_get +EXPORT_SYMBOL_GPL vmlinux 0x6926a0c9 cpufreq_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0x6926c3fa vcap_rule_get_counter +EXPORT_SYMBOL_GPL vmlinux 0x69293136 klp_enable_patch +EXPORT_SYMBOL_GPL vmlinux 0x692f5765 spi_alloc_device +EXPORT_SYMBOL_GPL vmlinux 0x69395da9 virtqueue_get_vring_size +EXPORT_SYMBOL_GPL vmlinux 0x693faeff iommu_unmap_fast +EXPORT_SYMBOL_GPL vmlinux 0x69432900 dm_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x695635db __SCK__tp_func_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x695776c5 seq_buf_do_printk +EXPORT_SYMBOL_GPL vmlinux 0x696340a5 __i2c_board_lock +EXPORT_SYMBOL_GPL vmlinux 0x69637b2c __traceiter_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0x696856b7 __SCK__tp_func_sk_data_ready +EXPORT_SYMBOL_GPL vmlinux 0x696d7e0b l1tf_mitigation +EXPORT_SYMBOL_GPL vmlinux 0x69786f16 memremap_pages +EXPORT_SYMBOL_GPL vmlinux 0x697c5d0d tracing_snapshot_alloc +EXPORT_SYMBOL_GPL vmlinux 0x698d1a63 ata_sas_port_suspend +EXPORT_SYMBOL_GPL vmlinux 0x698f4a2b ip6_route_output_flags +EXPORT_SYMBOL_GPL vmlinux 0x698fd785 filemap_migrate_folio +EXPORT_SYMBOL_GPL vmlinux 0x69b79998 blk_insert_cloned_request +EXPORT_SYMBOL_GPL vmlinux 0x69ba6c0f edac_pci_create_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0x69c55bef iommu_fwspec_init +EXPORT_SYMBOL_GPL vmlinux 0x69cf0632 mpi_fromstr +EXPORT_SYMBOL_GPL vmlinux 0x69d5b810 pwm_lpss_bsw_info +EXPORT_SYMBOL_GPL vmlinux 0x69dfc4b8 serial8250_clear_and_reinit_fifos +EXPORT_SYMBOL_GPL vmlinux 0x69e02862 irq_chip_set_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x69e683de uuid_gen +EXPORT_SYMBOL_GPL vmlinux 0x69e83605 mc146818_get_time +EXPORT_SYMBOL_GPL vmlinux 0x69ee2220 linear_range_get_selector_high +EXPORT_SYMBOL_GPL vmlinux 0x6a055e9e __pm_runtime_use_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0x6a05b65b fb_videomode_from_videomode +EXPORT_SYMBOL_GPL vmlinux 0x6a0edbbd sdio_writeb_readb +EXPORT_SYMBOL_GPL vmlinux 0x6a14d3af unregister_random_vmfork_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6a2aa553 rdev_set_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x6a2b6ab1 kset_find_obj +EXPORT_SYMBOL_GPL vmlinux 0x6a3050f7 usb_phy_roothub_suspend +EXPORT_SYMBOL_GPL vmlinux 0x6a3428db devm_gpiod_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x6a421062 memory_failure_queue +EXPORT_SYMBOL_GPL vmlinux 0x6a460dc5 schedule_hrtimeout +EXPORT_SYMBOL_GPL vmlinux 0x6a4f623b mmu_notifier_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x6a588534 ncsi_stop_dev +EXPORT_SYMBOL_GPL vmlinux 0x6a64a861 firmware_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6a6ed95d ata_pci_device_do_resume +EXPORT_SYMBOL_GPL vmlinux 0x6a8441be cpci_hp_start +EXPORT_SYMBOL_GPL vmlinux 0x6a8b24e3 yield_to +EXPORT_SYMBOL_GPL vmlinux 0x6a8fdb7e nvme_quiesce_io_queues +EXPORT_SYMBOL_GPL vmlinux 0x6a9752d7 rio_mport_class +EXPORT_SYMBOL_GPL vmlinux 0x6a9e90af ata_mode_string +EXPORT_SYMBOL_GPL vmlinux 0x6aa2a877 xenbus_printf +EXPORT_SYMBOL_GPL vmlinux 0x6aa73383 iptunnel_metadata_reply +EXPORT_SYMBOL_GPL vmlinux 0x6aad9152 xen_set_callback_via +EXPORT_SYMBOL_GPL vmlinux 0x6ab3d870 mmc_poll_for_busy +EXPORT_SYMBOL_GPL vmlinux 0x6ac301d4 intel_pmic_install_opregion_handler +EXPORT_SYMBOL_GPL vmlinux 0x6ad21a8c devm_get_free_pages +EXPORT_SYMBOL_GPL vmlinux 0x6adadbb4 nvme_auth_free_key +EXPORT_SYMBOL_GPL vmlinux 0x6ae4a6d8 gpiod_get_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x6aefb3b8 sock_map_unhash +EXPORT_SYMBOL_GPL vmlinux 0x6afce9dc __traceiter_block_bio_complete +EXPORT_SYMBOL_GPL vmlinux 0x6afeafac vfs_splice_read +EXPORT_SYMBOL_GPL vmlinux 0x6b0dc565 xen_set_irq_priority +EXPORT_SYMBOL_GPL vmlinux 0x6b0eaa18 hv_ghcb_msr_read +EXPORT_SYMBOL_GPL vmlinux 0x6b0f4a14 __traceiter_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x6b11b9d5 rt_mutex_lock_killable +EXPORT_SYMBOL_GPL vmlinux 0x6b2579ae sdio_get_host_pm_caps +EXPORT_SYMBOL_GPL vmlinux 0x6b2b69f7 static_key_enable +EXPORT_SYMBOL_GPL vmlinux 0x6b35a16b intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0x6b3ae022 acpi_os_unmap_iomem +EXPORT_SYMBOL_GPL vmlinux 0x6b413c9b sfp_link_down +EXPORT_SYMBOL_GPL vmlinux 0x6b49976c __SCK__tp_func_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x6b5448c3 dw8250_setup_port +EXPORT_SYMBOL_GPL vmlinux 0x6b5b1744 regulator_set_voltage_rdev +EXPORT_SYMBOL_GPL vmlinux 0x6b5c5ab0 usb_unpoison_urb +EXPORT_SYMBOL_GPL vmlinux 0x6b5fc972 extcon_get_extcon_dev +EXPORT_SYMBOL_GPL vmlinux 0x6b6d0337 nvme_reset_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x6b7a4335 hyperv_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x6b8120d2 __page_file_index +EXPORT_SYMBOL_GPL vmlinux 0x6b81c38b power_supply_unreg_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6b82c4a3 irq_gc_mask_set_bit +EXPORT_SYMBOL_GPL vmlinux 0x6b9f232e __skb_get_hash_symmetric +EXPORT_SYMBOL_GPL vmlinux 0x6ba36c6a hwpoison_filter_flags_value +EXPORT_SYMBOL_GPL vmlinux 0x6ba544c4 phy_led_triggers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6bad535e switchdev_bridge_port_unoffload +EXPORT_SYMBOL_GPL vmlinux 0x6baee5d6 ata_sas_port_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6bb41c5d acpi_kobj +EXPORT_SYMBOL_GPL vmlinux 0x6bb49d5a dm_set_target_max_io_len +EXPORT_SYMBOL_GPL vmlinux 0x6bbd8324 perf_unregister_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x6bbe7e6f mctp_register_netdev +EXPORT_SYMBOL_GPL vmlinux 0x6bcdedc0 mpi_point_init +EXPORT_SYMBOL_GPL vmlinux 0x6bd1aa56 stack_trace_save +EXPORT_SYMBOL_GPL vmlinux 0x6bd6389e __bio_add_page +EXPORT_SYMBOL_GPL vmlinux 0x6bdcf422 usb_enable_intel_xhci_ports +EXPORT_SYMBOL_GPL vmlinux 0x6bdef35c acpi_ec_mark_gpe_for_wake +EXPORT_SYMBOL_GPL vmlinux 0x6be3a96b hv_remove_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0x6c021ad0 tcp_get_info +EXPORT_SYMBOL_GPL vmlinux 0x6c12cba5 clk_hw_get_flags +EXPORT_SYMBOL_GPL vmlinux 0x6c205008 mpi_print +EXPORT_SYMBOL_GPL vmlinux 0x6c389761 acpi_bus_get_private_data +EXPORT_SYMBOL_GPL vmlinux 0x6c3dcfee inet_csk_listen_start +EXPORT_SYMBOL_GPL vmlinux 0x6c3f70e0 guid_gen +EXPORT_SYMBOL_GPL vmlinux 0x6c45cf3e dax_layout_busy_page_range +EXPORT_SYMBOL_GPL vmlinux 0x6c4b6684 reset_control_assert +EXPORT_SYMBOL_GPL vmlinux 0x6c4f35ab uprobe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6c50698a fib_nl_newrule +EXPORT_SYMBOL_GPL vmlinux 0x6c5ad0cd kmsg_dump_register +EXPORT_SYMBOL_GPL vmlinux 0x6c5d20ce devm_regulator_bulk_get_enable +EXPORT_SYMBOL_GPL vmlinux 0x6c605a32 scsi_check_sense +EXPORT_SYMBOL_GPL vmlinux 0x6c655913 register_acpi_hed_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6c759fda thermal_zone_device_register +EXPORT_SYMBOL_GPL vmlinux 0x6c75c005 powercap_unregister_control_type +EXPORT_SYMBOL_GPL vmlinux 0x6c79932b rtc_read_time +EXPORT_SYMBOL_GPL vmlinux 0x6c79d3c9 fuse_get_unique +EXPORT_SYMBOL_GPL vmlinux 0x6c7b435f mc146818_does_rtc_work +EXPORT_SYMBOL_GPL vmlinux 0x6c8be3b6 virtio_check_mem_acc_cb +EXPORT_SYMBOL_GPL vmlinux 0x6c8d2b1d tcf_dev_queue_xmit +EXPORT_SYMBOL_GPL vmlinux 0x6ca4bf88 async_synchronize_full_domain +EXPORT_SYMBOL_GPL vmlinux 0x6ca94b4e pci_epc_destroy +EXPORT_SYMBOL_GPL vmlinux 0x6cba7a78 dm_accept_partial_bio +EXPORT_SYMBOL_GPL vmlinux 0x6cc913da fscrypt_set_bio_crypt_ctx_bh +EXPORT_SYMBOL_GPL vmlinux 0x6ccf2480 scsi_block_targets +EXPORT_SYMBOL_GPL vmlinux 0x6ccfd679 devm_power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x6cd0c1e5 pm_runtime_set_autosuspend_delay +EXPORT_SYMBOL_GPL vmlinux 0x6ce90882 devm_kasprintf +EXPORT_SYMBOL_GPL vmlinux 0x6cf556d4 i2c_adapter_depth +EXPORT_SYMBOL_GPL vmlinux 0x6cfab41a xen_hvm_evtchn_do_upcall +EXPORT_SYMBOL_GPL vmlinux 0x6d04891d inet_getpeer +EXPORT_SYMBOL_GPL vmlinux 0x6d09843f copy_bpf_fprog_from_user +EXPORT_SYMBOL_GPL vmlinux 0x6d0ae550 pinctrl_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0x6d110ae1 fwnode_property_get_reference_args +EXPORT_SYMBOL_GPL vmlinux 0x6d211d05 pm_report_hw_sleep_time +EXPORT_SYMBOL_GPL vmlinux 0x6d217aaf usb_autopm_put_interface_async +EXPORT_SYMBOL_GPL vmlinux 0x6d28243e fsstack_copy_inode_size +EXPORT_SYMBOL_GPL vmlinux 0x6d2abeda tcp_reno_cong_avoid +EXPORT_SYMBOL_GPL vmlinux 0x6d2d25c1 __ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0x6d2e899d mce_usable_address +EXPORT_SYMBOL_GPL vmlinux 0x6d2fc5a6 net_namespace_list +EXPORT_SYMBOL_GPL vmlinux 0x6d34a5bd ata_pci_bmdma_clear_simplex +EXPORT_SYMBOL_GPL vmlinux 0x6d49c8ed iommu_group_has_isolated_msi +EXPORT_SYMBOL_GPL vmlinux 0x6d4e13d8 gpiochip_add_pingroup_range +EXPORT_SYMBOL_GPL vmlinux 0x6d4e74d7 udp_abort +EXPORT_SYMBOL_GPL vmlinux 0x6d58a658 scsi_register_device_handler +EXPORT_SYMBOL_GPL vmlinux 0x6d664c7f usb_add_hcd +EXPORT_SYMBOL_GPL vmlinux 0x6d68ce18 pci_hp_add +EXPORT_SYMBOL_GPL vmlinux 0x6d6fec1f ktime_mono_to_any +EXPORT_SYMBOL_GPL vmlinux 0x6d7586e8 tty_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x6d7832b7 __stack_depot_save +EXPORT_SYMBOL_GPL vmlinux 0x6d7e5d28 attribute_container_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6d7e7dca ipv6_proxy_select_ident +EXPORT_SYMBOL_GPL vmlinux 0x6d7e951e rcu_exp_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x6d80971b led_get +EXPORT_SYMBOL_GPL vmlinux 0x6d9be281 crypto_create_tfm_node +EXPORT_SYMBOL_GPL vmlinux 0x6d9eb7af pm_clk_resume +EXPORT_SYMBOL_GPL vmlinux 0x6da9ca52 evtchn_make_refcounted +EXPORT_SYMBOL_GPL vmlinux 0x6db24bd1 pci_create_ims_domain +EXPORT_SYMBOL_GPL vmlinux 0x6db9e7d6 irqd_cfg +EXPORT_SYMBOL_GPL vmlinux 0x6dbaafd3 put_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6dc88d30 clk_hw_set_parent +EXPORT_SYMBOL_GPL vmlinux 0x6dc89c4c generic_handle_domain_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x6dcd5fb4 ethnl_cable_test_amplitude +EXPORT_SYMBOL_GPL vmlinux 0x6dd5680d sprint_symbol_build_id +EXPORT_SYMBOL_GPL vmlinux 0x6dd6b0d9 mdiobus_modify +EXPORT_SYMBOL_GPL vmlinux 0x6ddf62e3 usb_mon_register +EXPORT_SYMBOL_GPL vmlinux 0x6dfe57b8 split_page +EXPORT_SYMBOL_GPL vmlinux 0x6e065790 devm_clk_get_enabled +EXPORT_SYMBOL_GPL vmlinux 0x6e18092f virtio_check_driver_offered_feature +EXPORT_SYMBOL_GPL vmlinux 0x6e228416 clk_hw_get_parent_by_index +EXPORT_SYMBOL_GPL vmlinux 0x6e32dbdb bpf_map_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x6e353c26 mpi_rshift +EXPORT_SYMBOL_GPL vmlinux 0x6e353c85 __SCK__tp_func_sched_update_nr_running_tp +EXPORT_SYMBOL_GPL vmlinux 0x6e3e3b1e ip_fib_metrics_init +EXPORT_SYMBOL_GPL vmlinux 0x6e3ff83a edac_device_alloc_index +EXPORT_SYMBOL_GPL vmlinux 0x6e4455e2 ata_dev_disable +EXPORT_SYMBOL_GPL vmlinux 0x6e4c1a00 rio_set_port_lockout +EXPORT_SYMBOL_GPL vmlinux 0x6e55048c pci_enable_rom +EXPORT_SYMBOL_GPL vmlinux 0x6e656e5a do_xdp_generic +EXPORT_SYMBOL_GPL vmlinux 0x6e727afd __SCK__tp_func_ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x6e738578 devm_phy_package_join +EXPORT_SYMBOL_GPL vmlinux 0x6e74b8f0 shmem_read_folio_gfp +EXPORT_SYMBOL_GPL vmlinux 0x6e76371d i2c_acpi_waive_d0_probe +EXPORT_SYMBOL_GPL vmlinux 0x6e7943ec iommu_group_id +EXPORT_SYMBOL_GPL vmlinux 0x6e85b00b local_touch_nmi +EXPORT_SYMBOL_GPL vmlinux 0x6e89a560 regmap_irq_chip_get_base +EXPORT_SYMBOL_GPL vmlinux 0x6e914514 acpi_dev_irq_flags +EXPORT_SYMBOL_GPL vmlinux 0x6e91ee1b nvme_auth_digest_name +EXPORT_SYMBOL_GPL vmlinux 0x6eb04f46 register_random_vmfork_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6ebe366f ktime_get_mono_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6ec27539 __traceiter_sched_cpu_capacity_tp +EXPORT_SYMBOL_GPL vmlinux 0x6ec7f8eb phy_package_leave +EXPORT_SYMBOL_GPL vmlinux 0x6ef6b54f ktime_get_boot_fast_ns +EXPORT_SYMBOL_GPL vmlinux 0x6f12560a get_old_timespec32 +EXPORT_SYMBOL_GPL vmlinux 0x6f1860b9 pci_iomap_wc +EXPORT_SYMBOL_GPL vmlinux 0x6f196c97 ata_sff_prereset +EXPORT_SYMBOL_GPL vmlinux 0x6f1ff31f alloc_io_pgtable_ops +EXPORT_SYMBOL_GPL vmlinux 0x6f2224ab devm_request_free_mem_region +EXPORT_SYMBOL_GPL vmlinux 0x6f2bb41a __blk_trace_note_message +EXPORT_SYMBOL_GPL vmlinux 0x6f2ecc53 acpi_dev_get_property +EXPORT_SYMBOL_GPL vmlinux 0x6f34bc42 x86_platform +EXPORT_SYMBOL_GPL vmlinux 0x6f34c3a0 devlink_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6f3c8074 gpiod_get_raw_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x6f3d8ecf regmap_async_complete +EXPORT_SYMBOL_GPL vmlinux 0x6f413b91 __SCK__tp_func_devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0x6f4f4ad6 ata_scsi_queuecmd +EXPORT_SYMBOL_GPL vmlinux 0x6f58d1c1 inet_bhash2_reset_saddr +EXPORT_SYMBOL_GPL vmlinux 0x6f5bd207 usb_phy_get_charger_current +EXPORT_SYMBOL_GPL vmlinux 0x6f618e9f uart_try_toggle_sysrq +EXPORT_SYMBOL_GPL vmlinux 0x6f6619f9 thermal_zone_get_slope +EXPORT_SYMBOL_GPL vmlinux 0x6f6b52e9 __ipv6_fixup_options +EXPORT_SYMBOL_GPL vmlinux 0x6f6d7b8c gen_pool_get +EXPORT_SYMBOL_GPL vmlinux 0x6f7382c3 shake_page +EXPORT_SYMBOL_GPL vmlinux 0x6f7b7abd pm_clk_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0x6f7e6040 irq_has_action +EXPORT_SYMBOL_GPL vmlinux 0x6f8bbf17 em_pd_get +EXPORT_SYMBOL_GPL vmlinux 0x6f9e763b timecounter_read +EXPORT_SYMBOL_GPL vmlinux 0x6fa6c7cf clk_hw_unregister +EXPORT_SYMBOL_GPL vmlinux 0x6fa7fe22 nf_route +EXPORT_SYMBOL_GPL vmlinux 0x6fb54f89 __SCK__tp_func_sched_cpu_capacity_tp +EXPORT_SYMBOL_GPL vmlinux 0x6fc1b41d crypto_unregister_aead +EXPORT_SYMBOL_GPL vmlinux 0x6fcb9b38 crypto_shoot_alg +EXPORT_SYMBOL_GPL vmlinux 0x6fcef6ab ring_buffer_reset +EXPORT_SYMBOL_GPL vmlinux 0x6fd28596 dw_pcie_ep_reset_bar +EXPORT_SYMBOL_GPL vmlinux 0x6fea74c4 virtio_require_restricted_mem_acc +EXPORT_SYMBOL_GPL vmlinux 0x6ff607b6 crypto_get_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x6ffce680 x86_cpu_has_min_microcode_rev +EXPORT_SYMBOL_GPL vmlinux 0x6ffe1fe9 devm_pse_controller_register +EXPORT_SYMBOL_GPL vmlinux 0x70027800 pci_generic_config_read +EXPORT_SYMBOL_GPL vmlinux 0x7006586e iommu_get_group_resv_regions +EXPORT_SYMBOL_GPL vmlinux 0x70137371 xfrm_state_mtu +EXPORT_SYMBOL_GPL vmlinux 0x70152d4b buffer_migrate_folio_norefs +EXPORT_SYMBOL_GPL vmlinux 0x7020694d pcie_port_bus_type +EXPORT_SYMBOL_GPL vmlinux 0x70576fee acpi_processor_ffh_cstate_probe +EXPORT_SYMBOL_GPL vmlinux 0x7073c04f phy_10_100_features_array +EXPORT_SYMBOL_GPL vmlinux 0x707536e8 subsys_system_register +EXPORT_SYMBOL_GPL vmlinux 0x707a506b __clocksource_update_freq_scale +EXPORT_SYMBOL_GPL vmlinux 0x7088aa56 __traceiter_ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x70b962ed xfrm_audit_state_notfound +EXPORT_SYMBOL_GPL vmlinux 0x70c23545 icc_provider_register +EXPORT_SYMBOL_GPL vmlinux 0x70c2c7ea pids_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x70c52dc5 nf_skb_duplicated +EXPORT_SYMBOL_GPL vmlinux 0x70c6d827 mc146818_set_time +EXPORT_SYMBOL_GPL vmlinux 0x70cf032f usb_hcd_irq +EXPORT_SYMBOL_GPL vmlinux 0x70df7a02 gpiochip_populate_parent_fwspec_fourcell +EXPORT_SYMBOL_GPL vmlinux 0x70e6f69e edac_mc_add_mc_with_groups +EXPORT_SYMBOL_GPL vmlinux 0x70f315f4 wm831x_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x70f992b1 do_take_over_console +EXPORT_SYMBOL_GPL vmlinux 0x70fbae4d cppc_allow_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x71009b99 rtnl_register_module +EXPORT_SYMBOL_GPL vmlinux 0x7101be25 dw_pcie_own_conf_map_bus +EXPORT_SYMBOL_GPL vmlinux 0x710a9d71 __traceiter_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0x710c73b6 crypto_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x711feb27 gpiod_direction_output_raw +EXPORT_SYMBOL_GPL vmlinux 0x71207451 acpi_dev_resource_io +EXPORT_SYMBOL_GPL vmlinux 0x7122460c usb_set_device_state +EXPORT_SYMBOL_GPL vmlinux 0x7128f6c5 irq_domain_reset_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x7129a6f4 osc_sb_native_usb4_support_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x712a298d dev_pm_qos_hide_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0x713c7a8c fat_dir_empty +EXPORT_SYMBOL_GPL vmlinux 0x713efb0d devm_i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0x714abc29 iommu_sva_get_pasid +EXPORT_SYMBOL_GPL vmlinux 0x7152c82e __SCK__tp_func_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0x7156add9 inet_csk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0x7158a8e0 sysfs_change_owner +EXPORT_SYMBOL_GPL vmlinux 0x716265c7 debugfs_initialized +EXPORT_SYMBOL_GPL vmlinux 0x716b9534 acpi_dma_controller_free +EXPORT_SYMBOL_GPL vmlinux 0x71724493 mctrl_gpio_enable_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x71806fa6 preempt_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7181db30 atomic_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7184fe83 da903x_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x71894d9c to_nvdimm_bus +EXPORT_SYMBOL_GPL vmlinux 0x71941c0d of_led_get +EXPORT_SYMBOL_GPL vmlinux 0x7195940a mctrl_gpio_disable_irq_wake +EXPORT_SYMBOL_GPL vmlinux 0x719e17ff clk_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0x71abd5a4 unregister_fprobe +EXPORT_SYMBOL_GPL vmlinux 0x71ad8ba1 gpiod_set_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x71b6cf94 dst_cache_reset_now +EXPORT_SYMBOL_GPL vmlinux 0x71c059d8 __traceiter_map +EXPORT_SYMBOL_GPL vmlinux 0x71cf21ef genphy_c45_pma_read_abilities +EXPORT_SYMBOL_GPL vmlinux 0x71de09fe devlink_net +EXPORT_SYMBOL_GPL vmlinux 0x71e37abf nvdimm_setup_pfn +EXPORT_SYMBOL_GPL vmlinux 0x7210cc5c devm_thermal_of_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0x72160f74 aead_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x7217e572 __tracepoint_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0x721dea6c regulator_enable +EXPORT_SYMBOL_GPL vmlinux 0x72498d05 ehci_adjust_port_wakeup_flags +EXPORT_SYMBOL_GPL vmlinux 0x725284d7 regulator_sync_voltage +EXPORT_SYMBOL_GPL vmlinux 0x7265f2b0 pci_vpd_check_csum +EXPORT_SYMBOL_GPL vmlinux 0x727003ef pinctrl_dev_get_devname +EXPORT_SYMBOL_GPL vmlinux 0x7270f290 switchdev_handle_port_obj_add_foreign +EXPORT_SYMBOL_GPL vmlinux 0x7278d328 all_vm_events +EXPORT_SYMBOL_GPL vmlinux 0x7282ecb6 rcu_async_hurry +EXPORT_SYMBOL_GPL vmlinux 0x7283161b percpu_ref_switch_to_percpu +EXPORT_SYMBOL_GPL vmlinux 0x728cf171 edac_mc_del_mc +EXPORT_SYMBOL_GPL vmlinux 0x729b47ee __tracepoint_block_split +EXPORT_SYMBOL_GPL vmlinux 0x72abe9c9 sysfs_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x72ae1839 base64_decode +EXPORT_SYMBOL_GPL vmlinux 0x72b2d653 gnttab_page_cache_init +EXPORT_SYMBOL_GPL vmlinux 0x72d23e42 bpf_prog_put +EXPORT_SYMBOL_GPL vmlinux 0x72d267dc nvmem_del_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0x72d9d87f devl_sb_unregister +EXPORT_SYMBOL_GPL vmlinux 0x72fbde7d nvme_setup_cmd +EXPORT_SYMBOL_GPL vmlinux 0x73046d58 devm_gpiod_get_index_optional +EXPORT_SYMBOL_GPL vmlinux 0x730a37ff pci_doe +EXPORT_SYMBOL_GPL vmlinux 0x730adaec rio_free_net +EXPORT_SYMBOL_GPL vmlinux 0x7312067f acpi_subsys_runtime_suspend +EXPORT_SYMBOL_GPL vmlinux 0x731dba7a xen_domain_type +EXPORT_SYMBOL_GPL vmlinux 0x7326ebdb net_failover_destroy +EXPORT_SYMBOL_GPL vmlinux 0x732852fe xenbus_transaction_end +EXPORT_SYMBOL_GPL vmlinux 0x73347409 class_is_registered +EXPORT_SYMBOL_GPL vmlinux 0x73349eaa mmc_switch +EXPORT_SYMBOL_GPL vmlinux 0x733ec33e __SCT__tp_func_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0x7356b0c1 thermal_zone_device_enable +EXPORT_SYMBOL_GPL vmlinux 0x7372b559 synth_event_add_next_val +EXPORT_SYMBOL_GPL vmlinux 0x737b5243 clk_fractional_divider_ops +EXPORT_SYMBOL_GPL vmlinux 0x737d5acc ata_host_alloc_pinfo +EXPORT_SYMBOL_GPL vmlinux 0x7381287f trace_handle_return +EXPORT_SYMBOL_GPL vmlinux 0x738c6b43 ata_pci_sff_init_host +EXPORT_SYMBOL_GPL vmlinux 0x738fe32b amd_get_nodes_per_socket +EXPORT_SYMBOL_GPL vmlinux 0x73904664 sk_msg_return_zero +EXPORT_SYMBOL_GPL vmlinux 0x739c89d7 xenbus_match +EXPORT_SYMBOL_GPL vmlinux 0x73a48b4a ata_sff_std_ports +EXPORT_SYMBOL_GPL vmlinux 0x73b498bd fixed_phy_register_with_gpiod +EXPORT_SYMBOL_GPL vmlinux 0x73c2554f __iowrite64_copy +EXPORT_SYMBOL_GPL vmlinux 0x73c8845b dev_pm_opp_sync_regulators +EXPORT_SYMBOL_GPL vmlinux 0x73c8b397 xfrm_local_error +EXPORT_SYMBOL_GPL vmlinux 0x73cc8631 oiap +EXPORT_SYMBOL_GPL vmlinux 0x73d9f31d fpu_alloc_guest_fpstate +EXPORT_SYMBOL_GPL vmlinux 0x73f675fe dm_post_suspending +EXPORT_SYMBOL_GPL vmlinux 0x7410467f irq_domain_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0x741ad190 pinctrl_find_gpio_range_from_pin_nolock +EXPORT_SYMBOL_GPL vmlinux 0x7420e42b __rio_local_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0x7429297b interval_tree_span_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x74391583 dax_add_host +EXPORT_SYMBOL_GPL vmlinux 0x7444e1a3 gnttab_batch_copy +EXPORT_SYMBOL_GPL vmlinux 0x74457e56 apei_resources_fini +EXPORT_SYMBOL_GPL vmlinux 0x7446bd40 pm_generic_resume +EXPORT_SYMBOL_GPL vmlinux 0x7451e8c8 crypto_sig_verify +EXPORT_SYMBOL_GPL vmlinux 0x7452adff user_return_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x745f813d regulator_bulk_register_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0x7465bfb7 vp_modern_generation +EXPORT_SYMBOL_GPL vmlinux 0x748a8e5b spi_split_transfers_maxwords +EXPORT_SYMBOL_GPL vmlinux 0x748b3b90 soc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x748d6b54 debugfs_lookup +EXPORT_SYMBOL_GPL vmlinux 0x748d6ba4 mptcp_pm_get_add_addr_accept_max +EXPORT_SYMBOL_GPL vmlinux 0x749374cc __skb_zcopy_downgrade_managed +EXPORT_SYMBOL_GPL vmlinux 0x74938f53 __tcp_send_ack +EXPORT_SYMBOL_GPL vmlinux 0x7494a222 crypto_register_skciphers +EXPORT_SYMBOL_GPL vmlinux 0x749af7ac irq_work_queue +EXPORT_SYMBOL_GPL vmlinux 0x74a88f0c wm8350_block_read +EXPORT_SYMBOL_GPL vmlinux 0x74ab8381 virtio_max_dma_size +EXPORT_SYMBOL_GPL vmlinux 0x74b1c408 mmput +EXPORT_SYMBOL_GPL vmlinux 0x74b3f75c pinctrl_get_group_pins +EXPORT_SYMBOL_GPL vmlinux 0x74b5ea68 lcm_not_zero +EXPORT_SYMBOL_GPL vmlinux 0x74baf17a tracing_is_on +EXPORT_SYMBOL_GPL vmlinux 0x74bf2e01 scsi_pr_type_to_block +EXPORT_SYMBOL_GPL vmlinux 0x74c2bf24 skcipher_walk_virt +EXPORT_SYMBOL_GPL vmlinux 0x74c7bffa stack_trace_snprint +EXPORT_SYMBOL_GPL vmlinux 0x74c96546 dma_resv_iter_next +EXPORT_SYMBOL_GPL vmlinux 0x74d42632 mas_empty_area +EXPORT_SYMBOL_GPL vmlinux 0x74ddea92 devm_regulator_bulk_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0x74e73871 housekeeping_overridden +EXPORT_SYMBOL_GPL vmlinux 0x74f0494e device_get_next_child_node +EXPORT_SYMBOL_GPL vmlinux 0x74f2370f __mmdrop +EXPORT_SYMBOL_GPL vmlinux 0x74f4e097 balance_dirty_pages_ratelimited_flags +EXPORT_SYMBOL_GPL vmlinux 0x75092a2b pci_epc_set_msix +EXPORT_SYMBOL_GPL vmlinux 0x75133f6e visitor128 +EXPORT_SYMBOL_GPL vmlinux 0x751be28f spi_setup +EXPORT_SYMBOL_GPL vmlinux 0x751d2e97 bpf_log +EXPORT_SYMBOL_GPL vmlinux 0x7521afb6 leave_mm +EXPORT_SYMBOL_GPL vmlinux 0x7522f3ba irq_modify_status +EXPORT_SYMBOL_GPL vmlinux 0x755f7add irq_chip_eoi_parent +EXPORT_SYMBOL_GPL vmlinux 0x756499f8 pci_disable_pcie_error_reporting +EXPORT_SYMBOL_GPL vmlinux 0x757c1bbb housekeeping_any_cpu +EXPORT_SYMBOL_GPL vmlinux 0x757c8466 __tracepoint_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0x759bfe36 btree_destroy +EXPORT_SYMBOL_GPL vmlinux 0x75a750e4 vcap_rule_rem_key +EXPORT_SYMBOL_GPL vmlinux 0x75aa3461 bpf_offload_dev_match +EXPORT_SYMBOL_GPL vmlinux 0x75cba165 rio_mport_read_config_16 +EXPORT_SYMBOL_GPL vmlinux 0x75d2e629 tcp_plb_update_state_upon_rto +EXPORT_SYMBOL_GPL vmlinux 0x75dfffa3 acpi_pm_set_device_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x75e96aa1 fwnode_property_present +EXPORT_SYMBOL_GPL vmlinux 0x75e9c735 pci_ats_disabled +EXPORT_SYMBOL_GPL vmlinux 0x75eabc9c dev_pm_set_wake_irq +EXPORT_SYMBOL_GPL vmlinux 0x75fadcef acpi_get_psd_map +EXPORT_SYMBOL_GPL vmlinux 0x7604f729 trace_define_field +EXPORT_SYMBOL_GPL vmlinux 0x761b5007 iommu_group_remove_device +EXPORT_SYMBOL_GPL vmlinux 0x762640ab __SCT__tp_func_sched_cpu_capacity_tp +EXPORT_SYMBOL_GPL vmlinux 0x76270365 genphy_c45_pma_setup_forced +EXPORT_SYMBOL_GPL vmlinux 0x762ef764 nvme_delete_ctrl +EXPORT_SYMBOL_GPL vmlinux 0x7631a226 device_bind_driver +EXPORT_SYMBOL_GPL vmlinux 0x76334752 efivars_register +EXPORT_SYMBOL_GPL vmlinux 0x7636098a blk_mq_wait_quiesce_done +EXPORT_SYMBOL_GPL vmlinux 0x7648dee0 ip_icmp_error_rfc4884 +EXPORT_SYMBOL_GPL vmlinux 0x7650e162 i2c_acpi_new_device_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x76517f03 interval_tree_span_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0x7651843c blkcg_policy_register +EXPORT_SYMBOL_GPL vmlinux 0x7656410c mpi_sub +EXPORT_SYMBOL_GPL vmlinux 0x765cbb63 nf_checksum +EXPORT_SYMBOL_GPL vmlinux 0x765f8830 __SCT__tp_func_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0x7660fad1 ncsi_vlan_rx_add_vid +EXPORT_SYMBOL_GPL vmlinux 0x7665a95b idr_remove +EXPORT_SYMBOL_GPL vmlinux 0x766d8c49 i2c_acpi_find_adapter_by_handle +EXPORT_SYMBOL_GPL vmlinux 0x767c1f59 bdi_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x767c6e61 dev_attr_sw_activity +EXPORT_SYMBOL_GPL vmlinux 0x7681946c unregister_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7681fbd9 get_net_ns_by_id +EXPORT_SYMBOL_GPL vmlinux 0x76844887 cpufreq_cpu_get +EXPORT_SYMBOL_GPL vmlinux 0x7687227b dev_pm_opp_enable +EXPORT_SYMBOL_GPL vmlinux 0x768e0957 dax_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x7697ddd6 blk_freeze_queue_start +EXPORT_SYMBOL_GPL vmlinux 0x769cefb5 percpu_ref_switch_to_atomic +EXPORT_SYMBOL_GPL vmlinux 0x76a66bca ip6_sk_dst_lookup_flow +EXPORT_SYMBOL_GPL vmlinux 0x76b87a3d usb_put_intf +EXPORT_SYMBOL_GPL vmlinux 0x76c4674f fl6_merge_options +EXPORT_SYMBOL_GPL vmlinux 0x76c68f19 xhci_suspend +EXPORT_SYMBOL_GPL vmlinux 0x76c6e311 phy_resolve_aneg_pause +EXPORT_SYMBOL_GPL vmlinux 0x76d9b876 clk_set_rate +EXPORT_SYMBOL_GPL vmlinux 0x76e85b92 gnttab_request_free_callback +EXPORT_SYMBOL_GPL vmlinux 0x76ea8eec dm_send_uevents +EXPORT_SYMBOL_GPL vmlinux 0x76ec32b1 priv_to_devlink +EXPORT_SYMBOL_GPL vmlinux 0x76eeeb0f sha384_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x76f46742 devm_pwm_lpss_probe +EXPORT_SYMBOL_GPL vmlinux 0x76fca1db devm_hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0x771122ab fsverity_verify_blocks +EXPORT_SYMBOL_GPL vmlinux 0x7712771a unbind_from_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x771ab291 ata_sas_port_init +EXPORT_SYMBOL_GPL vmlinux 0x77222306 ring_buffer_read_page +EXPORT_SYMBOL_GPL vmlinux 0x772b0f64 __wake_up_pollfree +EXPORT_SYMBOL_GPL vmlinux 0x772ec956 hvc_instantiate +EXPORT_SYMBOL_GPL vmlinux 0x77389754 srcu_batches_completed +EXPORT_SYMBOL_GPL vmlinux 0x774f857f pci_user_write_config_byte +EXPORT_SYMBOL_GPL vmlinux 0x77522cf6 sbitmap_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0x7757b51a clk_unregister +EXPORT_SYMBOL_GPL vmlinux 0x775b7730 pci_p2pmem_free_sgl +EXPORT_SYMBOL_GPL vmlinux 0x775f0eb2 nd_tbl +EXPORT_SYMBOL_GPL vmlinux 0x77610ba2 skb_defer_rx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x7770c4bb ata_host_register +EXPORT_SYMBOL_GPL vmlinux 0x777990e5 edac_pci_del_device +EXPORT_SYMBOL_GPL vmlinux 0x777e6836 xenbus_watch_pathfmt +EXPORT_SYMBOL_GPL vmlinux 0x7791e066 dw_pcie_read +EXPORT_SYMBOL_GPL vmlinux 0x77a8f56c crypto_larval_alloc +EXPORT_SYMBOL_GPL vmlinux 0x77ae495d usb_speed_string +EXPORT_SYMBOL_GPL vmlinux 0x77c44577 devm_clk_get_prepared +EXPORT_SYMBOL_GPL vmlinux 0x77e129c1 regulator_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0x77e75be3 sfp_bus_put +EXPORT_SYMBOL_GPL vmlinux 0x77ecf68d memalloc_socks_key +EXPORT_SYMBOL_GPL vmlinux 0x77f24400 perf_register_guest_info_callbacks +EXPORT_SYMBOL_GPL vmlinux 0x77fa4b64 usb_hcd_pci_remove +EXPORT_SYMBOL_GPL vmlinux 0x7800431a inet_csk_addr2sockaddr +EXPORT_SYMBOL_GPL vmlinux 0x7802cece ip_local_out +EXPORT_SYMBOL_GPL vmlinux 0x78041b8f byte_rev_table +EXPORT_SYMBOL_GPL vmlinux 0x780989d1 nvme_auth_dhgroup_id +EXPORT_SYMBOL_GPL vmlinux 0x7813250d power_supply_charge_behaviour_show +EXPORT_SYMBOL_GPL vmlinux 0x78199a20 nf_ip_route +EXPORT_SYMBOL_GPL vmlinux 0x7825a835 serdev_controller_add +EXPORT_SYMBOL_GPL vmlinux 0x782a4312 led_trigger_remove +EXPORT_SYMBOL_GPL vmlinux 0x782adb74 hpet_rtc_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x78411e52 nvme_remove_namespaces +EXPORT_SYMBOL_GPL vmlinux 0x7847c621 sfp_parse_support +EXPORT_SYMBOL_GPL vmlinux 0x784aa5d3 iommu_set_pgtable_quirks +EXPORT_SYMBOL_GPL vmlinux 0x785a93b4 si_mem_available +EXPORT_SYMBOL_GPL vmlinux 0x785b0b2a ata_scsi_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0x78687bd0 crypto_sig_sign +EXPORT_SYMBOL_GPL vmlinux 0x786908eb xenbus_dev_cancel +EXPORT_SYMBOL_GPL vmlinux 0x787c882b lzo1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x788bfbad ring_buffer_empty +EXPORT_SYMBOL_GPL vmlinux 0x789ade07 pm_clk_remove_clk +EXPORT_SYMBOL_GPL vmlinux 0x789c73d9 rcu_cpu_stall_suppress_at_boot +EXPORT_SYMBOL_GPL vmlinux 0x78a5fbdb sched_show_task +EXPORT_SYMBOL_GPL vmlinux 0x78ad4747 __SCK__tp_func_sched_util_est_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x78bab66b irq_force_affinity +EXPORT_SYMBOL_GPL vmlinux 0x78bbc458 spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x78ca3def __root_device_register +EXPORT_SYMBOL_GPL vmlinux 0x78ddb76b dmi_match +EXPORT_SYMBOL_GPL vmlinux 0x78e0c503 thermal_zone_bind_cooling_device +EXPORT_SYMBOL_GPL vmlinux 0x78e6e3ce xfrm_get_translator +EXPORT_SYMBOL_GPL vmlinux 0x78eed5a3 i2c_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0x790be0b9 usb_bus_idr +EXPORT_SYMBOL_GPL vmlinux 0x7915cee5 do_machine_check +EXPORT_SYMBOL_GPL vmlinux 0x7916343c __SCT__tp_func_br_mdb_full +EXPORT_SYMBOL_GPL vmlinux 0x791748c8 adxl_decode +EXPORT_SYMBOL_GPL vmlinux 0x7918d817 memory_failure +EXPORT_SYMBOL_GPL vmlinux 0x792a99e2 folio_alloc_buffers +EXPORT_SYMBOL_GPL vmlinux 0x793ac193 __SCT__tp_func_ipi_send_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7944071e pm_runtime_set_memalloc_noio +EXPORT_SYMBOL_GPL vmlinux 0x7944e0fc tracing_off +EXPORT_SYMBOL_GPL vmlinux 0x79470a2c TSS_authhmac +EXPORT_SYMBOL_GPL vmlinux 0x794b7271 orderly_reboot +EXPORT_SYMBOL_GPL vmlinux 0x79672208 iommu_group_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7987945b ata_sff_tf_load +EXPORT_SYMBOL_GPL vmlinux 0x798b7682 klist_prev +EXPORT_SYMBOL_GPL vmlinux 0x7991fd8d crash_vmclear_loaded_vmcss +EXPORT_SYMBOL_GPL vmlinux 0x79ab83ac lwtunnel_build_state +EXPORT_SYMBOL_GPL vmlinux 0x79ba448e clean_record_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0x79bc842c usb_anchor_suspend_wakeups +EXPORT_SYMBOL_GPL vmlinux 0x79c2dfca gpiochip_line_is_persistent +EXPORT_SYMBOL_GPL vmlinux 0x79c3caf9 iommu_device_link +EXPORT_SYMBOL_GPL vmlinux 0x79c667d1 device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x79daf4de __SCT__tp_func_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x79dccec9 pci_epf_alloc_space +EXPORT_SYMBOL_GPL vmlinux 0x79defbe1 kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0x79ea3d1f trace_put_event_file +EXPORT_SYMBOL_GPL vmlinux 0x79efd45e device_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0x79f00ec3 dax_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0x79f1aa44 find_iova +EXPORT_SYMBOL_GPL vmlinux 0x79f697e4 lzorle1x_1_compress +EXPORT_SYMBOL_GPL vmlinux 0x79f9e1e8 ata_eh_analyze_ncq_error +EXPORT_SYMBOL_GPL vmlinux 0x7a2062b5 fscrypt_ioctl_get_policy_ex +EXPORT_SYMBOL_GPL vmlinux 0x7a3f16a2 devl_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7a572f68 nvmem_add_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x7a580e05 gpiochip_lock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0x7a655f68 acpi_processor_claim_cst_control +EXPORT_SYMBOL_GPL vmlinux 0x7a6aae7d rio_register_mport +EXPORT_SYMBOL_GPL vmlinux 0x7a6c38b0 tty_port_register_device_serdev +EXPORT_SYMBOL_GPL vmlinux 0x7a6f8a3e devm_regulator_bulk_get_const +EXPORT_SYMBOL_GPL vmlinux 0x7a70175b phy_check_downshift +EXPORT_SYMBOL_GPL vmlinux 0x7a73e605 wm831x_isinkv_values +EXPORT_SYMBOL_GPL vmlinux 0x7a7674d9 driver_for_each_device +EXPORT_SYMBOL_GPL vmlinux 0x7a7e2fbf rio_dma_prep_xfer +EXPORT_SYMBOL_GPL vmlinux 0x7a81541b async_synchronize_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7a834880 proc_mkdir_data +EXPORT_SYMBOL_GPL vmlinux 0x7a90e312 gpiod_set_raw_value +EXPORT_SYMBOL_GPL vmlinux 0x7a93a0c4 acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0x7a98f4b4 copy_from_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0x7a9e4c23 software_node_register_node_group +EXPORT_SYMBOL_GPL vmlinux 0x7aa198d9 wbc_attach_and_unlock_inode +EXPORT_SYMBOL_GPL vmlinux 0x7aaaa176 __rt_mutex_init +EXPORT_SYMBOL_GPL vmlinux 0x7ac1254b local_clock +EXPORT_SYMBOL_GPL vmlinux 0x7ac5450b __irq_resolve_mapping +EXPORT_SYMBOL_GPL vmlinux 0x7ac722bd phy_all_ports_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7ad02a41 asn1_encode_tag +EXPORT_SYMBOL_GPL vmlinux 0x7ad1ded1 pinctrl_register_mappings +EXPORT_SYMBOL_GPL vmlinux 0x7ae8cd28 nvme_try_sched_reset +EXPORT_SYMBOL_GPL vmlinux 0x7afcb7db __kprobe_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x7b19d4c4 acpi_find_child_device +EXPORT_SYMBOL_GPL vmlinux 0x7b35ce82 iopf_queue_add_device +EXPORT_SYMBOL_GPL vmlinux 0x7b367ffc tpm_pm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x7b378da1 sdev_evt_send_simple +EXPORT_SYMBOL_GPL vmlinux 0x7b5452b8 acpi_unregister_gsi +EXPORT_SYMBOL_GPL vmlinux 0x7b5a4926 sha1_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x7b6f9536 acpi_register_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x7b74edfa hwmon_device_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7b8910f4 kfence_sample_interval +EXPORT_SYMBOL_GPL vmlinux 0x7b90c74e vcap_get_rule_count_by_cookie +EXPORT_SYMBOL_GPL vmlinux 0x7b90d1a9 bind_virq_to_irqhandler +EXPORT_SYMBOL_GPL vmlinux 0x7b9793a2 get_cpu_idle_time_us +EXPORT_SYMBOL_GPL vmlinux 0x7ba83cd1 crypto_unregister_shashes +EXPORT_SYMBOL_GPL vmlinux 0x7bac5fe4 nvdimm_bus_check_dimm_count +EXPORT_SYMBOL_GPL vmlinux 0x7bb045a7 __request_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0x7bb3fa18 vcap_rule_add_action_bit +EXPORT_SYMBOL_GPL vmlinux 0x7bb5addc ata_host_put +EXPORT_SYMBOL_GPL vmlinux 0x7bbda362 nvmem_del_cell_table +EXPORT_SYMBOL_GPL vmlinux 0x7bc42ab3 fsnotify_destroy_mark +EXPORT_SYMBOL_GPL vmlinux 0x7bd9051c pci_probe_reset_bus +EXPORT_SYMBOL_GPL vmlinux 0x7bde0636 events_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0x7bf1b1dd fpu_copy_guest_fpstate_to_uabi +EXPORT_SYMBOL_GPL vmlinux 0x7bf75459 tpm_tis_resume +EXPORT_SYMBOL_GPL vmlinux 0x7bfae0ed platform_get_resource +EXPORT_SYMBOL_GPL vmlinux 0x7c186a0a kernel_kobj +EXPORT_SYMBOL_GPL vmlinux 0x7c20b6a0 load_direct_gdt +EXPORT_SYMBOL_GPL vmlinux 0x7c291e86 show_rcu_tasks_trace_gp_kthread +EXPORT_SYMBOL_GPL vmlinux 0x7c327495 tps6586x_read +EXPORT_SYMBOL_GPL vmlinux 0x7c398094 device_dma_supported +EXPORT_SYMBOL_GPL vmlinux 0x7c3a5728 pci_create_slot +EXPORT_SYMBOL_GPL vmlinux 0x7c3d8a4b icc_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0x7c4f700a vp_modern_config_vector +EXPORT_SYMBOL_GPL vmlinux 0x7c57a830 pci_ims_alloc_irq +EXPORT_SYMBOL_GPL vmlinux 0x7c58f48c perf_event_create_kernel_counter +EXPORT_SYMBOL_GPL vmlinux 0x7c610bcd mmc_send_status +EXPORT_SYMBOL_GPL vmlinux 0x7c653008 usb_hub_claim_port +EXPORT_SYMBOL_GPL vmlinux 0x7c65e06f skb_gso_validate_network_len +EXPORT_SYMBOL_GPL vmlinux 0x7c806564 icc_std_aggregate +EXPORT_SYMBOL_GPL vmlinux 0x7c93f4ce usb_phy_roothub_resume +EXPORT_SYMBOL_GPL vmlinux 0x7c983a5d dmi_walk +EXPORT_SYMBOL_GPL vmlinux 0x7c9a7371 clk_prepare +EXPORT_SYMBOL_GPL vmlinux 0x7ca64a0b __cookie_v4_init_sequence +EXPORT_SYMBOL_GPL vmlinux 0x7cafc26a blk_crypto_update_capabilities +EXPORT_SYMBOL_GPL vmlinux 0x7cb1aea1 devlink_dpipe_header_ethernet +EXPORT_SYMBOL_GPL vmlinux 0x7cb5c653 devm_clk_bulk_get_all +EXPORT_SYMBOL_GPL vmlinux 0x7cb803de btree_grim_visitor +EXPORT_SYMBOL_GPL vmlinux 0x7cc45241 l3mdev_master_upper_ifindex_by_index_rcu +EXPORT_SYMBOL_GPL vmlinux 0x7cc84d98 from_vfsgid +EXPORT_SYMBOL_GPL vmlinux 0x7cceaf92 zs_pool_stats +EXPORT_SYMBOL_GPL vmlinux 0x7cd33ce4 sk_attach_filter +EXPORT_SYMBOL_GPL vmlinux 0x7cd6f042 cpufreq_get_current_driver +EXPORT_SYMBOL_GPL vmlinux 0x7cd7ba1d kernel_read_file_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x7cdcb327 iomap_zero_range +EXPORT_SYMBOL_GPL vmlinux 0x7cdef5dd serial8250_read_char +EXPORT_SYMBOL_GPL vmlinux 0x7ceaf0d5 generic_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0x7cfb7f52 usb_free_streams +EXPORT_SYMBOL_GPL vmlinux 0x7d00c65b nd_synchronize +EXPORT_SYMBOL_GPL vmlinux 0x7d0d13e4 dst_cache_get_ip6 +EXPORT_SYMBOL_GPL vmlinux 0x7d0e1d95 hv_setup_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0x7d1bb1d4 tnum_strn +EXPORT_SYMBOL_GPL vmlinux 0x7d1e92c4 clockevents_config_and_register +EXPORT_SYMBOL_GPL vmlinux 0x7d2263d2 set_selection_kernel +EXPORT_SYMBOL_GPL vmlinux 0x7d24d8c1 tty_ldisc_receive_buf +EXPORT_SYMBOL_GPL vmlinux 0x7d48a446 tracepoint_probe_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7d57a424 tcp_plb_check_rehash +EXPORT_SYMBOL_GPL vmlinux 0x7d59dd46 pm_wq +EXPORT_SYMBOL_GPL vmlinux 0x7d76cb09 spi_unregister_controller +EXPORT_SYMBOL_GPL vmlinux 0x7d936df3 __put_net +EXPORT_SYMBOL_GPL vmlinux 0x7dafddc8 gov_attr_set_init +EXPORT_SYMBOL_GPL vmlinux 0x7db19743 device_attach +EXPORT_SYMBOL_GPL vmlinux 0x7dd43d94 dax_layout_busy_page +EXPORT_SYMBOL_GPL vmlinux 0x7dd4414b of_pm_clk_add_clks +EXPORT_SYMBOL_GPL vmlinux 0x7dda30af unregister_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0x7de1897f devlink_port_type_eth_set +EXPORT_SYMBOL_GPL vmlinux 0x7de2878e irq_gc_mask_clr_bit +EXPORT_SYMBOL_GPL vmlinux 0x7de39e07 phy_basic_t1_features_array +EXPORT_SYMBOL_GPL vmlinux 0x7de65a03 acpi_lpat_free_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0x7de6cc23 io_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0x7dee7dc2 ata_std_sched_eh +EXPORT_SYMBOL_GPL vmlinux 0x7defc870 gnttab_end_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0x7df9baa7 irq_gc_noop +EXPORT_SYMBOL_GPL vmlinux 0x7dfd9de9 __intel_scu_ipc_register +EXPORT_SYMBOL_GPL vmlinux 0x7e19a31e pci_enable_sriov +EXPORT_SYMBOL_GPL vmlinux 0x7e1da733 devm_of_phy_provider_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7e3b4745 rio_map_outb_region +EXPORT_SYMBOL_GPL vmlinux 0x7e3bdecd __ftrace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0x7e4a7c16 balloon_page_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x7e582eab genphy_c45_baset1_read_status +EXPORT_SYMBOL_GPL vmlinux 0x7e5db80b pstore_name_to_type +EXPORT_SYMBOL_GPL vmlinux 0x7e64181d usb_calc_bus_time +EXPORT_SYMBOL_GPL vmlinux 0x7e6504e4 bus_get_dev_root +EXPORT_SYMBOL_GPL vmlinux 0x7e72a001 usb_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x7e7792ef netlink_add_tap +EXPORT_SYMBOL_GPL vmlinux 0x7e7a47c9 pci_acpi_clear_companion_lookup_hook +EXPORT_SYMBOL_GPL vmlinux 0x7e7e3f58 ring_buffer_reset_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7e8d8619 usb_anchor_empty +EXPORT_SYMBOL_GPL vmlinux 0x7ea75c24 __wake_up_locked_key_bookmark +EXPORT_SYMBOL_GPL vmlinux 0x7eb74e42 blk_rq_prep_clone +EXPORT_SYMBOL_GPL vmlinux 0x7eb808d0 add_cpu +EXPORT_SYMBOL_GPL vmlinux 0x7ec09110 sk_msg_trim +EXPORT_SYMBOL_GPL vmlinux 0x7ede61f8 gpiod_count +EXPORT_SYMBOL_GPL vmlinux 0x7eea6b8b pcap_adc_async +EXPORT_SYMBOL_GPL vmlinux 0x7ef3d971 tty_encode_baud_rate +EXPORT_SYMBOL_GPL vmlinux 0x7f074cd7 __netpoll_cleanup +EXPORT_SYMBOL_GPL vmlinux 0x7f174dbd __traceiter_block_rq_insert +EXPORT_SYMBOL_GPL vmlinux 0x7f3d5828 pm_generic_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0x7f4441f5 serdev_device_open +EXPORT_SYMBOL_GPL vmlinux 0x7f52dc5a find_ge_pid +EXPORT_SYMBOL_GPL vmlinux 0x7f6c6760 bpf_prog_alloc +EXPORT_SYMBOL_GPL vmlinux 0x7f6cee89 rhashtable_free_and_destroy +EXPORT_SYMBOL_GPL vmlinux 0x7f7cbc64 ip_tunnel_need_metadata +EXPORT_SYMBOL_GPL vmlinux 0x7f84f35d rcu_gp_slow_unregister +EXPORT_SYMBOL_GPL vmlinux 0x7f875269 spi_mem_poll_status +EXPORT_SYMBOL_GPL vmlinux 0x7f8839d6 i2c_acpi_get_i2c_resource +EXPORT_SYMBOL_GPL vmlinux 0x7f9b1879 osc_cpc_flexible_adr_space_confirmed +EXPORT_SYMBOL_GPL vmlinux 0x7fa96509 erst_get_record_id_next +EXPORT_SYMBOL_GPL vmlinux 0x7fb7d443 sdio_enable_func +EXPORT_SYMBOL_GPL vmlinux 0x7fc67b4b fwnode_graph_get_remote_port +EXPORT_SYMBOL_GPL vmlinux 0x7fc8a1c0 cpuidle_register +EXPORT_SYMBOL_GPL vmlinux 0x800553e1 bus_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x800714d1 crypto_default_rng +EXPORT_SYMBOL_GPL vmlinux 0x800e8e88 mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x801257d5 dm_bio_from_per_bio_data +EXPORT_SYMBOL_GPL vmlinux 0x8014a510 fb_deferred_io_release +EXPORT_SYMBOL_GPL vmlinux 0x8021d936 da9055_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0x80230c91 gnttab_pages_clear_private +EXPORT_SYMBOL_GPL vmlinux 0x80452de8 devm_regulator_get +EXPORT_SYMBOL_GPL vmlinux 0x8045eee1 __tracepoint_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0x8046712e divider_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0x805df56c acpi_get_acpi_dev +EXPORT_SYMBOL_GPL vmlinux 0x8064ee51 led_classdev_resume +EXPORT_SYMBOL_GPL vmlinux 0x8068ceed vp_modern_remove +EXPORT_SYMBOL_GPL vmlinux 0x807612b5 rdev_clear_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x807766ea usb_scuttle_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x807fdcc4 call_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0x80879ac5 device_pm_wait_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x808a8088 handle_guest_split_lock +EXPORT_SYMBOL_GPL vmlinux 0x808ec135 usb_phy_roothub_alloc +EXPORT_SYMBOL_GPL vmlinux 0x808ec1a3 crypto_alg_tested +EXPORT_SYMBOL_GPL vmlinux 0x809bcba3 __fat_fs_error +EXPORT_SYMBOL_GPL vmlinux 0x809e7ea2 usb_set_wireless_status +EXPORT_SYMBOL_GPL vmlinux 0x80a095d8 scatterwalk_ffwd +EXPORT_SYMBOL_GPL vmlinux 0x80ae64e9 genphy_c45_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0x80af6a0d splice_to_pipe +EXPORT_SYMBOL_GPL vmlinux 0x80b0e378 __inet_lookup_established +EXPORT_SYMBOL_GPL vmlinux 0x80c68137 nf_log_buf_close +EXPORT_SYMBOL_GPL vmlinux 0x80c6b03e serdev_device_set_flow_control +EXPORT_SYMBOL_GPL vmlinux 0x80d1a474 nvme_complete_async_event +EXPORT_SYMBOL_GPL vmlinux 0x80d5e57a mpi_free +EXPORT_SYMBOL_GPL vmlinux 0x80eed519 blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x81051037 register_trace_event +EXPORT_SYMBOL_GPL vmlinux 0x8110a73a cond_synchronize_rcu_expedited_full +EXPORT_SYMBOL_GPL vmlinux 0x8118caef regulator_find_closest_bigger +EXPORT_SYMBOL_GPL vmlinux 0x811dc334 usb_unregister_notify +EXPORT_SYMBOL_GPL vmlinux 0x81221cad amd_nb_num +EXPORT_SYMBOL_GPL vmlinux 0x812d3bb5 crypto_shash_update +EXPORT_SYMBOL_GPL vmlinux 0x813b771b wakeup_source_remove +EXPORT_SYMBOL_GPL vmlinux 0x813cf212 nvme_io_timeout +EXPORT_SYMBOL_GPL vmlinux 0x81423a2f sock_diag_put_meminfo +EXPORT_SYMBOL_GPL vmlinux 0x8148823d dev_pm_opp_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x815588a6 clk_enable +EXPORT_SYMBOL_GPL vmlinux 0x815fda83 sed_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x8161e93d __tracepoint_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x8163096d page_cache_sync_ra +EXPORT_SYMBOL_GPL vmlinux 0x8167df6f dma_max_mapping_size +EXPORT_SYMBOL_GPL vmlinux 0x816928ae mbox_send_message +EXPORT_SYMBOL_GPL vmlinux 0x816a41ca cpufreq_update_limits +EXPORT_SYMBOL_GPL vmlinux 0x817e2f1e regmap_register_patch +EXPORT_SYMBOL_GPL vmlinux 0x8180cede asn1_encode_sequence +EXPORT_SYMBOL_GPL vmlinux 0x818c5eaa devlink_register +EXPORT_SYMBOL_GPL vmlinux 0x818c9289 tty_put_char +EXPORT_SYMBOL_GPL vmlinux 0x8193d39c __tracepoint_ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0x819d72cb klist_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0x81a7f541 percpu_ref_init +EXPORT_SYMBOL_GPL vmlinux 0x81b0421d ipv4_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x81b36a65 devm_hwspin_lock_free +EXPORT_SYMBOL_GPL vmlinux 0x81c4fe01 isa_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x81e2bdf4 generic_handle_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x81f372a2 unregister_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0x8200584f vp_modern_get_queue_size +EXPORT_SYMBOL_GPL vmlinux 0x82018978 devm_platform_ioremap_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0x82022c39 ata_acpi_stm +EXPORT_SYMBOL_GPL vmlinux 0x82047fbf handle_untracked_irq +EXPORT_SYMBOL_GPL vmlinux 0x82092899 badrange_forget +EXPORT_SYMBOL_GPL vmlinux 0x821a3e78 xhci_update_hub_device +EXPORT_SYMBOL_GPL vmlinux 0x82226c53 pinctrl_unregister_mappings +EXPORT_SYMBOL_GPL vmlinux 0x8226fac8 crypto_ahash_final +EXPORT_SYMBOL_GPL vmlinux 0x823eae06 blocking_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x824bf56b driver_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x82666aab pci_epc_map_addr +EXPORT_SYMBOL_GPL vmlinux 0x8271c6c1 dev_pm_opp_get_max_clock_latency +EXPORT_SYMBOL_GPL vmlinux 0x827bfe34 ata_port_desc +EXPORT_SYMBOL_GPL vmlinux 0x827e61f8 acpi_has_watchdog +EXPORT_SYMBOL_GPL vmlinux 0x827e9cea balloon_page_list_dequeue +EXPORT_SYMBOL_GPL vmlinux 0x828e22f4 hrtimer_forward +EXPORT_SYMBOL_GPL vmlinux 0x82965d66 intel_pinctrl_probe_by_uid +EXPORT_SYMBOL_GPL vmlinux 0x829c11cb regmap_parse_val +EXPORT_SYMBOL_GPL vmlinux 0x829f9253 spi_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0x82bd18b6 bpf_redirect_info +EXPORT_SYMBOL_GPL vmlinux 0x82bd7c78 __tracepoint_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x82d79b51 sysctl_vfs_cache_pressure +EXPORT_SYMBOL_GPL vmlinux 0x8328673f uv_bios_get_master_nasid +EXPORT_SYMBOL_GPL vmlinux 0x8335ca43 __SCT__tp_func_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x8336007c serial8250_do_startup +EXPORT_SYMBOL_GPL vmlinux 0x8339df73 klist_add_behind +EXPORT_SYMBOL_GPL vmlinux 0x8349a895 nvmem_device_put +EXPORT_SYMBOL_GPL vmlinux 0x8353dfff acpi_os_get_iomem +EXPORT_SYMBOL_GPL vmlinux 0x8367f64c bpf_trace_run12 +EXPORT_SYMBOL_GPL vmlinux 0x836d652f poll_state_synchronize_rcu_full +EXPORT_SYMBOL_GPL vmlinux 0x837776fa nvmem_layout_unregister +EXPORT_SYMBOL_GPL vmlinux 0x837a1205 cpufreq_generic_init +EXPORT_SYMBOL_GPL vmlinux 0x8382dbb8 usb_hcd_pci_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x8385c52c klp_get_state +EXPORT_SYMBOL_GPL vmlinux 0x83878af4 ata_pci_device_resume +EXPORT_SYMBOL_GPL vmlinux 0x83912daa __pci_epf_register_driver +EXPORT_SYMBOL_GPL vmlinux 0x83afb903 ata_cable_sata +EXPORT_SYMBOL_GPL vmlinux 0x83b4b5f7 fsverity_verify_bio +EXPORT_SYMBOL_GPL vmlinux 0x83b669d2 devm_clk_register +EXPORT_SYMBOL_GPL vmlinux 0x83d41234 devres_destroy +EXPORT_SYMBOL_GPL vmlinux 0x83d58c48 metadata_dst_free_percpu +EXPORT_SYMBOL_GPL vmlinux 0x83e319de devm_ioremap_uc +EXPORT_SYMBOL_GPL vmlinux 0x83e4a451 usb_ifnum_to_if +EXPORT_SYMBOL_GPL vmlinux 0x83e6d873 i2c_acpi_client_count +EXPORT_SYMBOL_GPL vmlinux 0x84006f32 devm_create_dev_dax +EXPORT_SYMBOL_GPL vmlinux 0x84106f36 devlink_trap_ctx_priv +EXPORT_SYMBOL_GPL vmlinux 0x84151ab9 blk_queue_write_cache +EXPORT_SYMBOL_GPL vmlinux 0x8415d439 zone_device_page_init +EXPORT_SYMBOL_GPL vmlinux 0x841ffe1b usb_phy_set_event +EXPORT_SYMBOL_GPL vmlinux 0x8425b9c3 xas_split_alloc +EXPORT_SYMBOL_GPL vmlinux 0x84264ced fs_umode_to_ftype +EXPORT_SYMBOL_GPL vmlinux 0x842f046d usb_poison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x8437ca37 i2c_recover_bus +EXPORT_SYMBOL_GPL vmlinux 0x843d70ef acpi_is_root_bridge +EXPORT_SYMBOL_GPL vmlinux 0x8442d1b3 rio_local_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0x84502a47 blk_status_to_errno +EXPORT_SYMBOL_GPL vmlinux 0x8462cb62 atapi_cmd_type +EXPORT_SYMBOL_GPL vmlinux 0x84666e80 tpm2_probe +EXPORT_SYMBOL_GPL vmlinux 0x847e9c46 rio_route_get_entry +EXPORT_SYMBOL_GPL vmlinux 0x8482e5aa irq_domain_xlate_onetwocell +EXPORT_SYMBOL_GPL vmlinux 0x848828ed virtqueue_add_sgs +EXPORT_SYMBOL_GPL vmlinux 0x849a3ada trace_get_event_file +EXPORT_SYMBOL_GPL vmlinux 0x84b268cf sn_coherency_id +EXPORT_SYMBOL_GPL vmlinux 0x84b9fd24 ata_link_online +EXPORT_SYMBOL_GPL vmlinux 0x84d1ee23 fixed_phy_register +EXPORT_SYMBOL_GPL vmlinux 0x84ef27f5 synth_event_add_fields +EXPORT_SYMBOL_GPL vmlinux 0x84f98b55 destroy_memory_type +EXPORT_SYMBOL_GPL vmlinux 0x84fe77ed irq_domain_get_irq_data +EXPORT_SYMBOL_GPL vmlinux 0x85068990 relay_open +EXPORT_SYMBOL_GPL vmlinux 0x8506baa8 clk_unregister_gate +EXPORT_SYMBOL_GPL vmlinux 0x850bb6db devlink_health_reporter_destroy +EXPORT_SYMBOL_GPL vmlinux 0x85142df4 sbitmap_queue_init_node +EXPORT_SYMBOL_GPL vmlinux 0x851e6003 usb_phy_roothub_calibrate +EXPORT_SYMBOL_GPL vmlinux 0x85224b28 misc_cg_set_capacity +EXPORT_SYMBOL_GPL vmlinux 0x85329672 fpu_swap_kvm_fpstate +EXPORT_SYMBOL_GPL vmlinux 0x8535249a ipv6_recv_error +EXPORT_SYMBOL_GPL vmlinux 0x8537d14c devres_release +EXPORT_SYMBOL_GPL vmlinux 0x85540ebc nvmem_cell_put +EXPORT_SYMBOL_GPL vmlinux 0x856e95ca cookie_tcp_reqsk_alloc +EXPORT_SYMBOL_GPL vmlinux 0x85827441 usb_set_configuration +EXPORT_SYMBOL_GPL vmlinux 0x85876194 __tracepoint_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0x858790b0 __tracepoint_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0x858e2628 dax_holder +EXPORT_SYMBOL_GPL vmlinux 0x8591d9db rio_mport_initialize +EXPORT_SYMBOL_GPL vmlinux 0x85952f10 devl_resource_occ_get_register +EXPORT_SYMBOL_GPL vmlinux 0x859708b2 unregister_net_sysctl_table +EXPORT_SYMBOL_GPL vmlinux 0x859a197f mmc_regulator_set_ocr +EXPORT_SYMBOL_GPL vmlinux 0x85a5b0ea inet_splice_eof +EXPORT_SYMBOL_GPL vmlinux 0x85a898d4 device_show_bool +EXPORT_SYMBOL_GPL vmlinux 0x85b15444 arch_set_max_freq_ratio +EXPORT_SYMBOL_GPL vmlinux 0x85bd7442 generic_access_phys +EXPORT_SYMBOL_GPL vmlinux 0x85bfc5f9 __SCT__tp_func_block_rq_insert +EXPORT_SYMBOL_GPL vmlinux 0x85cb2c45 xen_has_pv_devices +EXPORT_SYMBOL_GPL vmlinux 0x85ccc08c nvme_remove_admin_tag_set +EXPORT_SYMBOL_GPL vmlinux 0x85d7edfd hpet_set_periodic_freq +EXPORT_SYMBOL_GPL vmlinux 0x85d949c0 dm_table_set_type +EXPORT_SYMBOL_GPL vmlinux 0x85dac778 tdx_guest_keyid_free +EXPORT_SYMBOL_GPL vmlinux 0x85eed1be iopf_queue_discard_partial +EXPORT_SYMBOL_GPL vmlinux 0x85efabfb usb_get_dev +EXPORT_SYMBOL_GPL vmlinux 0x85f4e487 devm_gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x85ff36cd sock_prot_inuse_get +EXPORT_SYMBOL_GPL vmlinux 0x86169f3e amd_smn_write +EXPORT_SYMBOL_GPL vmlinux 0x861a7a70 fscrypt_dummy_policies_equal +EXPORT_SYMBOL_GPL vmlinux 0x862258db timecounter_init +EXPORT_SYMBOL_GPL vmlinux 0x8622e6a3 nexthop_find_by_id +EXPORT_SYMBOL_GPL vmlinux 0x862bb17b linear_range_values_in_range_array +EXPORT_SYMBOL_GPL vmlinux 0x863acf52 ncsi_start_dev +EXPORT_SYMBOL_GPL vmlinux 0x8650d167 net_selftest +EXPORT_SYMBOL_GPL vmlinux 0x86585a33 devlink_fmsg_obj_nest_start +EXPORT_SYMBOL_GPL vmlinux 0x86623fd7 notify_remote_via_irq +EXPORT_SYMBOL_GPL vmlinux 0x86700220 acpi_get_cpuid +EXPORT_SYMBOL_GPL vmlinux 0x8677245d unregister_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0x8677f369 pvclock_get_pvti_cpu0_va +EXPORT_SYMBOL_GPL vmlinux 0x86871b40 devlink_info_version_stored_put_ext +EXPORT_SYMBOL_GPL vmlinux 0x868784cb __symbol_get +EXPORT_SYMBOL_GPL vmlinux 0x868aa537 pci_find_next_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0x868ff580 ata_ehi_clear_desc +EXPORT_SYMBOL_GPL vmlinux 0x8696808c phy_gbit_features +EXPORT_SYMBOL_GPL vmlinux 0x86975164 iomap_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0x86a913fa irq_chip_set_vcpu_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0x86b13d2a usb_unpoison_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x86c43a8c cper_estatus_check +EXPORT_SYMBOL_GPL vmlinux 0x86ca756d __mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0x86db5b51 xfrm_audit_state_replay +EXPORT_SYMBOL_GPL vmlinux 0x86e80f7a ata_eh_read_sense_success_ncq_log +EXPORT_SYMBOL_GPL vmlinux 0x86f6b99d synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0x86f85114 net_dec_egress_queue +EXPORT_SYMBOL_GPL vmlinux 0x870e16b7 xen_test_irq_shared +EXPORT_SYMBOL_GPL vmlinux 0x87149de2 crypto_register_ahash +EXPORT_SYMBOL_GPL vmlinux 0x8716bedc __platform_driver_probe +EXPORT_SYMBOL_GPL vmlinux 0x871bd6d7 auxiliary_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x87258a37 mas_store +EXPORT_SYMBOL_GPL vmlinux 0x872d4f7c __SCT__tp_func_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0x8735ed3d irq_set_affinity_notifier +EXPORT_SYMBOL_GPL vmlinux 0x87360237 devm_irq_setup_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0x873ad796 rio_release_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0x8760d6e7 regulator_bulk_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x876a9e61 dma_run_dependencies +EXPORT_SYMBOL_GPL vmlinux 0x878f2efe fat_time_fat2unix +EXPORT_SYMBOL_GPL vmlinux 0x87908767 xas_clear_mark +EXPORT_SYMBOL_GPL vmlinux 0x87b210d0 clkdev_create +EXPORT_SYMBOL_GPL vmlinux 0x87c0416d device_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0x87d2e182 set_secondary_fwnode +EXPORT_SYMBOL_GPL vmlinux 0x87e64181 amd_nb_has_feature +EXPORT_SYMBOL_GPL vmlinux 0x87e9a084 __traceiter_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0x87f34e99 disable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x87f59f1b device_remove_bin_file +EXPORT_SYMBOL_GPL vmlinux 0x87fcdc69 iomap_read_folio +EXPORT_SYMBOL_GPL vmlinux 0x87fd97f0 pci_free_p2pmem +EXPORT_SYMBOL_GPL vmlinux 0x8816d138 acpi_unbind_one +EXPORT_SYMBOL_GPL vmlinux 0x881f56ad finish_rcuwait +EXPORT_SYMBOL_GPL vmlinux 0x88391fa9 cpufreq_freq_attr_scaling_available_freqs +EXPORT_SYMBOL_GPL vmlinux 0x883e307e phy_power_off +EXPORT_SYMBOL_GPL vmlinux 0x885528a6 ring_buffer_discard_commit +EXPORT_SYMBOL_GPL vmlinux 0x88720b0c xdp_rxq_info_unreg_mem_model +EXPORT_SYMBOL_GPL vmlinux 0x8875f3ed nvme_fail_nonready_command +EXPORT_SYMBOL_GPL vmlinux 0x88833cf4 md_rdev_init +EXPORT_SYMBOL_GPL vmlinux 0x8883919b devfreq_event_get_event +EXPORT_SYMBOL_GPL vmlinux 0x88947272 skcipher_walk_complete +EXPORT_SYMBOL_GPL vmlinux 0x889547c9 __devm_pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0x88a00054 simple_rename_exchange +EXPORT_SYMBOL_GPL vmlinux 0x88a2a855 usb_set_interface +EXPORT_SYMBOL_GPL vmlinux 0x88ab6fe3 kgdb_active +EXPORT_SYMBOL_GPL vmlinux 0x88aefca4 dev_attr_link_power_management_policy +EXPORT_SYMBOL_GPL vmlinux 0x88b4ae92 ring_buffer_normalize_time_stamp +EXPORT_SYMBOL_GPL vmlinux 0x88b4f5d7 mctrl_gpio_init +EXPORT_SYMBOL_GPL vmlinux 0x88b5862d unregister_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x88c943b4 bpf_prog_inc +EXPORT_SYMBOL_GPL vmlinux 0x88cc4ced security_inode_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x88cce6a0 xas_find_marked +EXPORT_SYMBOL_GPL vmlinux 0x88d8ad1d clk_hw_determine_rate_no_reparent +EXPORT_SYMBOL_GPL vmlinux 0x88daffc8 pci_msi_unmask_irq +EXPORT_SYMBOL_GPL vmlinux 0x88e292fb tdx_mcall_extend_rtmr +EXPORT_SYMBOL_GPL vmlinux 0x88ea8561 vcap_keyset_name +EXPORT_SYMBOL_GPL vmlinux 0x88eb50d9 fs_kobj +EXPORT_SYMBOL_GPL vmlinux 0x88ec8d08 pcie_update_link_speed +EXPORT_SYMBOL_GPL vmlinux 0x88ef0ff8 ethtool_params_from_link_mode +EXPORT_SYMBOL_GPL vmlinux 0x88fac4e8 xhci_msi_irq +EXPORT_SYMBOL_GPL vmlinux 0x890261da nvme_unfreeze +EXPORT_SYMBOL_GPL vmlinux 0x890689eb perf_aux_output_flag +EXPORT_SYMBOL_GPL vmlinux 0x890d4cf9 virtqueue_resize +EXPORT_SYMBOL_GPL vmlinux 0x890f4f97 __kprobe_event_gen_cmd_start +EXPORT_SYMBOL_GPL vmlinux 0x890fa0fa btree_get_prev +EXPORT_SYMBOL_GPL vmlinux 0x891a5a7f gnttab_max_grant_frames +EXPORT_SYMBOL_GPL vmlinux 0x8920fbbd netdev_set_default_ethtool_ops +EXPORT_SYMBOL_GPL vmlinux 0x8924eb1e rcu_force_quiescent_state +EXPORT_SYMBOL_GPL vmlinux 0x8928cd67 tps6586x_reads +EXPORT_SYMBOL_GPL vmlinux 0x892e3fd7 scsi_schedule_eh +EXPORT_SYMBOL_GPL vmlinux 0x892f9f04 __SCT__tp_func_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0x893abbdd devlink_fmsg_u32_pair_put +EXPORT_SYMBOL_GPL vmlinux 0x893c5ddb unlock_system_sleep +EXPORT_SYMBOL_GPL vmlinux 0x89485687 iommu_group_put +EXPORT_SYMBOL_GPL vmlinux 0x8949bc6f debugfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x8954913e usb_disable_lpm +EXPORT_SYMBOL_GPL vmlinux 0x8954ed7d platform_device_add +EXPORT_SYMBOL_GPL vmlinux 0x895dbd45 iommu_get_domain_for_dev +EXPORT_SYMBOL_GPL vmlinux 0x89649e11 bus_for_each_drv +EXPORT_SYMBOL_GPL vmlinux 0x896b1751 regulator_force_disable +EXPORT_SYMBOL_GPL vmlinux 0x896c87a4 __traceiter_sched_update_nr_running_tp +EXPORT_SYMBOL_GPL vmlinux 0x896cdad2 task_active_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0x899ddb8e gpiochip_populate_parent_fwspec_twocell +EXPORT_SYMBOL_GPL vmlinux 0x89ae7aa0 rsa_parse_pub_key +EXPORT_SYMBOL_GPL vmlinux 0x89af06f4 dm_noflush_suspending +EXPORT_SYMBOL_GPL vmlinux 0x89b37850 __SCK__tp_func_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x89b821b2 blk_revalidate_disk_zones +EXPORT_SYMBOL_GPL vmlinux 0x89bbafc6 usb_register_notify +EXPORT_SYMBOL_GPL vmlinux 0x89bf246d fb_sys_write +EXPORT_SYMBOL_GPL vmlinux 0x89d857d9 hwspin_lock_get_id +EXPORT_SYMBOL_GPL vmlinux 0x89dbcebf modify_ftrace_direct_nolock +EXPORT_SYMBOL_GPL vmlinux 0x89e1ec9d acpi_get_subsystem_id +EXPORT_SYMBOL_GPL vmlinux 0x89e340cf acpi_bus_get_ejd +EXPORT_SYMBOL_GPL vmlinux 0x89f54136 synth_event_trace_array +EXPORT_SYMBOL_GPL vmlinux 0x89ff6621 vp_modern_get_features +EXPORT_SYMBOL_GPL vmlinux 0x8a01b445 pm_generic_resume_early +EXPORT_SYMBOL_GPL vmlinux 0x8a0d5198 ipv4_redirect +EXPORT_SYMBOL_GPL vmlinux 0x8a3968c7 dm_audit_log_ti +EXPORT_SYMBOL_GPL vmlinux 0x8a3f84ba linear_range_get_selector_low +EXPORT_SYMBOL_GPL vmlinux 0x8a4234ff component_master_del +EXPORT_SYMBOL_GPL vmlinux 0x8a433b52 acpi_bus_trim +EXPORT_SYMBOL_GPL vmlinux 0x8a45a555 acpi_unregister_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0x8a461116 kthread_queue_work +EXPORT_SYMBOL_GPL vmlinux 0x8a46cb6c mc146818_avoid_UIP +EXPORT_SYMBOL_GPL vmlinux 0x8a5c1029 __SCT__tp_func_xhci_dbg_init +EXPORT_SYMBOL_GPL vmlinux 0x8a62b81b sfp_upstream_stop +EXPORT_SYMBOL_GPL vmlinux 0x8a7bcd38 fat_remove_entries +EXPORT_SYMBOL_GPL vmlinux 0x8a7cb9c4 platform_thermal_package_rate_control +EXPORT_SYMBOL_GPL vmlinux 0x8a7fed66 shash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0x8a835f19 skb_to_sgvec_nomark +EXPORT_SYMBOL_GPL vmlinux 0x8a838ef6 intel_scu_ipc_dev_put +EXPORT_SYMBOL_GPL vmlinux 0x8a83fb45 mpi_point_free_parts +EXPORT_SYMBOL_GPL vmlinux 0x8a8e80d7 evm_inode_init_security +EXPORT_SYMBOL_GPL vmlinux 0x8aa91c9d fscrypt_ioctl_get_key_status +EXPORT_SYMBOL_GPL vmlinux 0x8aae1f60 __tracepoint_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8ab015bd debugfs_create_u8 +EXPORT_SYMBOL_GPL vmlinux 0x8ab3381f device_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x8ab5350f devlink_is_reload_failed +EXPORT_SYMBOL_GPL vmlinux 0x8abacc47 get_max_files +EXPORT_SYMBOL_GPL vmlinux 0x8ac1407b sfp_get_module_eeprom +EXPORT_SYMBOL_GPL vmlinux 0x8ac39638 pm_generic_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0x8ac6ea05 __vfs_removexattr_locked +EXPORT_SYMBOL_GPL vmlinux 0x8ad5ceb1 __uv_hub_info_list +EXPORT_SYMBOL_GPL vmlinux 0x8adec087 sis_info133_for_sata +EXPORT_SYMBOL_GPL vmlinux 0x8afacba3 gpiochip_add_data_with_key +EXPORT_SYMBOL_GPL vmlinux 0x8b0cb0ea tracing_cond_snapshot_data +EXPORT_SYMBOL_GPL vmlinux 0x8b143456 ehci_reset +EXPORT_SYMBOL_GPL vmlinux 0x8b149c36 clk_is_match +EXPORT_SYMBOL_GPL vmlinux 0x8b4149e4 cppc_perf_ctrs_in_pcc +EXPORT_SYMBOL_GPL vmlinux 0x8b430ed6 pci_d3cold_enable +EXPORT_SYMBOL_GPL vmlinux 0x8b47ea1d __SCT__tp_func_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0x8b68e8c5 power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0x8b69a71f devl_dpipe_table_resource_set +EXPORT_SYMBOL_GPL vmlinux 0x8b7fb506 pinctrl_find_and_add_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0x8b857095 __dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0x8b878b3e hte_push_ts_ns +EXPORT_SYMBOL_GPL vmlinux 0x8b89f01c hv_ghcb_hypercall +EXPORT_SYMBOL_GPL vmlinux 0x8b8cc689 enable_kprobe +EXPORT_SYMBOL_GPL vmlinux 0x8b9200fd lookup_address +EXPORT_SYMBOL_GPL vmlinux 0x8b95e6a2 __SCT__tp_func_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0x8bbc2fe3 phy_init +EXPORT_SYMBOL_GPL vmlinux 0x8bbe4b92 fib_rules_register +EXPORT_SYMBOL_GPL vmlinux 0x8bd57224 bus_unregister +EXPORT_SYMBOL_GPL vmlinux 0x8bed44a2 sk_free_unlock_clone +EXPORT_SYMBOL_GPL vmlinux 0x8bee12a2 __fsnotify_parent +EXPORT_SYMBOL_GPL vmlinux 0x8bf64de9 __mdiobus_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0x8c0215f2 pm_system_wakeup +EXPORT_SYMBOL_GPL vmlinux 0x8c03d20c destroy_workqueue +EXPORT_SYMBOL_GPL vmlinux 0x8c09cb50 vcap_rule_add_action_u32 +EXPORT_SYMBOL_GPL vmlinux 0x8c0ed103 rcu_check_boost_fail +EXPORT_SYMBOL_GPL vmlinux 0x8c275721 usb_hcd_map_urb_for_dma +EXPORT_SYMBOL_GPL vmlinux 0x8c2aaf40 irq_chip_unmask_parent +EXPORT_SYMBOL_GPL vmlinux 0x8c341c48 current_save_fsgs +EXPORT_SYMBOL_GPL vmlinux 0x8c3756bd sock_diag_register_inet_compat +EXPORT_SYMBOL_GPL vmlinux 0x8c38d768 dev_pm_opp_find_bw_floor +EXPORT_SYMBOL_GPL vmlinux 0x8c45c332 fib_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0x8c484409 gnttab_release_grant_reference +EXPORT_SYMBOL_GPL vmlinux 0x8c4d2428 mt_prev +EXPORT_SYMBOL_GPL vmlinux 0x8c4fded2 sgx_virt_einit +EXPORT_SYMBOL_GPL vmlinux 0x8c720e5b crypto_register_shash +EXPORT_SYMBOL_GPL vmlinux 0x8c743fb6 reset_control_status +EXPORT_SYMBOL_GPL vmlinux 0x8c7d86dc user_update +EXPORT_SYMBOL_GPL vmlinux 0x8c80057e dev_pm_opp_get_opp_table +EXPORT_SYMBOL_GPL vmlinux 0x8c837e4e devm_init_badblocks +EXPORT_SYMBOL_GPL vmlinux 0x8c89e3b8 usb_phy_roothub_power_off +EXPORT_SYMBOL_GPL vmlinux 0x8c8d2374 dma_fence_unwrap_first +EXPORT_SYMBOL_GPL vmlinux 0x8c98d248 unregister_vmcore_cb +EXPORT_SYMBOL_GPL vmlinux 0x8c9b6dd6 __fsverity_prepare_setattr +EXPORT_SYMBOL_GPL vmlinux 0x8c9e363a sysfs_add_link_to_group +EXPORT_SYMBOL_GPL vmlinux 0x8c9e54d3 devlink_info_version_running_put_ext +EXPORT_SYMBOL_GPL vmlinux 0x8ca69604 devm_blk_crypto_profile_init +EXPORT_SYMBOL_GPL vmlinux 0x8cbd1731 skb_complete_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0x8cbd262e tpm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8cd90c83 unregister_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0x8cdaa689 addrconf_add_linklocal +EXPORT_SYMBOL_GPL vmlinux 0x8ce0ee03 dev_pm_opp_is_turbo +EXPORT_SYMBOL_GPL vmlinux 0x8ce4a5f2 __tracepoint_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0x8cf13d2d put_io_context +EXPORT_SYMBOL_GPL vmlinux 0x8cf2c309 irq_domain_set_hwirq_and_chip +EXPORT_SYMBOL_GPL vmlinux 0x8cf83bf1 bpf_prog_select_runtime +EXPORT_SYMBOL_GPL vmlinux 0x8d0bd3f3 usb_queue_reset_device +EXPORT_SYMBOL_GPL vmlinux 0x8d0ef533 usb_sg_cancel +EXPORT_SYMBOL_GPL vmlinux 0x8d1c8134 devm_nvmem_device_get +EXPORT_SYMBOL_GPL vmlinux 0x8d1f14b5 udp_destruct_common +EXPORT_SYMBOL_GPL vmlinux 0x8d22bb58 iommu_group_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d2f6d31 input_class +EXPORT_SYMBOL_GPL vmlinux 0x8d3330b6 cpuacct_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0x8d63b291 irq_chip_request_resources_parent +EXPORT_SYMBOL_GPL vmlinux 0x8d6afee1 devlink_port_init +EXPORT_SYMBOL_GPL vmlinux 0x8d7e3373 hwpoison_filter_dev_major +EXPORT_SYMBOL_GPL vmlinux 0x8d815167 devm_regulator_get_enable +EXPORT_SYMBOL_GPL vmlinux 0x8d8fd930 ethnl_cable_test_alloc +EXPORT_SYMBOL_GPL vmlinux 0x8d908ebf power_supply_get_maintenance_charging_setting +EXPORT_SYMBOL_GPL vmlinux 0x8db1c7ee gpiod_put_array +EXPORT_SYMBOL_GPL vmlinux 0x8dc744e5 nvme_set_features +EXPORT_SYMBOL_GPL vmlinux 0x8dd17c28 devm_rtc_device_register +EXPORT_SYMBOL_GPL vmlinux 0x8dd218b0 icc_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0x8dd4a113 trace_event_ignore_this_pid +EXPORT_SYMBOL_GPL vmlinux 0x8dd87e4b __tracepoint_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0x8df1ff91 tcp_enter_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0x8df87cb9 usb_get_maximum_ssp_rate +EXPORT_SYMBOL_GPL vmlinux 0x8df9bc61 register_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0x8e15152b mptcp_subflow_init_cookie_req +EXPORT_SYMBOL_GPL vmlinux 0x8e1f4638 devm_kmemdup +EXPORT_SYMBOL_GPL vmlinux 0x8e22d1bd tracing_snapshot_cond_enable +EXPORT_SYMBOL_GPL vmlinux 0x8e3ade50 sysfs_update_groups +EXPORT_SYMBOL_GPL vmlinux 0x8e3d911b arch_phys_wc_index +EXPORT_SYMBOL_GPL vmlinux 0x8e4eb451 bpf_sk_storage_diag_free +EXPORT_SYMBOL_GPL vmlinux 0x8e5e3e33 nvme_complete_batch_req +EXPORT_SYMBOL_GPL vmlinux 0x8e6779dd pci_disable_pri +EXPORT_SYMBOL_GPL vmlinux 0x8e6b1a9e net_selftest_get_count +EXPORT_SYMBOL_GPL vmlinux 0x8e6ef5c2 pcc_mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x8e6fa8b5 apei_exec_pre_map_gars +EXPORT_SYMBOL_GPL vmlinux 0x8e9656a3 ata_qc_complete +EXPORT_SYMBOL_GPL vmlinux 0x8e9bd4a3 hv_alloc_hyperv_page +EXPORT_SYMBOL_GPL vmlinux 0x8e9ffaa2 anon_inode_getfd +EXPORT_SYMBOL_GPL vmlinux 0x8ead800c user_free_preparse +EXPORT_SYMBOL_GPL vmlinux 0x8ecac1c6 ptp_classify_raw +EXPORT_SYMBOL_GPL vmlinux 0x8ecbff1e xhci_reset_bandwidth +EXPORT_SYMBOL_GPL vmlinux 0x8ed52d56 vcap_tc_flower_handler_arp_usage +EXPORT_SYMBOL_GPL vmlinux 0x8edfe051 ext_pi_type3_crc64 +EXPORT_SYMBOL_GPL vmlinux 0x8ee586e9 da9052_request_irq +EXPORT_SYMBOL_GPL vmlinux 0x8eec8461 nvmem_cell_read_u16 +EXPORT_SYMBOL_GPL vmlinux 0x8eecaf37 tpm_tis_core_init +EXPORT_SYMBOL_GPL vmlinux 0x8eee3399 dax_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0x8f0005ca rio_mport_get_physefb +EXPORT_SYMBOL_GPL vmlinux 0x8f00f6d1 vhost_task_start +EXPORT_SYMBOL_GPL vmlinux 0x8f05048b of_pwm_single_xlate +EXPORT_SYMBOL_GPL vmlinux 0x8f0748af rcu_expedite_gp +EXPORT_SYMBOL_GPL vmlinux 0x8f0b781d iova_domain_init_rcaches +EXPORT_SYMBOL_GPL vmlinux 0x8f15c4a1 pci_load_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x8f164dfc dev_pm_qos_expose_flags +EXPORT_SYMBOL_GPL vmlinux 0x8f1d0612 strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0x8f1ec1c1 pci_epc_map_msi_irq +EXPORT_SYMBOL_GPL vmlinux 0x8f2495c2 crypto_unregister_scomps +EXPORT_SYMBOL_GPL vmlinux 0x8f2eb429 kvm_arch_para_hints +EXPORT_SYMBOL_GPL vmlinux 0x8f322c11 tcp_reno_undo_cwnd +EXPORT_SYMBOL_GPL vmlinux 0x8f38b12d vcap_del_rule +EXPORT_SYMBOL_GPL vmlinux 0x8f39d817 mmc_regulator_get_supply +EXPORT_SYMBOL_GPL vmlinux 0x8f420c10 wm8350_device_init +EXPORT_SYMBOL_GPL vmlinux 0x8f4447c7 cgroup_get_from_fd +EXPORT_SYMBOL_GPL vmlinux 0x8f4bae56 key_type_logon +EXPORT_SYMBOL_GPL vmlinux 0x8f51775b debugfs_file_get +EXPORT_SYMBOL_GPL vmlinux 0x8f561f3b usb_autopm_put_interface_no_suspend +EXPORT_SYMBOL_GPL vmlinux 0x8f58a39a acpi_data_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0x8f5dbcf6 pci_p2pdma_enable_show +EXPORT_SYMBOL_GPL vmlinux 0x8f622bd4 icc_provider_init +EXPORT_SYMBOL_GPL vmlinux 0x8f6cee77 __round_jiffies_relative +EXPORT_SYMBOL_GPL vmlinux 0x8f776bd4 tcp_cong_avoid_ai +EXPORT_SYMBOL_GPL vmlinux 0x8f786bee fs_umode_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0x8f7a292c usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0x8f7bd0a6 btree_init_mempool +EXPORT_SYMBOL_GPL vmlinux 0x8f927140 sysfs_remove_files +EXPORT_SYMBOL_GPL vmlinux 0x8f92853a __bio_release_pages +EXPORT_SYMBOL_GPL vmlinux 0x8f9a0727 bio_associate_blkg +EXPORT_SYMBOL_GPL vmlinux 0x8fa5a6ee dev_fetch_sw_netstats +EXPORT_SYMBOL_GPL vmlinux 0x8fa9d9e8 __SCT__tp_func_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0x8faa800d acpi_cpc_valid +EXPORT_SYMBOL_GPL vmlinux 0x8fb0493e skb_tstamp_tx +EXPORT_SYMBOL_GPL vmlinux 0x8fb319dd virtqueue_disable_cb +EXPORT_SYMBOL_GPL vmlinux 0x8fc12788 software_node_unregister_node_group +EXPORT_SYMBOL_GPL vmlinux 0x8fca0669 init_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0x8fd7bf22 skb_send_sock_locked +EXPORT_SYMBOL_GPL vmlinux 0x8ff60436 mpi_ec_add_points +EXPORT_SYMBOL_GPL vmlinux 0x8fff75a4 devm_release_action +EXPORT_SYMBOL_GPL vmlinux 0x900291c4 crypto_ahash_setkey +EXPORT_SYMBOL_GPL vmlinux 0x9023ff61 genphy_c45_aneg_done +EXPORT_SYMBOL_GPL vmlinux 0x9024f443 mds_user_clear +EXPORT_SYMBOL_GPL vmlinux 0x902aaedd scsi_dh_activate +EXPORT_SYMBOL_GPL vmlinux 0x903b627c list_lru_isolate_move +EXPORT_SYMBOL_GPL vmlinux 0x9049d380 cpufreq_dbs_governor_start +EXPORT_SYMBOL_GPL vmlinux 0x905e6cfa tcp_is_ulp_esp +EXPORT_SYMBOL_GPL vmlinux 0x9061f8b6 dm_internal_resume +EXPORT_SYMBOL_GPL vmlinux 0x906e313f devlink_trap_groups_register +EXPORT_SYMBOL_GPL vmlinux 0x9070925e nvme_auth_extract_key +EXPORT_SYMBOL_GPL vmlinux 0x9084b044 clear_page_erms +EXPORT_SYMBOL_GPL vmlinux 0x9088d026 serial8250_rx_dma_flush +EXPORT_SYMBOL_GPL vmlinux 0x90899361 shash_free_singlespawn_instance +EXPORT_SYMBOL_GPL vmlinux 0x909a8ce0 gpiod_is_active_low +EXPORT_SYMBOL_GPL vmlinux 0x909cbb83 tracepoint_srcu +EXPORT_SYMBOL_GPL vmlinux 0x90a45161 generic_fh_to_dentry +EXPORT_SYMBOL_GPL vmlinux 0x90a6b019 __devm_regmap_init +EXPORT_SYMBOL_GPL vmlinux 0x90a9d8cc hv_is_hyperv_initialized +EXPORT_SYMBOL_GPL vmlinux 0x90b022da inet_pernet_hashinfo_alloc +EXPORT_SYMBOL_GPL vmlinux 0x90bf0954 dev_pm_opp_find_freq_exact +EXPORT_SYMBOL_GPL vmlinux 0x90c48b64 phy_pm_runtime_get_sync +EXPORT_SYMBOL_GPL vmlinux 0x90c63782 gpiod_set_config +EXPORT_SYMBOL_GPL vmlinux 0x90c8498c apei_exec_write_register +EXPORT_SYMBOL_GPL vmlinux 0x90d1707b PageHuge +EXPORT_SYMBOL_GPL vmlinux 0x90d8c180 blk_queue_max_discard_segments +EXPORT_SYMBOL_GPL vmlinux 0x90de0452 platform_thermal_package_notify +EXPORT_SYMBOL_GPL vmlinux 0x90e30dd5 devm_gpio_request_one +EXPORT_SYMBOL_GPL vmlinux 0x90fd4efa perf_pmu_unregister +EXPORT_SYMBOL_GPL vmlinux 0x91077b61 get_device_system_crosststamp +EXPORT_SYMBOL_GPL vmlinux 0x9107d224 __SCT__tp_func_arm_event +EXPORT_SYMBOL_GPL vmlinux 0x910bdf6b trace_seq_vprintf +EXPORT_SYMBOL_GPL vmlinux 0x910c07fe wm8350_reg_write +EXPORT_SYMBOL_GPL vmlinux 0x911c9f18 iomap_swapfile_activate +EXPORT_SYMBOL_GPL vmlinux 0x9124f0a1 tpm_get_timeouts +EXPORT_SYMBOL_GPL vmlinux 0x912ae653 evm_verifyxattr +EXPORT_SYMBOL_GPL vmlinux 0x913814b8 crypto_hash_walk_first +EXPORT_SYMBOL_GPL vmlinux 0x913ebd32 stack_depot_save +EXPORT_SYMBOL_GPL vmlinux 0x913f4546 __SCK__tp_func_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0x914573ad ata_sas_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0x914aaa3b gpiochip_disable_irq +EXPORT_SYMBOL_GPL vmlinux 0x9178868e debugfs_create_x8 +EXPORT_SYMBOL_GPL vmlinux 0x917bc1cc ata_acpi_gtm_xfermask +EXPORT_SYMBOL_GPL vmlinux 0x917d953b __SCT__tp_func_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0x9189df5d fscrypt_dio_supported +EXPORT_SYMBOL_GPL vmlinux 0x9194e18f xenbus_mkdir +EXPORT_SYMBOL_GPL vmlinux 0x91955a9f start_poll_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0x91983c25 blk_lld_busy +EXPORT_SYMBOL_GPL vmlinux 0x919926dc cpufreq_dbs_governor_exit +EXPORT_SYMBOL_GPL vmlinux 0x91b774a1 mpi_scanval +EXPORT_SYMBOL_GPL vmlinux 0x91b9a4ba e820__mapped_any +EXPORT_SYMBOL_GPL vmlinux 0x91c59e7e xhci_add_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x91c6e5b0 pcap_to_irq +EXPORT_SYMBOL_GPL vmlinux 0x91ea8726 asn1_encode_boolean +EXPORT_SYMBOL_GPL vmlinux 0x91f40047 pci_aer_clear_nonfatal_status +EXPORT_SYMBOL_GPL vmlinux 0x91f99de9 cpufreq_driver_fast_switch +EXPORT_SYMBOL_GPL vmlinux 0x920cc389 visitorl +EXPORT_SYMBOL_GPL vmlinux 0x920efe9c debugfs_create_size_t +EXPORT_SYMBOL_GPL vmlinux 0x92141343 kvm_async_pf_task_wake +EXPORT_SYMBOL_GPL vmlinux 0x92225560 wakeup_source_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9230d659 nvme_alloc_admin_tag_set +EXPORT_SYMBOL_GPL vmlinux 0x923e42aa sysfb_disable +EXPORT_SYMBOL_GPL vmlinux 0x9241b358 __static_key_slow_dec_deferred +EXPORT_SYMBOL_GPL vmlinux 0x924c46f8 zs_unmap_object +EXPORT_SYMBOL_GPL vmlinux 0x925579e0 gen10g_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0x92570a64 __SCK__tp_func_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0x92717586 fib_rules_seq_read +EXPORT_SYMBOL_GPL vmlinux 0x92727674 vcap_tc_flower_handler_cvlan_usage +EXPORT_SYMBOL_GPL vmlinux 0x929e95cf psi_memstall_enter +EXPORT_SYMBOL_GPL vmlinux 0x92ac22b9 pci_bus_max_busnr +EXPORT_SYMBOL_GPL vmlinux 0x92b8c78b hyperv_pcpu_output_arg +EXPORT_SYMBOL_GPL vmlinux 0x92c0ca38 extract_iter_to_sg +EXPORT_SYMBOL_GPL vmlinux 0x92cf74aa vcap_admin_rule_count +EXPORT_SYMBOL_GPL vmlinux 0x92d31cfb fixed_phy_add +EXPORT_SYMBOL_GPL vmlinux 0x92db5d15 sbitmap_show +EXPORT_SYMBOL_GPL vmlinux 0x92db8f68 do_trace_rcu_torture_read +EXPORT_SYMBOL_GPL vmlinux 0x92e8e9ab fsverity_enqueue_verify_work +EXPORT_SYMBOL_GPL vmlinux 0x92ef6b99 nf_queue_nf_hook_drop +EXPORT_SYMBOL_GPL vmlinux 0x9301fd2e inet_csk_update_pmtu +EXPORT_SYMBOL_GPL vmlinux 0x93074591 pci_platform_power_transition +EXPORT_SYMBOL_GPL vmlinux 0x93199177 rcuwait_wake_up +EXPORT_SYMBOL_GPL vmlinux 0x93255b2b ring_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0x932c8d7a linear_range_get_value_array +EXPORT_SYMBOL_GPL vmlinux 0x93335116 led_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0x93366e5f securityfs_create_symlink +EXPORT_SYMBOL_GPL vmlinux 0x933cf298 ethnl_cable_test_finished +EXPORT_SYMBOL_GPL vmlinux 0x933f75e0 usb_unlink_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x935346fe __sbitmap_queue_get +EXPORT_SYMBOL_GPL vmlinux 0x935f3c5c balloon_mops +EXPORT_SYMBOL_GPL vmlinux 0x935f4610 devl_rate_leaf_create +EXPORT_SYMBOL_GPL vmlinux 0x93605e9a vfsgid_in_group_p +EXPORT_SYMBOL_GPL vmlinux 0x936234eb usb_asmedia_modifyflowcontrol +EXPORT_SYMBOL_GPL vmlinux 0x9372c6bb led_trigger_set_default +EXPORT_SYMBOL_GPL vmlinux 0x93903141 blk_clear_pm_only +EXPORT_SYMBOL_GPL vmlinux 0x93a7c65d da9052_disable_irq_nosync +EXPORT_SYMBOL_GPL vmlinux 0x93c7edeb usb_find_common_endpoints +EXPORT_SYMBOL_GPL vmlinux 0x93d1d424 gnttab_free_grant_references +EXPORT_SYMBOL_GPL vmlinux 0x93d7e50a unix_inq_len +EXPORT_SYMBOL_GPL vmlinux 0x93dc2586 pgprot_writethrough +EXPORT_SYMBOL_GPL vmlinux 0x93e32a06 iommu_detach_device_pasid +EXPORT_SYMBOL_GPL vmlinux 0x93eb9c83 ethnl_cable_test_free +EXPORT_SYMBOL_GPL vmlinux 0x93ebdf96 mt_next +EXPORT_SYMBOL_GPL vmlinux 0x93edef07 devlink_health_report +EXPORT_SYMBOL_GPL vmlinux 0x940914fa usb_sg_wait +EXPORT_SYMBOL_GPL vmlinux 0x9413cf1a serdev_device_wait_until_sent +EXPORT_SYMBOL_GPL vmlinux 0x9415b289 add_disk_randomness +EXPORT_SYMBOL_GPL vmlinux 0x9418ea78 sk_msg_is_readable +EXPORT_SYMBOL_GPL vmlinux 0x941f2aaa eventfd_ctx_put +EXPORT_SYMBOL_GPL vmlinux 0x9424058f arch_haltpoll_disable +EXPORT_SYMBOL_GPL vmlinux 0x9425bb34 nvmem_dev_name +EXPORT_SYMBOL_GPL vmlinux 0x942897ad perf_event_addr_filters_sync +EXPORT_SYMBOL_GPL vmlinux 0x942ae12c set_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0x9430b198 trace_dump_stack +EXPORT_SYMBOL_GPL vmlinux 0x9436e405 memory_group_register_dynamic +EXPORT_SYMBOL_GPL vmlinux 0x943fc708 xen_setup_shutdown_event +EXPORT_SYMBOL_GPL vmlinux 0x9468ea70 schedule_hrtimeout_range_clock +EXPORT_SYMBOL_GPL vmlinux 0x946dd559 sha224_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0x9471b718 rtc_class_close +EXPORT_SYMBOL_GPL vmlinux 0x9473ff75 __pm_relax +EXPORT_SYMBOL_GPL vmlinux 0x94754188 acpi_device_fix_up_power_extended +EXPORT_SYMBOL_GPL vmlinux 0x947b40c6 cpu_smt_possible +EXPORT_SYMBOL_GPL vmlinux 0x947c6849 platform_unregister_drivers +EXPORT_SYMBOL_GPL vmlinux 0x947e7a74 regcache_drop_region +EXPORT_SYMBOL_GPL vmlinux 0x9489835b mmc_regulator_enable_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0x948e0e2b dma_get_required_mask +EXPORT_SYMBOL_GPL vmlinux 0x949b5176 devlink_region_snapshot_create +EXPORT_SYMBOL_GPL vmlinux 0x949f7342 __alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0x949fe2c8 devm_fwnode_gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0x94b416e8 devl_dpipe_table_unregister +EXPORT_SYMBOL_GPL vmlinux 0x94bb6284 cpci_hp_register_bus +EXPORT_SYMBOL_GPL vmlinux 0x94beb775 dst_cache_get +EXPORT_SYMBOL_GPL vmlinux 0x94cc6e19 query_asymmetric_key +EXPORT_SYMBOL_GPL vmlinux 0x94e0ae50 edac_pci_free_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0x94ef4d05 cpci_hp_stop +EXPORT_SYMBOL_GPL vmlinux 0x94f04a06 acpi_dma_request_slave_chan_by_name +EXPORT_SYMBOL_GPL vmlinux 0x94f1d610 devm_nvdimm_memremap +EXPORT_SYMBOL_GPL vmlinux 0x94f60596 acpi_subsys_restore_early +EXPORT_SYMBOL_GPL vmlinux 0x94f8358a __kernel_write +EXPORT_SYMBOL_GPL vmlinux 0x9504df26 irq_wake_thread +EXPORT_SYMBOL_GPL vmlinux 0x9505ef5b fib_rule_matchall +EXPORT_SYMBOL_GPL vmlinux 0x9508d9e2 __hwspin_unlock +EXPORT_SYMBOL_GPL vmlinux 0x95099f0a dm_suspended +EXPORT_SYMBOL_GPL vmlinux 0x951a2773 crypto_has_alg +EXPORT_SYMBOL_GPL vmlinux 0x951a835f rio_add_device +EXPORT_SYMBOL_GPL vmlinux 0x95277d4e __dax_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x952fdae6 gpiochip_request_own_desc +EXPORT_SYMBOL_GPL vmlinux 0x953e1b9e ktime_get_real_seconds +EXPORT_SYMBOL_GPL vmlinux 0x954dbdb4 of_pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0x955b0e2e kthread_worker_fn +EXPORT_SYMBOL_GPL vmlinux 0x9565620b pci_ioremap_wc_bar +EXPORT_SYMBOL_GPL vmlinux 0x9569b0ff pci_load_and_free_saved_state +EXPORT_SYMBOL_GPL vmlinux 0x956ac400 ring_buffer_dropped_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x957166d8 regmap_irq_set_type_config_simple +EXPORT_SYMBOL_GPL vmlinux 0x9572a84b acpi_dev_get_memory_resources +EXPORT_SYMBOL_GPL vmlinux 0x95742632 pm_generic_resume_noirq +EXPORT_SYMBOL_GPL vmlinux 0x95843030 mpi_ec_init +EXPORT_SYMBOL_GPL vmlinux 0x958df3ac zs_free +EXPORT_SYMBOL_GPL vmlinux 0x95927bc4 md_account_bio +EXPORT_SYMBOL_GPL vmlinux 0x9593ef31 register_ftrace_export +EXPORT_SYMBOL_GPL vmlinux 0x9599a6e2 irq_domain_xlate_twocell +EXPORT_SYMBOL_GPL vmlinux 0x95a95797 debugfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0x95ba7670 nf_ip6_check_hbh_len +EXPORT_SYMBOL_GPL vmlinux 0x95bc9078 btree_free +EXPORT_SYMBOL_GPL vmlinux 0x95c4deb0 wm8350_set_bits +EXPORT_SYMBOL_GPL vmlinux 0x95c5d34d hsu_dma_do_irq +EXPORT_SYMBOL_GPL vmlinux 0x95dd11e3 pinctrl_find_gpio_range_from_pin +EXPORT_SYMBOL_GPL vmlinux 0x95ef1ccc dmi_memdev_size +EXPORT_SYMBOL_GPL vmlinux 0x95fdb34e rio_mport_get_efb +EXPORT_SYMBOL_GPL vmlinux 0x960c6777 open_related_ns +EXPORT_SYMBOL_GPL vmlinux 0x961073ce led_classdev_register_ext +EXPORT_SYMBOL_GPL vmlinux 0x961286e0 ring_buffer_read_events_cpu +EXPORT_SYMBOL_GPL vmlinux 0x9615b005 hv_map_ioapic_interrupt +EXPORT_SYMBOL_GPL vmlinux 0x9615fdd4 tty_port_register_device_attr +EXPORT_SYMBOL_GPL vmlinux 0x9621d738 alarm_start_relative +EXPORT_SYMBOL_GPL vmlinux 0x962329e9 vmf_insert_pfn_pmd +EXPORT_SYMBOL_GPL vmlinux 0x962c19b7 pwm_put +EXPORT_SYMBOL_GPL vmlinux 0x962c8ae1 usb_kill_anchored_urbs +EXPORT_SYMBOL_GPL vmlinux 0x96318d3e clean_acked_data_disable +EXPORT_SYMBOL_GPL vmlinux 0x96341900 __sk_flush_backlog +EXPORT_SYMBOL_GPL vmlinux 0x963deb04 raw_v4_match +EXPORT_SYMBOL_GPL vmlinux 0x963fa671 __tracepoint_ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x964931d8 auxiliary_device_init +EXPORT_SYMBOL_GPL vmlinux 0x964f1948 devm_spi_mem_dirmap_destroy +EXPORT_SYMBOL_GPL vmlinux 0x964fb792 fork_usermode_driver +EXPORT_SYMBOL_GPL vmlinux 0x96554810 register_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9678594b acpi_dev_gpio_irq_wake_get_by +EXPORT_SYMBOL_GPL vmlinux 0x967edd10 bpf_offload_dev_create +EXPORT_SYMBOL_GPL vmlinux 0x96923c89 serdev_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0x969abcec fib_rules_unregister +EXPORT_SYMBOL_GPL vmlinux 0x96a55fda list_lru_destroy +EXPORT_SYMBOL_GPL vmlinux 0x96ae842c debugfs_create_regset32 +EXPORT_SYMBOL_GPL vmlinux 0x96c3989b devlink_dpipe_entry_ctx_append +EXPORT_SYMBOL_GPL vmlinux 0x96db0e05 tcpv6_prot +EXPORT_SYMBOL_GPL vmlinux 0x9714e0bb ktime_get_raw +EXPORT_SYMBOL_GPL vmlinux 0x9720c3bf devl_trap_policers_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9721780d device_property_match_string +EXPORT_SYMBOL_GPL vmlinux 0x97345221 gpiochip_generic_request +EXPORT_SYMBOL_GPL vmlinux 0x973fb2b9 da903x_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x973fbee4 led_add_lookup +EXPORT_SYMBOL_GPL vmlinux 0x974948ae mmc_crypto_prepare_req +EXPORT_SYMBOL_GPL vmlinux 0x974bff4e ping_getfrag +EXPORT_SYMBOL_GPL vmlinux 0x975519c1 asymmetric_key_id_same +EXPORT_SYMBOL_GPL vmlinux 0x977bb449 generic_online_page +EXPORT_SYMBOL_GPL vmlinux 0x977be5c7 klist_iter_init_node +EXPORT_SYMBOL_GPL vmlinux 0x977e0eaf bpf_trace_run5 +EXPORT_SYMBOL_GPL vmlinux 0x9782132d bpf_preload_ops +EXPORT_SYMBOL_GPL vmlinux 0x978a54d8 __traceiter_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0x9791d156 driver_find_device +EXPORT_SYMBOL_GPL vmlinux 0x97aab287 dma_resv_get_singleton +EXPORT_SYMBOL_GPL vmlinux 0x97c7cfc3 __ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0x97d58d99 tty_find_polling_driver +EXPORT_SYMBOL_GPL vmlinux 0x97de2b83 debug_locks_silent +EXPORT_SYMBOL_GPL vmlinux 0x97e19906 ZSTD_getErrorCode +EXPORT_SYMBOL_GPL vmlinux 0x97e43734 platform_driver_unregister +EXPORT_SYMBOL_GPL vmlinux 0x97ed3ae6 usb_role_switch_register +EXPORT_SYMBOL_GPL vmlinux 0x98096b5b scsi_host_block +EXPORT_SYMBOL_GPL vmlinux 0x980a80da phy_driver_is_genphy_10g +EXPORT_SYMBOL_GPL vmlinux 0x98158d24 devm_pinctrl_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9833bc0c hvc_kick +EXPORT_SYMBOL_GPL vmlinux 0x98378a1d cc_mkdec +EXPORT_SYMBOL_GPL vmlinux 0x9843f501 __cookie_v4_check +EXPORT_SYMBOL_GPL vmlinux 0x98441d30 tcp_done +EXPORT_SYMBOL_GPL vmlinux 0x98503a63 mpi_alloc +EXPORT_SYMBOL_GPL vmlinux 0x985453e1 lease_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0x985ffb5f clk_mux_val_to_index +EXPORT_SYMBOL_GPL vmlinux 0x986a3e82 xenbus_free_evtchn +EXPORT_SYMBOL_GPL vmlinux 0x98738196 clk_hw_register_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x9879932b crypto_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0x987d2e30 __traceiter_nvme_sq +EXPORT_SYMBOL_GPL vmlinux 0x9886e82a validate_xmit_xfrm +EXPORT_SYMBOL_GPL vmlinux 0x988a1a00 sn_region_size +EXPORT_SYMBOL_GPL vmlinux 0x989074ff kmsg_dump_reason_str +EXPORT_SYMBOL_GPL vmlinux 0x9893ee51 acpi_dev_for_each_child +EXPORT_SYMBOL_GPL vmlinux 0x98a7a495 pci_find_next_capability +EXPORT_SYMBOL_GPL vmlinux 0x98ac1549 pci_epc_mem_free_addr +EXPORT_SYMBOL_GPL vmlinux 0x98b13f0e devm_phy_destroy +EXPORT_SYMBOL_GPL vmlinux 0x98b21fec platform_bus +EXPORT_SYMBOL_GPL vmlinux 0x98b37816 reset_control_get_count +EXPORT_SYMBOL_GPL vmlinux 0x98ee62b2 ring_buffer_record_disable_cpu +EXPORT_SYMBOL_GPL vmlinux 0x98f4d306 hyperv_flush_guest_mapping +EXPORT_SYMBOL_GPL vmlinux 0x99026e08 usb_autopm_put_interface +EXPORT_SYMBOL_GPL vmlinux 0x9924a031 irq_set_chip_and_handler_name +EXPORT_SYMBOL_GPL vmlinux 0x992892cc lp8788_update_bits +EXPORT_SYMBOL_GPL vmlinux 0x9929834f fuse_mount_remove +EXPORT_SYMBOL_GPL vmlinux 0x9930f8a3 uv_bios_change_memprotect +EXPORT_SYMBOL_GPL vmlinux 0x99327668 nvme_wait_freeze_timeout +EXPORT_SYMBOL_GPL vmlinux 0x993a0d17 sysfs_create_groups +EXPORT_SYMBOL_GPL vmlinux 0x993f5e6d power_supply_register +EXPORT_SYMBOL_GPL vmlinux 0x99414b56 kobject_rename +EXPORT_SYMBOL_GPL vmlinux 0x99430ba2 acpi_get_phys_id +EXPORT_SYMBOL_GPL vmlinux 0x9947fd5e regulator_set_drvdata +EXPORT_SYMBOL_GPL vmlinux 0x9953acdb pkcs7_verify +EXPORT_SYMBOL_GPL vmlinux 0x99570ccd sched_set_fifo_low +EXPORT_SYMBOL_GPL vmlinux 0x995d1071 prof_on +EXPORT_SYMBOL_GPL vmlinux 0x995e5e8c fixed_phy_change_carrier +EXPORT_SYMBOL_GPL vmlinux 0x995e8f31 devl_resource_size_get +EXPORT_SYMBOL_GPL vmlinux 0x9968aacb __audit_log_nfcfg +EXPORT_SYMBOL_GPL vmlinux 0x99753c56 dev_attr_ncq_prio_enable +EXPORT_SYMBOL_GPL vmlinux 0x998d79d6 x509_decode_time +EXPORT_SYMBOL_GPL vmlinux 0x9992da97 __traceiter_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0x99a03078 dax_holder_notify_failure +EXPORT_SYMBOL_GPL vmlinux 0x99be1acd sync_blockdev_nowait +EXPORT_SYMBOL_GPL vmlinux 0x99c7018c gpiochip_irq_unmap +EXPORT_SYMBOL_GPL vmlinux 0x99e5f783 acpi_device_modalias +EXPORT_SYMBOL_GPL vmlinux 0x99ede9cc of_phy_put +EXPORT_SYMBOL_GPL vmlinux 0x99f018c4 nvmem_cell_read +EXPORT_SYMBOL_GPL vmlinux 0x99f05de3 fwnode_graph_get_next_endpoint +EXPORT_SYMBOL_GPL vmlinux 0x99f11981 wm831x_reg_read +EXPORT_SYMBOL_GPL vmlinux 0x99f2d00a sysfs_emit_at +EXPORT_SYMBOL_GPL vmlinux 0x99f4734a acpi_subsys_freeze +EXPORT_SYMBOL_GPL vmlinux 0x9a0643d9 __pci_hp_register +EXPORT_SYMBOL_GPL vmlinux 0x9a11a0fc crypto_attr_alg_name +EXPORT_SYMBOL_GPL vmlinux 0x9a1ed1df fuse_conn_destroy +EXPORT_SYMBOL_GPL vmlinux 0x9a23ea6b alarm_expires_remaining +EXPORT_SYMBOL_GPL vmlinux 0x9a2851ef __SCT__tp_func_ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0x9a440c43 sata_scr_write_flush +EXPORT_SYMBOL_GPL vmlinux 0x9a4894fe devres_release_group +EXPORT_SYMBOL_GPL vmlinux 0x9a4f66db da903x_write +EXPORT_SYMBOL_GPL vmlinux 0x9a58dd2d trace_print_bitmask_seq +EXPORT_SYMBOL_GPL vmlinux 0x9a5dce5c rhashtable_walk_start_check +EXPORT_SYMBOL_GPL vmlinux 0x9a6be5a4 bus_remove_file +EXPORT_SYMBOL_GPL vmlinux 0x9a7641ac __serdev_device_driver_register +EXPORT_SYMBOL_GPL vmlinux 0x9a8aa39b __blkg_prfill_rwstat +EXPORT_SYMBOL_GPL vmlinux 0x9a8d9f81 led_trigger_blink +EXPORT_SYMBOL_GPL vmlinux 0x9aa71c2a efi_query_variable_store +EXPORT_SYMBOL_GPL vmlinux 0x9aaac699 dev_pm_opp_cpumask_remove_table +EXPORT_SYMBOL_GPL vmlinux 0x9aaf8739 virtio_device_restore +EXPORT_SYMBOL_GPL vmlinux 0x9ab32a09 irq_chip_get_parent_state +EXPORT_SYMBOL_GPL vmlinux 0x9ab7f8d5 acpi_pci_check_ejectable +EXPORT_SYMBOL_GPL vmlinux 0x9abae6b8 ksm_madvise +EXPORT_SYMBOL_GPL vmlinux 0x9acc4488 virtqueue_add_inbuf +EXPORT_SYMBOL_GPL vmlinux 0x9acf31c6 mas_find +EXPORT_SYMBOL_GPL vmlinux 0x9ad55b99 clk_hw_unregister_fixed_factor +EXPORT_SYMBOL_GPL vmlinux 0x9adb60fa device_set_node +EXPORT_SYMBOL_GPL vmlinux 0x9add9ec6 pci_set_host_bridge_release +EXPORT_SYMBOL_GPL vmlinux 0x9aeacb87 ring_buffer_iter_empty +EXPORT_SYMBOL_GPL vmlinux 0x9aeba527 device_move +EXPORT_SYMBOL_GPL vmlinux 0x9aec65f1 crypto_alg_mod_lookup +EXPORT_SYMBOL_GPL vmlinux 0x9aed652c fscrypt_mergeable_bio_bh +EXPORT_SYMBOL_GPL vmlinux 0x9af29e00 sysfs_create_link +EXPORT_SYMBOL_GPL vmlinux 0x9af49514 icc_bulk_set_bw +EXPORT_SYMBOL_GPL vmlinux 0x9b049923 led_trigger_write +EXPORT_SYMBOL_GPL vmlinux 0x9b107a00 thermal_acpi_critical_trip_temp +EXPORT_SYMBOL_GPL vmlinux 0x9b16e4ee phy_gbit_fibre_features +EXPORT_SYMBOL_GPL vmlinux 0x9b234891 ata_bmdma_dumb_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0x9b2ce3a9 set_direct_map_default_noflush +EXPORT_SYMBOL_GPL vmlinux 0x9b3841f2 irq_domain_create_legacy +EXPORT_SYMBOL_GPL vmlinux 0x9b489bc6 security_kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0x9b4a96dd kill_device +EXPORT_SYMBOL_GPL vmlinux 0x9b57f622 __io_uring_cmd_do_in_task +EXPORT_SYMBOL_GPL vmlinux 0x9b651e51 xenbus_teardown_ring +EXPORT_SYMBOL_GPL vmlinux 0x9b66d4e3 dma_can_mmap +EXPORT_SYMBOL_GPL vmlinux 0x9b695805 gpiod_set_raw_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0x9b6ec967 ring_buffer_size +EXPORT_SYMBOL_GPL vmlinux 0x9b87e36e devfreq_event_get_edev_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0x9b89bbf9 pm_runtime_irq_safe +EXPORT_SYMBOL_GPL vmlinux 0x9b9071cb get_old_itimerspec32 +EXPORT_SYMBOL_GPL vmlinux 0x9b92d16e pinctrl_gpio_set_config +EXPORT_SYMBOL_GPL vmlinux 0x9b9f3648 pcibios_scan_specific_bus +EXPORT_SYMBOL_GPL vmlinux 0x9ba2bb2b gpio_request_array +EXPORT_SYMBOL_GPL vmlinux 0x9bad141d hv_hypercall_pg +EXPORT_SYMBOL_GPL vmlinux 0x9bcdf86f crypto_alg_extsize +EXPORT_SYMBOL_GPL vmlinux 0x9bdf9714 ZSTD_customMalloc +EXPORT_SYMBOL_GPL vmlinux 0x9be30d27 mhp_get_pluggable_range +EXPORT_SYMBOL_GPL vmlinux 0x9be94265 led_sysfs_disable +EXPORT_SYMBOL_GPL vmlinux 0x9bece81b mpi_cmp_ui +EXPORT_SYMBOL_GPL vmlinux 0x9bf36e60 inet6_csk_xmit +EXPORT_SYMBOL_GPL vmlinux 0x9bf3da7b phy_led_triggers_register +EXPORT_SYMBOL_GPL vmlinux 0x9bf7ea7f virtio_device_freeze +EXPORT_SYMBOL_GPL vmlinux 0x9bfd25c9 pcie_reset_flr +EXPORT_SYMBOL_GPL vmlinux 0x9bfe0264 regmap_write +EXPORT_SYMBOL_GPL vmlinux 0x9c0446ea xfrm_state_afinfo_get_rcu +EXPORT_SYMBOL_GPL vmlinux 0x9c07ada9 __fsverity_cleanup_inode +EXPORT_SYMBOL_GPL vmlinux 0x9c251102 regulator_set_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0x9c2a09d8 pskb_put +EXPORT_SYMBOL_GPL vmlinux 0x9c3a614b i2c_match_id +EXPORT_SYMBOL_GPL vmlinux 0x9c3c01ae gpiochip_line_is_open_drain +EXPORT_SYMBOL_GPL vmlinux 0x9c431459 debugfs_create_bool +EXPORT_SYMBOL_GPL vmlinux 0x9c445ed6 folio_add_wait_queue +EXPORT_SYMBOL_GPL vmlinux 0x9c55dfd1 fixup_user_fault +EXPORT_SYMBOL_GPL vmlinux 0x9c6febfc add_uevent_var +EXPORT_SYMBOL_GPL vmlinux 0x9c803020 usb_phy_roothub_power_on +EXPORT_SYMBOL_GPL vmlinux 0x9c83ca20 acpi_subsys_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0x9c879cf7 uart_xchar_out +EXPORT_SYMBOL_GPL vmlinux 0x9c93e9ae clk_hw_get_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x9c964c80 free_uid +EXPORT_SYMBOL_GPL vmlinux 0x9c9ecced syscon_regmap_lookup_by_phandle_args +EXPORT_SYMBOL_GPL vmlinux 0x9c9ecd5d thermal_acpi_hot_trip_temp +EXPORT_SYMBOL_GPL vmlinux 0x9ca6e11f cper_mem_err_location +EXPORT_SYMBOL_GPL vmlinux 0x9cbe96ed regulator_map_voltage_iterate +EXPORT_SYMBOL_GPL vmlinux 0x9cc4f70a register_pm_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9cd7551a rhashtable_walk_stop +EXPORT_SYMBOL_GPL vmlinux 0x9cda72c5 __traceiter_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0x9cdd6a66 sysctl_long_vals +EXPORT_SYMBOL_GPL vmlinux 0x9cde2fbe power_supply_set_property +EXPORT_SYMBOL_GPL vmlinux 0x9ce06fa0 regmap_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0x9ce0adcb tty_buffer_space_avail +EXPORT_SYMBOL_GPL vmlinux 0x9ce12e9f devl_dpipe_table_register +EXPORT_SYMBOL_GPL vmlinux 0x9cf1b357 skb_append_pagefrags +EXPORT_SYMBOL_GPL vmlinux 0x9cf37c44 __iowrite32_copy +EXPORT_SYMBOL_GPL vmlinux 0x9d093949 ata_std_error_handler +EXPORT_SYMBOL_GPL vmlinux 0x9d09e8ae ring_buffer_event_data +EXPORT_SYMBOL_GPL vmlinux 0x9d105029 dma_get_merge_boundary +EXPORT_SYMBOL_GPL vmlinux 0x9d14205c cr4_read_shadow +EXPORT_SYMBOL_GPL vmlinux 0x9d146be9 crypto_aes_set_key +EXPORT_SYMBOL_GPL vmlinux 0x9d2d3f5b pkcs7_free_message +EXPORT_SYMBOL_GPL vmlinux 0x9d3369ad __ndisc_fill_addr_option +EXPORT_SYMBOL_GPL vmlinux 0x9d366f99 page_reporting_register +EXPORT_SYMBOL_GPL vmlinux 0x9d3be392 vfs_listxattr +EXPORT_SYMBOL_GPL vmlinux 0x9d3e0d54 fuse_fill_super_common +EXPORT_SYMBOL_GPL vmlinux 0x9d4894c8 x2apic_mode +EXPORT_SYMBOL_GPL vmlinux 0x9d4b9de1 regulator_set_voltage_time_sel +EXPORT_SYMBOL_GPL vmlinux 0x9d52f0ac nfnl_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0x9d5ce3ed devlink_unregister +EXPORT_SYMBOL_GPL vmlinux 0x9d72ea94 pid_vnr +EXPORT_SYMBOL_GPL vmlinux 0x9d734739 elv_rqhash_del +EXPORT_SYMBOL_GPL vmlinux 0x9d7374b7 pci_msix_alloc_irq_at +EXPORT_SYMBOL_GPL vmlinux 0x9d7907bf gpiochip_irq_domain_deactivate +EXPORT_SYMBOL_GPL vmlinux 0x9d86ae40 lwtunnel_input +EXPORT_SYMBOL_GPL vmlinux 0x9d8bb00e set_dax_nocache +EXPORT_SYMBOL_GPL vmlinux 0x9d8e9a8a mbox_request_channel +EXPORT_SYMBOL_GPL vmlinux 0x9d9910a1 atomic_notifier_chain_register_unique_prio +EXPORT_SYMBOL_GPL vmlinux 0x9d9ad1d5 usb_hub_find_child +EXPORT_SYMBOL_GPL vmlinux 0x9d9e2e4c pci_num_vf +EXPORT_SYMBOL_GPL vmlinux 0x9da0da3e balloon_page_list_enqueue +EXPORT_SYMBOL_GPL vmlinux 0x9da61737 folio_test_hugetlb +EXPORT_SYMBOL_GPL vmlinux 0x9dc595b2 crypto_unregister_alg +EXPORT_SYMBOL_GPL vmlinux 0x9dcdb81c device_store_int +EXPORT_SYMBOL_GPL vmlinux 0x9dd21878 fuse_dev_release +EXPORT_SYMBOL_GPL vmlinux 0x9dd75672 regulator_list_voltage_table +EXPORT_SYMBOL_GPL vmlinux 0x9de433e6 crypto_register_ahashes +EXPORT_SYMBOL_GPL vmlinux 0x9e13335b nvmem_add_one_cell +EXPORT_SYMBOL_GPL vmlinux 0x9e1669a8 kernfs_find_and_get_ns +EXPORT_SYMBOL_GPL vmlinux 0x9e229c49 sg_alloc_table_chained +EXPORT_SYMBOL_GPL vmlinux 0x9e25a6a5 skb_scrub_packet +EXPORT_SYMBOL_GPL vmlinux 0x9e303cf4 platform_irq_count +EXPORT_SYMBOL_GPL vmlinux 0x9e472f5f snmp_fold_field +EXPORT_SYMBOL_GPL vmlinux 0x9e52f37e vcap_rule_mod_action_u32 +EXPORT_SYMBOL_GPL vmlinux 0x9e5d27a4 phy_start_machine +EXPORT_SYMBOL_GPL vmlinux 0x9e6500a3 usb_hcd_unlink_urb_from_ep +EXPORT_SYMBOL_GPL vmlinux 0x9e6b97aa crypto_hash_walk_done +EXPORT_SYMBOL_GPL vmlinux 0x9e708378 devlink_resource_register +EXPORT_SYMBOL_GPL vmlinux 0x9e78e038 pci_epc_put +EXPORT_SYMBOL_GPL vmlinux 0x9e82a76f netif_carrier_event +EXPORT_SYMBOL_GPL vmlinux 0x9e8e1ad8 handle_simple_irq +EXPORT_SYMBOL_GPL vmlinux 0x9e9c4f24 set_dax_nomc +EXPORT_SYMBOL_GPL vmlinux 0x9ecd971e blk_mq_sched_try_insert_merge +EXPORT_SYMBOL_GPL vmlinux 0x9ed554b3 unregister_keyboard_notifier +EXPORT_SYMBOL_GPL vmlinux 0x9edaf64b percpu_is_read_locked +EXPORT_SYMBOL_GPL vmlinux 0x9edc9086 crypto_register_shashes +EXPORT_SYMBOL_GPL vmlinux 0x9ede7317 usb_hcd_amd_remote_wakeup_quirk +EXPORT_SYMBOL_GPL vmlinux 0x9eebdde7 mpi_point_new +EXPORT_SYMBOL_GPL vmlinux 0x9ef61f0a ethtool_set_ethtool_phy_ops +EXPORT_SYMBOL_GPL vmlinux 0x9f08c714 scatterwalk_copychunks +EXPORT_SYMBOL_GPL vmlinux 0x9f09daf2 crypto_clone_tfm +EXPORT_SYMBOL_GPL vmlinux 0x9f19ea21 __SCK__tp_func_tcp_send_reset +EXPORT_SYMBOL_GPL vmlinux 0x9f1eda9f clk_hw_set_rate_range +EXPORT_SYMBOL_GPL vmlinux 0x9f2b17d9 clocksource_verify_percpu +EXPORT_SYMBOL_GPL vmlinux 0x9f390d55 unregister_nvdimm_pmu +EXPORT_SYMBOL_GPL vmlinux 0x9f479218 __SCK__tp_func_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0x9f5c6dc2 __cookie_v6_check +EXPORT_SYMBOL_GPL vmlinux 0x9f617215 regulator_get_optional +EXPORT_SYMBOL_GPL vmlinux 0x9f68b804 devl_traps_register +EXPORT_SYMBOL_GPL vmlinux 0x9f85b6b9 vp_modern_get_num_queues +EXPORT_SYMBOL_GPL vmlinux 0x9f9673fb sched_set_normal +EXPORT_SYMBOL_GPL vmlinux 0x9fa1476f find_get_pid +EXPORT_SYMBOL_GPL vmlinux 0x9fa4564a timer_shutdown +EXPORT_SYMBOL_GPL vmlinux 0x9fa72e9e get_current_tty +EXPORT_SYMBOL_GPL vmlinux 0x9fbc303f anon_inode_getfile +EXPORT_SYMBOL_GPL vmlinux 0x9fbfebab erst_write +EXPORT_SYMBOL_GPL vmlinux 0x9fc02f97 gpiod_set_transitory +EXPORT_SYMBOL_GPL vmlinux 0x9fc34f7b mmu_interval_notifier_insert +EXPORT_SYMBOL_GPL vmlinux 0x9fce7b9a proc_create_net_data_write +EXPORT_SYMBOL_GPL vmlinux 0x9fce80db fb_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0x9fe131f1 xen_store_interface +EXPORT_SYMBOL_GPL vmlinux 0x9fe899b7 get_cpu_idle_time +EXPORT_SYMBOL_GPL vmlinux 0x9fe939e1 mpi_powm +EXPORT_SYMBOL_GPL vmlinux 0xa0088296 xenbus_dev_groups +EXPORT_SYMBOL_GPL vmlinux 0xa01755b8 acpi_device_update_power +EXPORT_SYMBOL_GPL vmlinux 0xa01a8d9b nd_cmd_bus_desc +EXPORT_SYMBOL_GPL vmlinux 0xa02991a6 power_supply_get_property +EXPORT_SYMBOL_GPL vmlinux 0xa02ed53b regmap_multi_reg_write +EXPORT_SYMBOL_GPL vmlinux 0xa041a619 nf_conn_btf_access_lock +EXPORT_SYMBOL_GPL vmlinux 0xa0435d69 ata_bmdma_port_start +EXPORT_SYMBOL_GPL vmlinux 0xa04f945a cpus_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xa063f0d6 dma_get_any_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xa080c5e5 smp_call_function_single_async +EXPORT_SYMBOL_GPL vmlinux 0xa082be53 paste_selection +EXPORT_SYMBOL_GPL vmlinux 0xa0839d13 dma_mmap_noncontiguous +EXPORT_SYMBOL_GPL vmlinux 0xa0881fb5 __SCK__tp_func_map +EXPORT_SYMBOL_GPL vmlinux 0xa098115b __SCT__tp_func_ipi_send_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xa09e7a25 __sock_recv_wifi_status +EXPORT_SYMBOL_GPL vmlinux 0xa0c0f1d7 __SCT__tp_func_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xa0c8e0c4 backing_file_open +EXPORT_SYMBOL_GPL vmlinux 0xa0cb1b92 ata_pci_shutdown_one +EXPORT_SYMBOL_GPL vmlinux 0xa0d3456d nr_swap_pages +EXPORT_SYMBOL_GPL vmlinux 0xa0d81b76 __SCT__tp_func_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0xa0e671d8 __SCT__tp_func_sched_update_nr_running_tp +EXPORT_SYMBOL_GPL vmlinux 0xa0efc4f7 virtqueue_add_inbuf_ctx +EXPORT_SYMBOL_GPL vmlinux 0xa0f773a3 mbox_client_txdone +EXPORT_SYMBOL_GPL vmlinux 0xa0fced1d i2c_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xa107bee0 inet6_hash_connect +EXPORT_SYMBOL_GPL vmlinux 0xa11216be xen_store_domain_type +EXPORT_SYMBOL_GPL vmlinux 0xa11adf5a of_icc_get_by_index +EXPORT_SYMBOL_GPL vmlinux 0xa13313c6 icc_get_name +EXPORT_SYMBOL_GPL vmlinux 0xa13412a0 pci_epc_get_msi +EXPORT_SYMBOL_GPL vmlinux 0xa15142d9 crypto_register_template +EXPORT_SYMBOL_GPL vmlinux 0xa156a1f2 erst_get_record_id_end +EXPORT_SYMBOL_GPL vmlinux 0xa15f196a tty_mode_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xa1617e38 wm831x_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xa1725f36 crypto_alloc_shash +EXPORT_SYMBOL_GPL vmlinux 0xa17420ab mmput_async +EXPORT_SYMBOL_GPL vmlinux 0xa17cc8d2 spi_mem_dirmap_write +EXPORT_SYMBOL_GPL vmlinux 0xa18b3488 devm_regulator_put +EXPORT_SYMBOL_GPL vmlinux 0xa18d5992 scsi_autopm_put_device +EXPORT_SYMBOL_GPL vmlinux 0xa1a2cde2 ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xa1b8a8ce pci_iomap_wc_range +EXPORT_SYMBOL_GPL vmlinux 0xa1bedf83 sdio_writew +EXPORT_SYMBOL_GPL vmlinux 0xa1c3f8a8 __SCT__tp_func_ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xa1cbc870 lwtunnel_state_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa1d8004a videomode_from_timing +EXPORT_SYMBOL_GPL vmlinux 0xa1db5b4b tcp_register_ulp +EXPORT_SYMBOL_GPL vmlinux 0xa1ef170d class_register +EXPORT_SYMBOL_GPL vmlinux 0xa1f36c56 __traceiter_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0xa1f5af8d iommu_detach_group +EXPORT_SYMBOL_GPL vmlinux 0xa1fdd0f3 vp_legacy_config_vector +EXPORT_SYMBOL_GPL vmlinux 0xa208b5a7 pm_debug_messages_should_print +EXPORT_SYMBOL_GPL vmlinux 0xa20d01ba __trace_bprintk +EXPORT_SYMBOL_GPL vmlinux 0xa2118afc usb_get_urb +EXPORT_SYMBOL_GPL vmlinux 0xa21e0630 serdev_device_add +EXPORT_SYMBOL_GPL vmlinux 0xa21f2ce7 clk_mux_index_to_val +EXPORT_SYMBOL_GPL vmlinux 0xa2402218 __traceiter_xhci_dbg_init +EXPORT_SYMBOL_GPL vmlinux 0xa25cb9e5 cpufreq_register_driver +EXPORT_SYMBOL_GPL vmlinux 0xa265dad3 serdev_device_close +EXPORT_SYMBOL_GPL vmlinux 0xa268327e power_supply_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xa26c5e5c dev_pm_opp_config_clks_simple +EXPORT_SYMBOL_GPL vmlinux 0xa26d9b4f workqueue_congested +EXPORT_SYMBOL_GPL vmlinux 0xa274f4b0 devm_gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xa2830e43 addrconf_prefix_rcv_add_addr +EXPORT_SYMBOL_GPL vmlinux 0xa2924b97 devm_kasprintf_strarray +EXPORT_SYMBOL_GPL vmlinux 0xa294ef54 kthread_cancel_work_sync +EXPORT_SYMBOL_GPL vmlinux 0xa2af54b3 irq_from_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xa2b99209 alarm_start +EXPORT_SYMBOL_GPL vmlinux 0xa2bac24b nvme_cancel_admin_tagset +EXPORT_SYMBOL_GPL vmlinux 0xa2c0f59a ct_idle_enter +EXPORT_SYMBOL_GPL vmlinux 0xa2d0b59d mmio_stale_data_clear +EXPORT_SYMBOL_GPL vmlinux 0xa2d93a03 vcap_keyfield_name +EXPORT_SYMBOL_GPL vmlinux 0xa2d9b94e kobject_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xa2dba009 clk_hw_register_fractional_divider +EXPORT_SYMBOL_GPL vmlinux 0xa2e11909 i2c_dw_configure_master +EXPORT_SYMBOL_GPL vmlinux 0xa2e1b3ef trace_printk_init_buffers +EXPORT_SYMBOL_GPL vmlinux 0xa2f7487f hv_is_hibernation_supported +EXPORT_SYMBOL_GPL vmlinux 0xa3082b92 nvme_init_request +EXPORT_SYMBOL_GPL vmlinux 0xa31558b9 node_to_amd_nb +EXPORT_SYMBOL_GPL vmlinux 0xa31b1c6a sysfs_file_change_owner +EXPORT_SYMBOL_GPL vmlinux 0xa3319c3a bpf_offload_dev_netdev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa3343fd6 cpu_subsys +EXPORT_SYMBOL_GPL vmlinux 0xa339f653 extcon_get_edev_name +EXPORT_SYMBOL_GPL vmlinux 0xa33a5500 pci_find_vsec_capability +EXPORT_SYMBOL_GPL vmlinux 0xa33d22b0 mbox_free_channel +EXPORT_SYMBOL_GPL vmlinux 0xa33ee918 __kthread_should_park +EXPORT_SYMBOL_GPL vmlinux 0xa34629e6 __traceiter_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0xa353f839 mmu_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xa36275f9 gpiod_set_array_value +EXPORT_SYMBOL_GPL vmlinux 0xa36f50fb is_binary_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xa37b5203 ata_std_bios_param +EXPORT_SYMBOL_GPL vmlinux 0xa38602cd drain_workqueue +EXPORT_SYMBOL_GPL vmlinux 0xa389b28f cpuidle_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xa38a8e25 devl_dpipe_headers_register +EXPORT_SYMBOL_GPL vmlinux 0xa38a9f71 get_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xa38bbaad __devm_reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xa3965c24 scsi_eh_ready_devs +EXPORT_SYMBOL_GPL vmlinux 0xa3977df5 sysfs_remove_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xa39dc85b fscrypt_parse_test_dummy_encryption +EXPORT_SYMBOL_GPL vmlinux 0xa3a04602 btree_geo64 +EXPORT_SYMBOL_GPL vmlinux 0xa3a23c68 filemap_add_folio +EXPORT_SYMBOL_GPL vmlinux 0xa3a36c73 cppc_set_perf +EXPORT_SYMBOL_GPL vmlinux 0xa3b958ce reset_hung_task_detector +EXPORT_SYMBOL_GPL vmlinux 0xa3d8b2a6 trace_array_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xa3df811f virtqueue_enable_cb +EXPORT_SYMBOL_GPL vmlinux 0xa3ece414 freezer_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xa3f0e4cd phy_restart_aneg +EXPORT_SYMBOL_GPL vmlinux 0xa3f12f69 __crypto_xor +EXPORT_SYMBOL_GPL vmlinux 0xa4031b7f sfp_parse_port +EXPORT_SYMBOL_GPL vmlinux 0xa40c6500 watchdog_set_restart_priority +EXPORT_SYMBOL_GPL vmlinux 0xa410a295 devlink_region_destroy +EXPORT_SYMBOL_GPL vmlinux 0xa418ac6b devm_spi_mem_dirmap_create +EXPORT_SYMBOL_GPL vmlinux 0xa41cfcd2 dev_pm_set_dedicated_wake_irq_reverse +EXPORT_SYMBOL_GPL vmlinux 0xa41d8252 pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xa42af52d iommu_device_register +EXPORT_SYMBOL_GPL vmlinux 0xa42e569a mbox_chan_received_data +EXPORT_SYMBOL_GPL vmlinux 0xa42fd392 posix_clock_register +EXPORT_SYMBOL_GPL vmlinux 0xa4352e2e virtqueue_kick +EXPORT_SYMBOL_GPL vmlinux 0xa4408b87 crypto_register_scomp +EXPORT_SYMBOL_GPL vmlinux 0xa442083b devm_hte_register_chip +EXPORT_SYMBOL_GPL vmlinux 0xa44623b4 key_type_asymmetric +EXPORT_SYMBOL_GPL vmlinux 0xa44a1307 interval_tree_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xa452c297 hpet_mask_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa452f2a4 xen_pirq_from_irq +EXPORT_SYMBOL_GPL vmlinux 0xa45b28f5 bus_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xa45c7b90 stack_trace_print +EXPORT_SYMBOL_GPL vmlinux 0xa462d5a6 __SCT__tp_func_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xa4695291 __SCK__tp_func_br_fdb_external_learn_add +EXPORT_SYMBOL_GPL vmlinux 0xa474f4a5 tty_ldisc_flush +EXPORT_SYMBOL_GPL vmlinux 0xa48196c8 kdb_poll_idx +EXPORT_SYMBOL_GPL vmlinux 0xa48fc8c5 exportfs_decode_fh_raw +EXPORT_SYMBOL_GPL vmlinux 0xa495893b cpci_hp_unregister_bus +EXPORT_SYMBOL_GPL vmlinux 0xa4ab7c1c ring_buffer_overruns +EXPORT_SYMBOL_GPL vmlinux 0xa4b07fe7 ring_buffer_change_overwrite +EXPORT_SYMBOL_GPL vmlinux 0xa4b2f278 crypto_mod_get +EXPORT_SYMBOL_GPL vmlinux 0xa4b39c3b _copy_from_iter_flushcache +EXPORT_SYMBOL_GPL vmlinux 0xa4bf2e41 cppc_set_epp_perf +EXPORT_SYMBOL_GPL vmlinux 0xa4c00324 asn1_encode_octet_string +EXPORT_SYMBOL_GPL vmlinux 0xa4c085f8 ata_tf_from_fis +EXPORT_SYMBOL_GPL vmlinux 0xa4c1c29f dev_pm_opp_get_max_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xa4e4b8b1 ip4_datagram_release_cb +EXPORT_SYMBOL_GPL vmlinux 0xa4e73574 exportfs_encode_inode_fh +EXPORT_SYMBOL_GPL vmlinux 0xa4fd6c14 led_trigger_read +EXPORT_SYMBOL_GPL vmlinux 0xa50888fd gpiod_toggle_active_low +EXPORT_SYMBOL_GPL vmlinux 0xa50a91bb trace_event_buffer_lock_reserve +EXPORT_SYMBOL_GPL vmlinux 0xa51c8161 crypto_shash_final +EXPORT_SYMBOL_GPL vmlinux 0xa531471e clk_save_context +EXPORT_SYMBOL_GPL vmlinux 0xa5363689 nd_cmd_out_size +EXPORT_SYMBOL_GPL vmlinux 0xa54a2cba devlink_linecard_provision_clear +EXPORT_SYMBOL_GPL vmlinux 0xa54e4d85 dev_pm_genpd_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa5519cb1 hid_bpf_connect_device +EXPORT_SYMBOL_GPL vmlinux 0xa5695fb5 ping_recvmsg +EXPORT_SYMBOL_GPL vmlinux 0xa56e1a52 sg_free_table_chained +EXPORT_SYMBOL_GPL vmlinux 0xa5713826 trace_array_get_by_name +EXPORT_SYMBOL_GPL vmlinux 0xa57a3a89 mas_empty_area_rev +EXPORT_SYMBOL_GPL vmlinux 0xa58f8dfa __regmap_init_spi +EXPORT_SYMBOL_GPL vmlinux 0xa5b2cb42 skb_zerocopy +EXPORT_SYMBOL_GPL vmlinux 0xa5bda8a1 efi_capsule_supported +EXPORT_SYMBOL_GPL vmlinux 0xa5d1f4b8 stack_depot_snprint +EXPORT_SYMBOL_GPL vmlinux 0xa5d7c388 pstore_type_to_name +EXPORT_SYMBOL_GPL vmlinux 0xa5decbac exportfs_decode_fh +EXPORT_SYMBOL_GPL vmlinux 0xa5efbf4c async_synchronize_full +EXPORT_SYMBOL_GPL vmlinux 0xa5f5f405 nvme_remove_io_tag_set +EXPORT_SYMBOL_GPL vmlinux 0xa5fcda80 nvdimm_volatile_region_create +EXPORT_SYMBOL_GPL vmlinux 0xa601459b debugfs_create_x64 +EXPORT_SYMBOL_GPL vmlinux 0xa609c469 call_srcu +EXPORT_SYMBOL_GPL vmlinux 0xa60e2b7a pse_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xa61c1163 ata_do_set_mode +EXPORT_SYMBOL_GPL vmlinux 0xa627f074 ata_pci_device_do_suspend +EXPORT_SYMBOL_GPL vmlinux 0xa62bfc66 security_kernel_post_read_file +EXPORT_SYMBOL_GPL vmlinux 0xa63bd6e9 mmc_prepare_busy_cmd +EXPORT_SYMBOL_GPL vmlinux 0xa65fe57c dev_pm_genpd_add_notifier +EXPORT_SYMBOL_GPL vmlinux 0xa6680748 regulator_bulk_set_supply_names +EXPORT_SYMBOL_GPL vmlinux 0xa66ef0ba __traceiter_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0xa6765602 trace_event_buffer_reserve +EXPORT_SYMBOL_GPL vmlinux 0xa6776767 kthread_unpark +EXPORT_SYMBOL_GPL vmlinux 0xa6785ea5 skb_gso_validate_mac_len +EXPORT_SYMBOL_GPL vmlinux 0xa68285fc nfs42_ssc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xa68eccf4 blk_trace_remove +EXPORT_SYMBOL_GPL vmlinux 0xa69c0bd0 hsu_dma_get_status +EXPORT_SYMBOL_GPL vmlinux 0xa69fdf52 udp4_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xa6a088b7 fscrypt_match_name +EXPORT_SYMBOL_GPL vmlinux 0xa6a7925c mas_walk +EXPORT_SYMBOL_GPL vmlinux 0xa6b06f65 ata_sff_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xa6b21ef2 dpm_suspend_end +EXPORT_SYMBOL_GPL vmlinux 0xa6b3e750 pci_disable_rom +EXPORT_SYMBOL_GPL vmlinux 0xa6c4319e sdio_release_host +EXPORT_SYMBOL_GPL vmlinux 0xa6c4ff44 inet6_compat_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xa6cb9f33 cdrom_multisession +EXPORT_SYMBOL_GPL vmlinux 0xa6e1a69d kick_all_cpus_sync +EXPORT_SYMBOL_GPL vmlinux 0xa6e1c240 sata_link_scr_lpm +EXPORT_SYMBOL_GPL vmlinux 0xa6e72021 fwnode_handle_put +EXPORT_SYMBOL_GPL vmlinux 0xa6f58470 reset_simple_ops +EXPORT_SYMBOL_GPL vmlinux 0xa6f82d03 spi_mem_default_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xa6f9c17c dst_cache_set_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xa7032678 crypto_akcipher_sync_encrypt +EXPORT_SYMBOL_GPL vmlinux 0xa708ca58 mas_store_prealloc +EXPORT_SYMBOL_GPL vmlinux 0xa709c835 fib6_info_destroy_rcu +EXPORT_SYMBOL_GPL vmlinux 0xa71079d0 ping_seq_stop +EXPORT_SYMBOL_GPL vmlinux 0xa7127da7 mce_unregister_injector_chain +EXPORT_SYMBOL_GPL vmlinux 0xa7138857 scsi_host_complete_all_commands +EXPORT_SYMBOL_GPL vmlinux 0xa71634bd usb_clear_halt +EXPORT_SYMBOL_GPL vmlinux 0xa72139a9 max8997_update_reg +EXPORT_SYMBOL_GPL vmlinux 0xa7218eba irq_set_affinity +EXPORT_SYMBOL_GPL vmlinux 0xa7241959 pkcs7_supply_detached_data +EXPORT_SYMBOL_GPL vmlinux 0xa727a75c driver_set_override +EXPORT_SYMBOL_GPL vmlinux 0xa731f387 nl_table_lock +EXPORT_SYMBOL_GPL vmlinux 0xa7547136 nvmem_device_find +EXPORT_SYMBOL_GPL vmlinux 0xa75a6661 __percpu_down_read +EXPORT_SYMBOL_GPL vmlinux 0xa77abbce pm_generic_restore +EXPORT_SYMBOL_GPL vmlinux 0xa78dfdd9 nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xa7976d61 unregister_virtio_driver +EXPORT_SYMBOL_GPL vmlinux 0xa7b97b74 rtc_initialize_alarm +EXPORT_SYMBOL_GPL vmlinux 0xa7c28b7c xhci_init_driver +EXPORT_SYMBOL_GPL vmlinux 0xa7c83645 pci_p2pmem_find_many +EXPORT_SYMBOL_GPL vmlinux 0xa7ccea0c fwnode_find_reference +EXPORT_SYMBOL_GPL vmlinux 0xa7cfacf5 blk_mq_alloc_sq_tag_set +EXPORT_SYMBOL_GPL vmlinux 0xa7d0f487 devm_power_supply_register_no_ws +EXPORT_SYMBOL_GPL vmlinux 0xa7e13dac regmap_field_alloc +EXPORT_SYMBOL_GPL vmlinux 0xa7eaf744 filemap_read +EXPORT_SYMBOL_GPL vmlinux 0xa7ee7a11 register_asymmetric_key_parser +EXPORT_SYMBOL_GPL vmlinux 0xa8102319 pci_p2pmem_alloc_sgl +EXPORT_SYMBOL_GPL vmlinux 0xa812e11d nvme_auth_wait +EXPORT_SYMBOL_GPL vmlinux 0xa81485e6 __traceiter_ipi_send_cpu +EXPORT_SYMBOL_GPL vmlinux 0xa82e37d2 devres_for_each_res +EXPORT_SYMBOL_GPL vmlinux 0xa84ca051 account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xa851973a raw_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xa85bbe00 __SCT__tp_func_sk_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xa869595c serial8250_do_set_divisor +EXPORT_SYMBOL_GPL vmlinux 0xa86ba710 mptcp_pm_get_add_addr_signal_max +EXPORT_SYMBOL_GPL vmlinux 0xa8841cc6 mas_next +EXPORT_SYMBOL_GPL vmlinux 0xa89385ac blk_req_needs_zone_write_lock +EXPORT_SYMBOL_GPL vmlinux 0xa89926dc crypto_dh_decode_key +EXPORT_SYMBOL_GPL vmlinux 0xa8a0f60d vcap_del_rules +EXPORT_SYMBOL_GPL vmlinux 0xa8a6364c xas_get_mark +EXPORT_SYMBOL_GPL vmlinux 0xa8aabe4c serial8250_em485_config +EXPORT_SYMBOL_GPL vmlinux 0xa8be3ba8 apic +EXPORT_SYMBOL_GPL vmlinux 0xa8c96284 synth_event_trace_start +EXPORT_SYMBOL_GPL vmlinux 0xa8cc5125 component_bind_all +EXPORT_SYMBOL_GPL vmlinux 0xa8d3e16c sock_diag_save_cookie +EXPORT_SYMBOL_GPL vmlinux 0xa8ef354c tcp_get_syncookie_mss +EXPORT_SYMBOL_GPL vmlinux 0xa8f6655a fuse_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xa9017069 clk_hw_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xa9050a8d dax_remove_host +EXPORT_SYMBOL_GPL vmlinux 0xa9126bff hpet_set_rtc_irq_bit +EXPORT_SYMBOL_GPL vmlinux 0xa917b59f blkcg_activate_policy +EXPORT_SYMBOL_GPL vmlinux 0xa91f8113 platform_add_devices +EXPORT_SYMBOL_GPL vmlinux 0xa9320d27 ktime_get_seconds +EXPORT_SYMBOL_GPL vmlinux 0xa936ee6e vcap_select_min_rule_keyset +EXPORT_SYMBOL_GPL vmlinux 0xa93ab243 mbox_flush +EXPORT_SYMBOL_GPL vmlinux 0xa93f90fa ndo_dflt_bridge_getlink +EXPORT_SYMBOL_GPL vmlinux 0xa944d0fd irq_domain_pop_irq +EXPORT_SYMBOL_GPL vmlinux 0xa9526b3a irq_alloc_generic_chip +EXPORT_SYMBOL_GPL vmlinux 0xa95b5c77 hwmon_sanitize_name +EXPORT_SYMBOL_GPL vmlinux 0xa962e9ad crypto_find_alg +EXPORT_SYMBOL_GPL vmlinux 0xa967e1c9 fwnode_handle_get +EXPORT_SYMBOL_GPL vmlinux 0xa96c7001 xen_unregister_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xa96e8b4e hv_setup_vmbus_handler +EXPORT_SYMBOL_GPL vmlinux 0xa97cdfde regulator_allow_bypass +EXPORT_SYMBOL_GPL vmlinux 0xa9850cf7 register_fprobe +EXPORT_SYMBOL_GPL vmlinux 0xa989859b genphy_c45_read_status +EXPORT_SYMBOL_GPL vmlinux 0xa98c6fa4 nop_posix_acl_access +EXPORT_SYMBOL_GPL vmlinux 0xa995d555 devm_nvmem_cell_get +EXPORT_SYMBOL_GPL vmlinux 0xa99b1875 __virtio_unbreak_device +EXPORT_SYMBOL_GPL vmlinux 0xa99ef899 devlink_fmsg_bool_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xa9bb5b32 __irq_alloc_domain_generic_chips +EXPORT_SYMBOL_GPL vmlinux 0xa9c0f254 tun_get_socket +EXPORT_SYMBOL_GPL vmlinux 0xa9c37a6f usb_unlink_urb +EXPORT_SYMBOL_GPL vmlinux 0xaa04ba28 umd_unload_blob +EXPORT_SYMBOL_GPL vmlinux 0xaa1b43ad genphy_c45_pma_baset1_setup_master_slave +EXPORT_SYMBOL_GPL vmlinux 0xaa32d56f pci_reset_function_locked +EXPORT_SYMBOL_GPL vmlinux 0xaa380417 ata_dummy_port_info +EXPORT_SYMBOL_GPL vmlinux 0xaa393cc6 mas_preallocate +EXPORT_SYMBOL_GPL vmlinux 0xaa440ce8 __virtqueue_unbreak +EXPORT_SYMBOL_GPL vmlinux 0xaa5aee1c uv_bios_mq_watchlist_alloc +EXPORT_SYMBOL_GPL vmlinux 0xaa6a50f9 __static_key_deferred_flush +EXPORT_SYMBOL_GPL vmlinux 0xaa6d633e user_read +EXPORT_SYMBOL_GPL vmlinux 0xaa771521 phy_pm_runtime_put +EXPORT_SYMBOL_GPL vmlinux 0xaa86cfb5 uv_possible_blades +EXPORT_SYMBOL_GPL vmlinux 0xaa8e2427 __put_task_struct +EXPORT_SYMBOL_GPL vmlinux 0xaaa38f42 fsverity_get_digest +EXPORT_SYMBOL_GPL vmlinux 0xaaa918c9 ftrace_dump +EXPORT_SYMBOL_GPL vmlinux 0xaab9c421 clk_multiplier_ops +EXPORT_SYMBOL_GPL vmlinux 0xaabc2d96 pci_hp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xaac88b0e spi_new_device +EXPORT_SYMBOL_GPL vmlinux 0xaac99afe power_supply_put +EXPORT_SYMBOL_GPL vmlinux 0xaad8aac2 vc_scrolldelta_helper +EXPORT_SYMBOL_GPL vmlinux 0xab0bd631 sysfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xab0da23b transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xab173e26 blk_crypto_register +EXPORT_SYMBOL_GPL vmlinux 0xab1bc9ca perf_aux_output_skip +EXPORT_SYMBOL_GPL vmlinux 0xab1e0e93 hv_setup_kexec_handler +EXPORT_SYMBOL_GPL vmlinux 0xab3083b4 pwm_get_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xab30ab4f regmap_attach_dev +EXPORT_SYMBOL_GPL vmlinux 0xab348c88 class_create +EXPORT_SYMBOL_GPL vmlinux 0xab35b57b __tracepoint_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xab377c6a devm_mipi_dsi_attach +EXPORT_SYMBOL_GPL vmlinux 0xab3d4194 mptcp_get_reset_option +EXPORT_SYMBOL_GPL vmlinux 0xab3dc063 fuse_dev_fiq_ops +EXPORT_SYMBOL_GPL vmlinux 0xab44c4fd pci_find_dvsec_capability +EXPORT_SYMBOL_GPL vmlinux 0xab4aa427 ata_sff_thaw +EXPORT_SYMBOL_GPL vmlinux 0xab595673 get_state_synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xaba13b92 __SCK__tp_func_block_bio_remap +EXPORT_SYMBOL_GPL vmlinux 0xabb19dbd gpiod_get_array_value +EXPORT_SYMBOL_GPL vmlinux 0xabb207ed spi_slave_abort +EXPORT_SYMBOL_GPL vmlinux 0xabb7c7c2 get_cached_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xabb81303 usb_role_switch_find_by_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xabc298d0 intel_scu_ipc_unregister +EXPORT_SYMBOL_GPL vmlinux 0xabc640f3 list_lru_isolate +EXPORT_SYMBOL_GPL vmlinux 0xabc6e9e4 pm_report_max_hw_sleep +EXPORT_SYMBOL_GPL vmlinux 0xabca14fa bind_interdomain_evtchn_to_irq_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xabd2257d lp8788_write_byte +EXPORT_SYMBOL_GPL vmlinux 0xabf03fc3 __SCT__tp_func_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0xabf5b9db sysfs_add_file_to_group +EXPORT_SYMBOL_GPL vmlinux 0xabfc2a57 usb_get_intf +EXPORT_SYMBOL_GPL vmlinux 0xac56db8a driver_deferred_probe_check_state +EXPORT_SYMBOL_GPL vmlinux 0xac58179b rio_alloc_net +EXPORT_SYMBOL_GPL vmlinux 0xac5a6bf8 trace_remove_event_call +EXPORT_SYMBOL_GPL vmlinux 0xac5e904e xfrm_audit_state_icvfail +EXPORT_SYMBOL_GPL vmlinux 0xac82acc0 register_nvdimm_pmu +EXPORT_SYMBOL_GPL vmlinux 0xac8d51a4 kthread_data +EXPORT_SYMBOL_GPL vmlinux 0xaca1c2cc tty_ldisc_ref +EXPORT_SYMBOL_GPL vmlinux 0xacaab013 irq_domain_free_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xacb4d88c clk_rate_exclusive_put +EXPORT_SYMBOL_GPL vmlinux 0xacc2be46 dev_pm_opp_get_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xacc977ac alarm_forward_now +EXPORT_SYMBOL_GPL vmlinux 0xacffb5fd uart_insert_char +EXPORT_SYMBOL_GPL vmlinux 0xad137335 gpio_to_desc +EXPORT_SYMBOL_GPL vmlinux 0xad156d4f sata_link_resume +EXPORT_SYMBOL_GPL vmlinux 0xad1dbf67 ata_bmdma_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xad20161e ping_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xad395dd9 mm_account_pinned_pages +EXPORT_SYMBOL_GPL vmlinux 0xad44e005 pm_clk_add_clk +EXPORT_SYMBOL_GPL vmlinux 0xad4e6259 remove_cpu +EXPORT_SYMBOL_GPL vmlinux 0xad56b1f7 ata_dev_next +EXPORT_SYMBOL_GPL vmlinux 0xad5f0017 perf_trace_buf_alloc +EXPORT_SYMBOL_GPL vmlinux 0xad641dfc vfs_get_acl +EXPORT_SYMBOL_GPL vmlinux 0xad645234 register_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xad769a4a devlink_port_attrs_pci_sf_set +EXPORT_SYMBOL_GPL vmlinux 0xad83ce29 xas_find_conflict +EXPORT_SYMBOL_GPL vmlinux 0xad9929c3 gpiod_export_link +EXPORT_SYMBOL_GPL vmlinux 0xad9fb247 lwtunnel_valid_encap_type_attr +EXPORT_SYMBOL_GPL vmlinux 0xada38766 dst_cache_destroy +EXPORT_SYMBOL_GPL vmlinux 0xadb912cc sdio_disable_func +EXPORT_SYMBOL_GPL vmlinux 0xadbed7be put_pid +EXPORT_SYMBOL_GPL vmlinux 0xadc501bc sdio_retune_hold_now +EXPORT_SYMBOL_GPL vmlinux 0xadcdee4e crypto_larval_kill +EXPORT_SYMBOL_GPL vmlinux 0xade5339b hte_get_clk_src_info +EXPORT_SYMBOL_GPL vmlinux 0xadffc0ae fat_detach +EXPORT_SYMBOL_GPL vmlinux 0xae01217a mpi_write_to_sgl +EXPORT_SYMBOL_GPL vmlinux 0xae0ecf40 usb_bus_idr_lock +EXPORT_SYMBOL_GPL vmlinux 0xae1051b0 net_cls_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xae12d7f1 pci_sriov_set_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xae1feb86 clk_mux_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xae28c16a skb_partial_csum_set +EXPORT_SYMBOL_GPL vmlinux 0xae39f80e dst_cache_init +EXPORT_SYMBOL_GPL vmlinux 0xae69b1c1 usermodehelper_read_unlock +EXPORT_SYMBOL_GPL vmlinux 0xae7c231d mpi_cmp +EXPORT_SYMBOL_GPL vmlinux 0xae8df8bf shash_ahash_finup +EXPORT_SYMBOL_GPL vmlinux 0xae9852a0 housekeeping_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xaeb19506 blkdev_report_zones +EXPORT_SYMBOL_GPL vmlinux 0xaec3c2fc __traceiter_fib6_table_lookup +EXPORT_SYMBOL_GPL vmlinux 0xaecbad8a pinctrl_dev_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xaed97527 gnttab_pages_set_private +EXPORT_SYMBOL_GPL vmlinux 0xaeef3c13 device_link_del +EXPORT_SYMBOL_GPL vmlinux 0xaeefc802 device_for_each_child_reverse +EXPORT_SYMBOL_GPL vmlinux 0xaefc683a acpi_set_modalias +EXPORT_SYMBOL_GPL vmlinux 0xaf04d892 mddev_resume +EXPORT_SYMBOL_GPL vmlinux 0xaf076aec nd_fletcher64 +EXPORT_SYMBOL_GPL vmlinux 0xaf08c6fb regulator_get_error_flags +EXPORT_SYMBOL_GPL vmlinux 0xaf0b6ba7 blkg_rwstat_init +EXPORT_SYMBOL_GPL vmlinux 0xaf1aa472 spi_get_device_id +EXPORT_SYMBOL_GPL vmlinux 0xaf1c962b netdev_rx_handler_unregister +EXPORT_SYMBOL_GPL vmlinux 0xaf2d2eba do_unregister_con_driver +EXPORT_SYMBOL_GPL vmlinux 0xaf4014ff usb_amd_quirk_pll_check +EXPORT_SYMBOL_GPL vmlinux 0xaf428325 modify_ftrace_direct +EXPORT_SYMBOL_GPL vmlinux 0xaf493935 vchan_tx_submit +EXPORT_SYMBOL_GPL vmlinux 0xaf4dc3d6 wbt_disable_default +EXPORT_SYMBOL_GPL vmlinux 0xaf4f1acb tps6586x_update +EXPORT_SYMBOL_GPL vmlinux 0xaf519bcb __SCK__tp_func_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xaf69c246 wm831x_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xaf6d38c0 vcap_mod_rule +EXPORT_SYMBOL_GPL vmlinux 0xaf793668 __alloc_percpu_gfp +EXPORT_SYMBOL_GPL vmlinux 0xaf878288 usb_driver_release_interface +EXPORT_SYMBOL_GPL vmlinux 0xaf96d220 inet_csk_reqsk_queue_hash_add +EXPORT_SYMBOL_GPL vmlinux 0xafa002ca is_nvdimm_sync +EXPORT_SYMBOL_GPL vmlinux 0xafc251e4 md_do_sync +EXPORT_SYMBOL_GPL vmlinux 0xafcd1cb1 vcap_chain_id_to_lookup +EXPORT_SYMBOL_GPL vmlinux 0xafddd545 ata_id_c_string +EXPORT_SYMBOL_GPL vmlinux 0xafe89b8f dev_set_name +EXPORT_SYMBOL_GPL vmlinux 0xafef345a usb_deregister +EXPORT_SYMBOL_GPL vmlinux 0xaff9912a vring_create_virtqueue_dma +EXPORT_SYMBOL_GPL vmlinux 0xaffe4710 ata_host_start +EXPORT_SYMBOL_GPL vmlinux 0xb00713e9 __tracepoint_ata_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xb02ac411 register_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb02af2d4 kpp_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xb02c5777 acpi_quirk_skip_serdev_enumeration +EXPORT_SYMBOL_GPL vmlinux 0xb040f429 pci_set_cacheline_size +EXPORT_SYMBOL_GPL vmlinux 0xb04451f2 cgroup_attach_task_all +EXPORT_SYMBOL_GPL vmlinux 0xb04bd3b6 __inet_twsk_schedule +EXPORT_SYMBOL_GPL vmlinux 0xb05c39e2 rio_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb0609888 devm_bitmap_zalloc +EXPORT_SYMBOL_GPL vmlinux 0xb06ea245 sbitmap_queue_resize +EXPORT_SYMBOL_GPL vmlinux 0xb06ec77b iommu_sva_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xb0747ed2 rcu_cpu_stall_suppress +EXPORT_SYMBOL_GPL vmlinux 0xb077e70a clk_unprepare +EXPORT_SYMBOL_GPL vmlinux 0xb08b50de irq_setup_alt_chip +EXPORT_SYMBOL_GPL vmlinux 0xb0989082 usb_disable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xb0996b8d sk_msg_zerocopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xb0b85f47 ring_buffer_iter_reset +EXPORT_SYMBOL_GPL vmlinux 0xb0d1656c gpio_free_array +EXPORT_SYMBOL_GPL vmlinux 0xb0e79032 register_user_hw_breakpoint +EXPORT_SYMBOL_GPL vmlinux 0xb0e7ab1f __traceiter_console +EXPORT_SYMBOL_GPL vmlinux 0xb0e8e671 xenbus_otherend_changed +EXPORT_SYMBOL_GPL vmlinux 0xb0ecd58a ata_bmdma_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xb0edda6b __tracepoint_ata_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xb0ff47d4 __SCK__tp_func_xhci_dbg_quirks +EXPORT_SYMBOL_GPL vmlinux 0xb10163ba rio_release_inb_pwrite +EXPORT_SYMBOL_GPL vmlinux 0xb10d964d devlink_fmsg_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xb11cc43b __SCT__tp_func_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xb11d9000 tty_dev_name_to_number +EXPORT_SYMBOL_GPL vmlinux 0xb124fb16 cn_add_callback +EXPORT_SYMBOL_GPL vmlinux 0xb12c6f93 virtqueue_kick_prepare +EXPORT_SYMBOL_GPL vmlinux 0xb133516c tcp_ca_openreq_child +EXPORT_SYMBOL_GPL vmlinux 0xb1360987 restore_online_page_callback +EXPORT_SYMBOL_GPL vmlinux 0xb13837ce vcap_rule_add_key_u48 +EXPORT_SYMBOL_GPL vmlinux 0xb138d68b vcap_tc_flower_handler_ipv6_usage +EXPORT_SYMBOL_GPL vmlinux 0xb13e1800 dax_recovery_write +EXPORT_SYMBOL_GPL vmlinux 0xb14c06ac led_trigger_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb14f0c24 clk_hw_forward_rate_request +EXPORT_SYMBOL_GPL vmlinux 0xb15f7136 adp5520_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xb1647fc2 devlink_info_version_running_put +EXPORT_SYMBOL_GPL vmlinux 0xb170f888 ata_pci_sff_prepare_host +EXPORT_SYMBOL_GPL vmlinux 0xb1764578 register_btf_id_dtor_kfuncs +EXPORT_SYMBOL_GPL vmlinux 0xb17b03e6 regulator_desc_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xb1809631 __udp_enqueue_schedule_skb +EXPORT_SYMBOL_GPL vmlinux 0xb188cc71 put_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xb19c6d4b pci_pasid_features +EXPORT_SYMBOL_GPL vmlinux 0xb19cf7b3 devm_pinctrl_register +EXPORT_SYMBOL_GPL vmlinux 0xb1a07346 i2c_dw_adjust_bus_speed +EXPORT_SYMBOL_GPL vmlinux 0xb1ab3fea __SCK__tp_func_br_fdb_update +EXPORT_SYMBOL_GPL vmlinux 0xb1b62f9d __dma_request_channel +EXPORT_SYMBOL_GPL vmlinux 0xb1b7499e __tracepoint_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xb1baa71a devlink_linecard_provision_fail +EXPORT_SYMBOL_GPL vmlinux 0xb1bed25d dpm_resume_start +EXPORT_SYMBOL_GPL vmlinux 0xb1c13874 __nvme_check_ready +EXPORT_SYMBOL_GPL vmlinux 0xb1dfecea power_supply_battery_info_properties_size +EXPORT_SYMBOL_GPL vmlinux 0xb1e25684 __trace_bputs +EXPORT_SYMBOL_GPL vmlinux 0xb1fc1782 pci_speed_string +EXPORT_SYMBOL_GPL vmlinux 0xb202f0d7 rht_bucket_nested_insert +EXPORT_SYMBOL_GPL vmlinux 0xb20d01c6 serial8250_rpm_put_tx +EXPORT_SYMBOL_GPL vmlinux 0xb20da6d0 __irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xb2149561 devm_devfreq_event_remove_edev +EXPORT_SYMBOL_GPL vmlinux 0xb2160402 led_update_brightness +EXPORT_SYMBOL_GPL vmlinux 0xb21d00c6 hte_ts_put +EXPORT_SYMBOL_GPL vmlinux 0xb2210d64 reset_control_deassert +EXPORT_SYMBOL_GPL vmlinux 0xb23b7691 start_poll_synchronize_rcu_full +EXPORT_SYMBOL_GPL vmlinux 0xb2405efc secure_tcp_seq +EXPORT_SYMBOL_GPL vmlinux 0xb240bcc6 transport_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xb256be16 efivar_is_available +EXPORT_SYMBOL_GPL vmlinux 0xb2601ea3 tps6586x_write +EXPORT_SYMBOL_GPL vmlinux 0xb26066fe ibft_phys_addr +EXPORT_SYMBOL_GPL vmlinux 0xb26a1add elfcorehdr_addr +EXPORT_SYMBOL_GPL vmlinux 0xb2751637 rt_mutex_lock_interruptible +EXPORT_SYMBOL_GPL vmlinux 0xb27abf96 devm_of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xb27fae0e tdx_enable +EXPORT_SYMBOL_GPL vmlinux 0xb2840191 ip_route_output_tunnel +EXPORT_SYMBOL_GPL vmlinux 0xb285b8f8 xen_in_preemptible_hcall +EXPORT_SYMBOL_GPL vmlinux 0xb2891e06 phy_modify +EXPORT_SYMBOL_GPL vmlinux 0xb28a4121 skb_pull_rcsum +EXPORT_SYMBOL_GPL vmlinux 0xb29533ee zs_malloc +EXPORT_SYMBOL_GPL vmlinux 0xb2a20a24 dev_pm_put_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xb2a6f197 bpf_fentry_test1 +EXPORT_SYMBOL_GPL vmlinux 0xb2b0373b xhci_gen_setup +EXPORT_SYMBOL_GPL vmlinux 0xb2b15f67 set_direct_map_split_noflush +EXPORT_SYMBOL_GPL vmlinux 0xb2bcb12d devm_clk_get_optional_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb2c1732e rcu_gp_set_torture_wait +EXPORT_SYMBOL_GPL vmlinux 0xb2c58803 dw_pcie_ep_linkup +EXPORT_SYMBOL_GPL vmlinux 0xb2d89a0e pm_clk_create +EXPORT_SYMBOL_GPL vmlinux 0xb2fa093e blk_mq_map_queues +EXPORT_SYMBOL_GPL vmlinux 0xb307c909 devlink_fmsg_u64_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xb3182e53 watchdog_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xb3253ed9 hpet_rtc_timer_init +EXPORT_SYMBOL_GPL vmlinux 0xb33622dd ip6_input +EXPORT_SYMBOL_GPL vmlinux 0xb34735f9 __tracepoint_udp_fail_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xb3483619 iommu_device_unlink +EXPORT_SYMBOL_GPL vmlinux 0xb36b9111 of_devfreq_cooling_register_power +EXPORT_SYMBOL_GPL vmlinux 0xb377de2e sysfs_remove_groups +EXPORT_SYMBOL_GPL vmlinux 0xb37b3901 sfp_register_socket +EXPORT_SYMBOL_GPL vmlinux 0xb38a56fb gpiod_get_array +EXPORT_SYMBOL_GPL vmlinux 0xb391f76f ata_host_detach +EXPORT_SYMBOL_GPL vmlinux 0xb39665cc kgdb_register_io_module +EXPORT_SYMBOL_GPL vmlinux 0xb3a27521 serdev_device_set_baudrate +EXPORT_SYMBOL_GPL vmlinux 0xb3acc7eb clk_hw_get_parent_index +EXPORT_SYMBOL_GPL vmlinux 0xb3be5213 devfreq_cooling_em_register +EXPORT_SYMBOL_GPL vmlinux 0xb3c92706 dev_err_probe +EXPORT_SYMBOL_GPL vmlinux 0xb3e0baf9 skb_clone_tx_timestamp +EXPORT_SYMBOL_GPL vmlinux 0xb3e1efe3 blk_crypto_intersect_capabilities +EXPORT_SYMBOL_GPL vmlinux 0xb3f3a860 fib_nh_common_release +EXPORT_SYMBOL_GPL vmlinux 0xb3fcc3f0 rio_mport_read_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xb3fd8fe6 kernel_read_file_from_path +EXPORT_SYMBOL_GPL vmlinux 0xb400bda1 devl_rate_node_create +EXPORT_SYMBOL_GPL vmlinux 0xb4096d8d component_del +EXPORT_SYMBOL_GPL vmlinux 0xb411fe8f tcp_slow_start +EXPORT_SYMBOL_GPL vmlinux 0xb4165b90 inet_hash +EXPORT_SYMBOL_GPL vmlinux 0xb41aa434 dev_pm_opp_adjust_voltage +EXPORT_SYMBOL_GPL vmlinux 0xb420fe4f create_signature +EXPORT_SYMBOL_GPL vmlinux 0xb42ae782 spi_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb43da8ba device_create_with_groups +EXPORT_SYMBOL_GPL vmlinux 0xb43f9365 ktime_get +EXPORT_SYMBOL_GPL vmlinux 0xb44e18ea audit_enabled +EXPORT_SYMBOL_GPL vmlinux 0xb46db92e acpi_pm_wakeup_event +EXPORT_SYMBOL_GPL vmlinux 0xb47bfd7f __tracepoint_pelt_thermal_tp +EXPORT_SYMBOL_GPL vmlinux 0xb4802421 ata_cable_40wire +EXPORT_SYMBOL_GPL vmlinux 0xb486cfa1 tcp_unregister_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xb48f0638 software_node_register +EXPORT_SYMBOL_GPL vmlinux 0xb4a650ed regulator_is_enabled_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb4b4dc3f cgroup_get_e_css +EXPORT_SYMBOL_GPL vmlinux 0xb4b97c90 pvclock_gtod_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb4bd265b vfs_lock_file +EXPORT_SYMBOL_GPL vmlinux 0xb4d488ee pci_epc_get_msix +EXPORT_SYMBOL_GPL vmlinux 0xb4d4cf15 xenbus_dev_probe +EXPORT_SYMBOL_GPL vmlinux 0xb4dbebb8 pci_walk_bus +EXPORT_SYMBOL_GPL vmlinux 0xb4ea7cf7 kgdb_connected +EXPORT_SYMBOL_GPL vmlinux 0xb4eda0da ring_buffer_event_length +EXPORT_SYMBOL_GPL vmlinux 0xb4f500c2 irq_domain_translate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xb501b2df nd_cmd_dimm_desc +EXPORT_SYMBOL_GPL vmlinux 0xb50784f4 raw_abort +EXPORT_SYMBOL_GPL vmlinux 0xb5093dd3 console_list +EXPORT_SYMBOL_GPL vmlinux 0xb50e1578 devm_acpi_dev_add_driver_gpios +EXPORT_SYMBOL_GPL vmlinux 0xb51b9246 vcap_port_debugfs +EXPORT_SYMBOL_GPL vmlinux 0xb51fbd64 edac_op_state +EXPORT_SYMBOL_GPL vmlinux 0xb52090ed crypto_alloc_sig +EXPORT_SYMBOL_GPL vmlinux 0xb520eb79 btree_merge +EXPORT_SYMBOL_GPL vmlinux 0xb5273cd1 xenbus_dev_is_online +EXPORT_SYMBOL_GPL vmlinux 0xb5440be9 crypto_grab_shash +EXPORT_SYMBOL_GPL vmlinux 0xb55139f6 HUF_readStats +EXPORT_SYMBOL_GPL vmlinux 0xb5580865 ata_link_next +EXPORT_SYMBOL_GPL vmlinux 0xb55e9f1a pci_epc_unmap_addr +EXPORT_SYMBOL_GPL vmlinux 0xb561c490 mpi_mul +EXPORT_SYMBOL_GPL vmlinux 0xb562627c pinctrl_pm_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xb56d9db2 crypto_shash_setkey +EXPORT_SYMBOL_GPL vmlinux 0xb57b44e6 __strp_unpause +EXPORT_SYMBOL_GPL vmlinux 0xb5861c63 devm_hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xb59e4433 regulator_set_voltage_sel_pickable_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb5a82409 regmap_mmio_detach_clk +EXPORT_SYMBOL_GPL vmlinux 0xb5a83e35 gnttab_setup_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xb5a8c226 acpi_gsi_to_irq +EXPORT_SYMBOL_GPL vmlinux 0xb5b2b108 fwnode_graph_get_remote_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xb5b4fc51 devm_kfree +EXPORT_SYMBOL_GPL vmlinux 0xb5b58c63 __SCK__tp_func_xhci_dbg_init +EXPORT_SYMBOL_GPL vmlinux 0xb5e8b410 dst_cache_get_ip4 +EXPORT_SYMBOL_GPL vmlinux 0xb5fe2575 iomap_seek_hole +EXPORT_SYMBOL_GPL vmlinux 0xb600ddb1 scsi_alloc_request +EXPORT_SYMBOL_GPL vmlinux 0xb6098f45 auxiliary_find_device +EXPORT_SYMBOL_GPL vmlinux 0xb615c3ac devm_regulator_irq_helper +EXPORT_SYMBOL_GPL vmlinux 0xb6261484 register_die_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb6293ac1 espintcp_push_skb +EXPORT_SYMBOL_GPL vmlinux 0xb62c014a bpf_prog_create_from_user +EXPORT_SYMBOL_GPL vmlinux 0xb6410433 mpi_addm +EXPORT_SYMBOL_GPL vmlinux 0xb64a7211 phy_create_lookup +EXPORT_SYMBOL_GPL vmlinux 0xb6500e3f crypto_ahash_digest +EXPORT_SYMBOL_GPL vmlinux 0xb655f91b pci_epc_get_next_free_bar +EXPORT_SYMBOL_GPL vmlinux 0xb6714499 sk_clear_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xb677c585 regcache_sync +EXPORT_SYMBOL_GPL vmlinux 0xb6787346 sfp_unregister_socket +EXPORT_SYMBOL_GPL vmlinux 0xb67dd786 sysfs_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xb6888188 klp_shadow_get_or_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb69afbb0 devlink_linecard_deactivate +EXPORT_SYMBOL_GPL vmlinux 0xb69ea526 scsi_unregister_device_handler +EXPORT_SYMBOL_GPL vmlinux 0xb6a1f298 dma_get_slave_channel +EXPORT_SYMBOL_GPL vmlinux 0xb6b6b38d iommu_iova_to_phys +EXPORT_SYMBOL_GPL vmlinux 0xb6c5e614 acpi_processor_evaluate_cst +EXPORT_SYMBOL_GPL vmlinux 0xb6df084d sbitmap_queue_get_shallow +EXPORT_SYMBOL_GPL vmlinux 0xb6df145f security_inode_init_security_anon +EXPORT_SYMBOL_GPL vmlinux 0xb6e6d99d clk_disable +EXPORT_SYMBOL_GPL vmlinux 0xb6eabe37 register_kprobes +EXPORT_SYMBOL_GPL vmlinux 0xb6f547eb devlink_region_create +EXPORT_SYMBOL_GPL vmlinux 0xb6fa76ad regulator_set_suspend_voltage +EXPORT_SYMBOL_GPL vmlinux 0xb71d182f blk_mq_hctx_set_fq_lock_class +EXPORT_SYMBOL_GPL vmlinux 0xb72d0807 regmap_bulk_read +EXPORT_SYMBOL_GPL vmlinux 0xb7329c06 clk_set_phase +EXPORT_SYMBOL_GPL vmlinux 0xb73713d7 nvmem_add_cell_lookups +EXPORT_SYMBOL_GPL vmlinux 0xb74176f8 virtqueue_get_avail_addr +EXPORT_SYMBOL_GPL vmlinux 0xb74329f0 __tracepoint_devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xb7486809 da9052_adc_manual_read +EXPORT_SYMBOL_GPL vmlinux 0xb75041d1 hv_stimer_legacy_init +EXPORT_SYMBOL_GPL vmlinux 0xb75ff6a7 led_trigger_event +EXPORT_SYMBOL_GPL vmlinux 0xb763b239 xfrm_audit_state_add +EXPORT_SYMBOL_GPL vmlinux 0xb7959025 acpi_dev_pm_attach +EXPORT_SYMBOL_GPL vmlinux 0xb798d1f3 i2c_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xb79e0794 regulator_list_voltage_linear +EXPORT_SYMBOL_GPL vmlinux 0xb7a387fc synchronize_rcu_tasks_rude +EXPORT_SYMBOL_GPL vmlinux 0xb7af1da3 fat_time_unix2fat +EXPORT_SYMBOL_GPL vmlinux 0xb7b4cc9d sk_psock_msg_verdict +EXPORT_SYMBOL_GPL vmlinux 0xb7b53d3f bpf_warn_invalid_xdp_action +EXPORT_SYMBOL_GPL vmlinux 0xb7c69a63 unregister_vmap_purge_notifier +EXPORT_SYMBOL_GPL vmlinux 0xb7d7c12e hpet_set_alarm_time +EXPORT_SYMBOL_GPL vmlinux 0xb7dbd39e extcon_dev_register +EXPORT_SYMBOL_GPL vmlinux 0xb7e5f9bf __devm_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xb7eab117 devl_linecard_destroy +EXPORT_SYMBOL_GPL vmlinux 0xb7f4a57c crypto_alloc_base +EXPORT_SYMBOL_GPL vmlinux 0xb7f990e9 rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xb82721b8 blk_req_zone_write_trylock +EXPORT_SYMBOL_GPL vmlinux 0xb8273d0b __wake_up_sync +EXPORT_SYMBOL_GPL vmlinux 0xb8321416 security_file_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xb841228c usb_submit_urb +EXPORT_SYMBOL_GPL vmlinux 0xb8478750 __blk_req_zone_write_unlock +EXPORT_SYMBOL_GPL vmlinux 0xb85042e5 gnttab_free_grant_reference_seq +EXPORT_SYMBOL_GPL vmlinux 0xb85b4022 fib_info_nh_uses_dev +EXPORT_SYMBOL_GPL vmlinux 0xb8686b0d unregister_pernet_subsys +EXPORT_SYMBOL_GPL vmlinux 0xb8773eb7 devl_linecard_create +EXPORT_SYMBOL_GPL vmlinux 0xb87ae6a4 hv_ghcb_msr_write +EXPORT_SYMBOL_GPL vmlinux 0xb87b61ed regmap_noinc_write +EXPORT_SYMBOL_GPL vmlinux 0xb87f40fe cppc_set_enable +EXPORT_SYMBOL_GPL vmlinux 0xb883d1d9 devm_reset_control_array_get +EXPORT_SYMBOL_GPL vmlinux 0xb88dbfce irq_set_irqchip_state +EXPORT_SYMBOL_GPL vmlinux 0xb892ce22 bus_find_device +EXPORT_SYMBOL_GPL vmlinux 0xb89e69b1 jump_label_update_timeout +EXPORT_SYMBOL_GPL vmlinux 0xb8ab68df intel_microcode_sanity_check +EXPORT_SYMBOL_GPL vmlinux 0xb8b0618c iommu_enable_nesting +EXPORT_SYMBOL_GPL vmlinux 0xb8b2b1f7 mce_register_decode_chain +EXPORT_SYMBOL_GPL vmlinux 0xb8b8ec8d acpi_create_platform_device +EXPORT_SYMBOL_GPL vmlinux 0xb8be56b6 clk_hw_register_composite +EXPORT_SYMBOL_GPL vmlinux 0xb8cd3a7f nf_logger_put +EXPORT_SYMBOL_GPL vmlinux 0xb8ce468c clk_hw_register_fixed_factor_parent_hw +EXPORT_SYMBOL_GPL vmlinux 0xb8d8cc97 irq_create_mapping_affinity +EXPORT_SYMBOL_GPL vmlinux 0xb8e29104 subsys_virtual_register +EXPORT_SYMBOL_GPL vmlinux 0xb8f11603 idr_alloc +EXPORT_SYMBOL_GPL vmlinux 0xb8f40ccd crypto_unregister_skciphers +EXPORT_SYMBOL_GPL vmlinux 0xb8f6e296 __nvmem_layout_register +EXPORT_SYMBOL_GPL vmlinux 0xb8fc3647 regmap_mmio_attach_clk +EXPORT_SYMBOL_GPL vmlinux 0xb90e0b76 __iptunnel_pull_header +EXPORT_SYMBOL_GPL vmlinux 0xb911c05a devm_irq_domain_create_sim +EXPORT_SYMBOL_GPL vmlinux 0xb912560d static_key_disable +EXPORT_SYMBOL_GPL vmlinux 0xb915ce29 iommu_device_sysfs_add +EXPORT_SYMBOL_GPL vmlinux 0xb91bb39c device_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xb91f1fc2 __devm_clk_hw_register_divider +EXPORT_SYMBOL_GPL vmlinux 0xb929f305 genphy_c45_read_mdix +EXPORT_SYMBOL_GPL vmlinux 0xb939b1a0 rio_add_net +EXPORT_SYMBOL_GPL vmlinux 0xb940d90d hte_enable_ts +EXPORT_SYMBOL_GPL vmlinux 0xb95542c1 sdio_f0_readb +EXPORT_SYMBOL_GPL vmlinux 0xb9681621 xdp_do_flush +EXPORT_SYMBOL_GPL vmlinux 0xb97ca0e3 usb_check_int_endpoints +EXPORT_SYMBOL_GPL vmlinux 0xb98193f5 tty_get_icount +EXPORT_SYMBOL_GPL vmlinux 0xb9852d11 __traceiter_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xb995b4f8 skb_mpls_push +EXPORT_SYMBOL_GPL vmlinux 0xb99a3b00 sbitmap_queue_recalculate_wake_batch +EXPORT_SYMBOL_GPL vmlinux 0xb9a2a087 xenbus_watch_path +EXPORT_SYMBOL_GPL vmlinux 0xb9a6f60f debugfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xb9ace70f dev_get_regmap +EXPORT_SYMBOL_GPL vmlinux 0xb9b9df41 usb_amd_dev_put +EXPORT_SYMBOL_GPL vmlinux 0xb9bef884 dev_pm_qos_hide_flags +EXPORT_SYMBOL_GPL vmlinux 0xb9c16f51 hv_max_vp_index +EXPORT_SYMBOL_GPL vmlinux 0xb9c425de register_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xb9c6d054 debugfs_create_devm_seqfile +EXPORT_SYMBOL_GPL vmlinux 0xb9cff8b5 hrtimer_sleeper_start_expires +EXPORT_SYMBOL_GPL vmlinux 0xb9d025c9 llist_del_first +EXPORT_SYMBOL_GPL vmlinux 0xb9d52ed8 badblocks_set +EXPORT_SYMBOL_GPL vmlinux 0xb9ea612f intel_pinctrl_probe_by_hid +EXPORT_SYMBOL_GPL vmlinux 0xb9ef5a92 class_compat_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xba01ec83 hv_stimer_global_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xba0381de gpiochip_reqres_irq +EXPORT_SYMBOL_GPL vmlinux 0xba03ad0a pci_pri_supported +EXPORT_SYMBOL_GPL vmlinux 0xba094957 crypto_skcipher_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xba1f7605 gpiochip_line_is_valid +EXPORT_SYMBOL_GPL vmlinux 0xba20537a dm_device_name +EXPORT_SYMBOL_GPL vmlinux 0xba220db7 __wake_up_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xba2b7f64 cpufreq_generic_get +EXPORT_SYMBOL_GPL vmlinux 0xba310dd8 phy_pm_runtime_put_sync +EXPORT_SYMBOL_GPL vmlinux 0xba34c58f fuse_do_open +EXPORT_SYMBOL_GPL vmlinux 0xba493c86 devl_sb_register +EXPORT_SYMBOL_GPL vmlinux 0xba539d15 dma_pci_p2pdma_supported +EXPORT_SYMBOL_GPL vmlinux 0xba5625e9 adp5520_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xba57ee99 regulator_bulk_free +EXPORT_SYMBOL_GPL vmlinux 0xba5ad8da irq_create_fwspec_mapping +EXPORT_SYMBOL_GPL vmlinux 0xba63039d strp_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xba82f246 uv_bios_install_heap +EXPORT_SYMBOL_GPL vmlinux 0xbab9a9f0 maxim_charger_currents +EXPORT_SYMBOL_GPL vmlinux 0xbac796b3 clk_hw_get_name +EXPORT_SYMBOL_GPL vmlinux 0xbac800df list_lru_walk_one +EXPORT_SYMBOL_GPL vmlinux 0xbadc80b2 arch_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xbade3523 serial8250_set_defaults +EXPORT_SYMBOL_GPL vmlinux 0xbaf1ae65 clk_register_composite +EXPORT_SYMBOL_GPL vmlinux 0xbaf29b7e __traceiter_xdp_exception +EXPORT_SYMBOL_GPL vmlinux 0xbaf6850c fsnotify_wait_marks_destroyed +EXPORT_SYMBOL_GPL vmlinux 0xbaf9d785 __tss_limit_invalid +EXPORT_SYMBOL_GPL vmlinux 0xbb006021 __tracepoint_ipi_send_cpu +EXPORT_SYMBOL_GPL vmlinux 0xbb028ad3 rcu_gp_slow_register +EXPORT_SYMBOL_GPL vmlinux 0xbb04407c devm_of_icc_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xbb069313 pci_iov_get_pf_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xbb0ab47b debug_locks +EXPORT_SYMBOL_GPL vmlinux 0xbb0b25d2 register_xenbus_watch +EXPORT_SYMBOL_GPL vmlinux 0xbb0b7413 pinctrl_remove_gpio_range +EXPORT_SYMBOL_GPL vmlinux 0xbb1468b1 kthread_mod_delayed_work +EXPORT_SYMBOL_GPL vmlinux 0xbb1875fa hypervisor_kobj +EXPORT_SYMBOL_GPL vmlinux 0xbb1ca175 genphy_c45_read_link +EXPORT_SYMBOL_GPL vmlinux 0xbb25c70e ata_pci_sff_activate_host +EXPORT_SYMBOL_GPL vmlinux 0xbb3020fd tpm_calc_ordinal_duration +EXPORT_SYMBOL_GPL vmlinux 0xbb35ef87 mtrr_state +EXPORT_SYMBOL_GPL vmlinux 0xbb4146b3 get_completed_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xbb44e9e4 spi_controller_dma_map_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xbb451eaa rio_release_inb_mbox +EXPORT_SYMBOL_GPL vmlinux 0xbb50c207 thermal_cooling_device_register +EXPORT_SYMBOL_GPL vmlinux 0xbb51e191 __unwind_start +EXPORT_SYMBOL_GPL vmlinux 0xbb5598ce get_llc_id +EXPORT_SYMBOL_GPL vmlinux 0xbb5ca605 extcon_set_state_sync +EXPORT_SYMBOL_GPL vmlinux 0xbb5e5569 crypto_alloc_acomp_node +EXPORT_SYMBOL_GPL vmlinux 0xbb6508da random_get_entropy_fallback +EXPORT_SYMBOL_GPL vmlinux 0xbb6a3cbd devlink_fmsg_arr_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xbb6f025a asymmetric_key_generate_id +EXPORT_SYMBOL_GPL vmlinux 0xbb7195a5 xdp_warn +EXPORT_SYMBOL_GPL vmlinux 0xbb731fcc regulator_get_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xbb9d257a sysfs_create_group +EXPORT_SYMBOL_GPL vmlinux 0xbbaaab23 fat_getattr +EXPORT_SYMBOL_GPL vmlinux 0xbbace938 fat_add_entries +EXPORT_SYMBOL_GPL vmlinux 0xbbb1b8ad __hwspin_lock_timeout +EXPORT_SYMBOL_GPL vmlinux 0xbbb98859 edid_info +EXPORT_SYMBOL_GPL vmlinux 0xbbd82c93 gpiod_unexport +EXPORT_SYMBOL_GPL vmlinux 0xbbe5611b crc64_rocksoft_update +EXPORT_SYMBOL_GPL vmlinux 0xbbe56404 sprint_OID +EXPORT_SYMBOL_GPL vmlinux 0xbbe97659 scsi_build_sense +EXPORT_SYMBOL_GPL vmlinux 0xbbf295d5 disk_uevent +EXPORT_SYMBOL_GPL vmlinux 0xbbf7f0a1 inet_csk_get_port +EXPORT_SYMBOL_GPL vmlinux 0xbc055956 fscrypt_d_revalidate +EXPORT_SYMBOL_GPL vmlinux 0xbc0d679e iommu_device_release_dma_owner +EXPORT_SYMBOL_GPL vmlinux 0xbc14c22b wm8400_reset_codec_reg_cache +EXPORT_SYMBOL_GPL vmlinux 0xbc314156 nop_mnt_idmap +EXPORT_SYMBOL_GPL vmlinux 0xbc31aedd unwind_get_return_address +EXPORT_SYMBOL_GPL vmlinux 0xbc37fd8b __SCK__tp_func_block_split +EXPORT_SYMBOL_GPL vmlinux 0xbc3f2cb0 timecounter_cyc2time +EXPORT_SYMBOL_GPL vmlinux 0xbc4276f3 usb_string +EXPORT_SYMBOL_GPL vmlinux 0xbc484cd2 pm_clk_remove +EXPORT_SYMBOL_GPL vmlinux 0xbc495666 __fscrypt_encrypt_symlink +EXPORT_SYMBOL_GPL vmlinux 0xbc4e24bb copy_mc_to_kernel +EXPORT_SYMBOL_GPL vmlinux 0xbc5c8e34 __fscrypt_inode_uses_inline_crypto +EXPORT_SYMBOL_GPL vmlinux 0xbc5dc8ba blk_add_driver_data +EXPORT_SYMBOL_GPL vmlinux 0xbc60dc37 cpufreq_show_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbc613fb3 serial8250_do_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xbc6bec66 free_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xbc7cd717 ack_all_badblocks +EXPORT_SYMBOL_GPL vmlinux 0xbc92596d intel_pt_validate_cap +EXPORT_SYMBOL_GPL vmlinux 0xbc95d82b srcu_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xbc9b8588 ehci_cf_port_reset_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xbcb838a1 amd_flush_garts +EXPORT_SYMBOL_GPL vmlinux 0xbcc15e75 ktime_get_coarse_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xbcdd5b99 iommu_group_set_name +EXPORT_SYMBOL_GPL vmlinux 0xbce12556 clk_divider_ro_ops +EXPORT_SYMBOL_GPL vmlinux 0xbce45661 cpuidle_register_device +EXPORT_SYMBOL_GPL vmlinux 0xbceeea89 ping_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xbcf1f0e6 zs_create_pool +EXPORT_SYMBOL_GPL vmlinux 0xbcfaaec3 metadata_dst_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbd007429 nvme_quiesce_admin_queue +EXPORT_SYMBOL_GPL vmlinux 0xbd06f3a9 ata_get_cmd_name +EXPORT_SYMBOL_GPL vmlinux 0xbd07443a perf_tp_event +EXPORT_SYMBOL_GPL vmlinux 0xbd0acaec devm_kstrdup +EXPORT_SYMBOL_GPL vmlinux 0xbd0cdf8a scsi_dh_attach +EXPORT_SYMBOL_GPL vmlinux 0xbd195c03 __SCK__tp_func_console +EXPORT_SYMBOL_GPL vmlinux 0xbd2991ae reset_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xbd310fd3 vfs_setxattr +EXPORT_SYMBOL_GPL vmlinux 0xbd3fe1e3 disable_hardirq +EXPORT_SYMBOL_GPL vmlinux 0xbd418856 pm_clk_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xbd4e5348 fbcon_modechange_possible +EXPORT_SYMBOL_GPL vmlinux 0xbd609aac rtnl_put_cacheinfo +EXPORT_SYMBOL_GPL vmlinux 0xbd64613b spi_mem_adjust_op_size +EXPORT_SYMBOL_GPL vmlinux 0xbd678291 ata_slave_link_init +EXPORT_SYMBOL_GPL vmlinux 0xbd7aaaee add_memory +EXPORT_SYMBOL_GPL vmlinux 0xbd8b6a6d regulator_get_hardware_vsel_register +EXPORT_SYMBOL_GPL vmlinux 0xbd99e873 __SCT__tp_func_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xbda047da kgdb_unregister_io_module +EXPORT_SYMBOL_GPL vmlinux 0xbda04a91 cond_synchronize_rcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xbdabd3b3 gpiod_set_consumer_name +EXPORT_SYMBOL_GPL vmlinux 0xbdb2217d hv_is_isolation_supported +EXPORT_SYMBOL_GPL vmlinux 0xbdb2dfd5 uv_bios_reserved_page_pa +EXPORT_SYMBOL_GPL vmlinux 0xbdb5fbfe regulator_bulk_disable +EXPORT_SYMBOL_GPL vmlinux 0xbdbbad04 regulator_desc_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xbdda1b5f vmalloc_huge +EXPORT_SYMBOL_GPL vmlinux 0xbdf8bf64 vp_legacy_queue_vector +EXPORT_SYMBOL_GPL vmlinux 0xbdfcf044 regmap_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xbdfdf052 serial8250_em485_destroy +EXPORT_SYMBOL_GPL vmlinux 0xbe057737 icc_set_tag +EXPORT_SYMBOL_GPL vmlinux 0xbe0d0971 ata_pci_device_suspend +EXPORT_SYMBOL_GPL vmlinux 0xbe1b457a regulator_map_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xbe2449a1 sk_msg_return +EXPORT_SYMBOL_GPL vmlinux 0xbe2cb122 skb_zerocopy_headlen +EXPORT_SYMBOL_GPL vmlinux 0xbe2d545e devl_port_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xbe3e5263 devm_i2c_add_adapter +EXPORT_SYMBOL_GPL vmlinux 0xbe41fa81 pci_vpd_alloc +EXPORT_SYMBOL_GPL vmlinux 0xbe4a6c9e iptunnel_handle_offloads +EXPORT_SYMBOL_GPL vmlinux 0xbe4c411a usb_check_bulk_endpoints +EXPORT_SYMBOL_GPL vmlinux 0xbe52c040 tty_buffer_unlock_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xbe5c888b crypto_chain +EXPORT_SYMBOL_GPL vmlinux 0xbe65e182 max_cswd_read_retries +EXPORT_SYMBOL_GPL vmlinux 0xbe687e88 wake_up_all_idle_cpus +EXPORT_SYMBOL_GPL vmlinux 0xbe744257 efi_get_embedded_fw +EXPORT_SYMBOL_GPL vmlinux 0xbe748b1f intel_find_matching_signature +EXPORT_SYMBOL_GPL vmlinux 0xbe79bc4f pci_sriov_configure_simple +EXPORT_SYMBOL_GPL vmlinux 0xbe82be94 sysfs_remove_link +EXPORT_SYMBOL_GPL vmlinux 0xbe93d0b8 regmap_field_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xbe9595f0 xenbus_dev_changed +EXPORT_SYMBOL_GPL vmlinux 0xbe988a30 power_supply_class +EXPORT_SYMBOL_GPL vmlinux 0xbe9a83d5 dw_pcie_write +EXPORT_SYMBOL_GPL vmlinux 0xbe9e240e iomap_is_partially_uptodate +EXPORT_SYMBOL_GPL vmlinux 0xbea5ff1e static_key_initialized +EXPORT_SYMBOL_GPL vmlinux 0xbea7c289 tpm_pcr_extend +EXPORT_SYMBOL_GPL vmlinux 0xbec3f920 bus_create_file +EXPORT_SYMBOL_GPL vmlinux 0xbec66c3a __apei_exec_run +EXPORT_SYMBOL_GPL vmlinux 0xbed24927 class_create_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xbeebe273 crypto_sig_set_pubkey +EXPORT_SYMBOL_GPL vmlinux 0xbefd1bcc fwnode_property_read_string_array +EXPORT_SYMBOL_GPL vmlinux 0xbf041102 register_vt_notifier +EXPORT_SYMBOL_GPL vmlinux 0xbf165dec __SCT__tp_func_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xbf1cb4fb perf_msr_probe +EXPORT_SYMBOL_GPL vmlinux 0xbf24979f of_pwm_xlate_with_flags +EXPORT_SYMBOL_GPL vmlinux 0xbf287da2 platform_find_device_by_driver +EXPORT_SYMBOL_GPL vmlinux 0xbf2e2e71 housekeeping_enabled +EXPORT_SYMBOL_GPL vmlinux 0xbf4508e0 uart_console_write +EXPORT_SYMBOL_GPL vmlinux 0xbf4513c3 devlink_linecard_activate +EXPORT_SYMBOL_GPL vmlinux 0xbf4805a7 exportfs_encode_fh +EXPORT_SYMBOL_GPL vmlinux 0xbf485db3 phy_led_trigger_change_speed +EXPORT_SYMBOL_GPL vmlinux 0xbf4880e9 tty_release_struct +EXPORT_SYMBOL_GPL vmlinux 0xbf4baf3e events_hybrid_sysfs_show +EXPORT_SYMBOL_GPL vmlinux 0xbf6d7bc7 __folio_lock_killable +EXPORT_SYMBOL_GPL vmlinux 0xbfbc5434 pciserial_resume_ports +EXPORT_SYMBOL_GPL vmlinux 0xbfc47478 sysfs_remove_link_from_group +EXPORT_SYMBOL_GPL vmlinux 0xbfe5616d tick_broadcast_oneshot_control +EXPORT_SYMBOL_GPL vmlinux 0xbfe6878f devlink_resources_unregister +EXPORT_SYMBOL_GPL vmlinux 0xbfed2cd9 __wait_rcu_gp +EXPORT_SYMBOL_GPL vmlinux 0xbff1e963 usb_alloc_streams +EXPORT_SYMBOL_GPL vmlinux 0xbff3e519 proc_create_net_single +EXPORT_SYMBOL_GPL vmlinux 0xbfff280e crypto_register_rngs +EXPORT_SYMBOL_GPL vmlinux 0xc000b96d wakeup_source_create +EXPORT_SYMBOL_GPL vmlinux 0xc0022486 devm_regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc009a093 user_describe +EXPORT_SYMBOL_GPL vmlinux 0xc00dc09e bsg_job_put +EXPORT_SYMBOL_GPL vmlinux 0xc010d253 __devm_irq_alloc_descs +EXPORT_SYMBOL_GPL vmlinux 0xc02c3d1f devlink_traps_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc05fbc94 genphy_c45_pma_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc061f90c l3mdev_fib_table_by_index +EXPORT_SYMBOL_GPL vmlinux 0xc074d8c0 devm_regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xc07b80aa nvdimm_security_setup_events +EXPORT_SYMBOL_GPL vmlinux 0xc0875f7a devlink_health_reporter_create +EXPORT_SYMBOL_GPL vmlinux 0xc08ae499 __netpoll_free +EXPORT_SYMBOL_GPL vmlinux 0xc08bbce6 irq_get_percpu_devid_partition +EXPORT_SYMBOL_GPL vmlinux 0xc08c410d pci_p2pmem_virt_to_bus +EXPORT_SYMBOL_GPL vmlinux 0xc090c376 net_selftest_get_strings +EXPORT_SYMBOL_GPL vmlinux 0xc09938bd ptp_parse_header +EXPORT_SYMBOL_GPL vmlinux 0xc0a303bd __traceiter_block_split +EXPORT_SYMBOL_GPL vmlinux 0xc0a96e14 rcu_gp_is_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc0b2664d devlink_dpipe_header_ipv4 +EXPORT_SYMBOL_GPL vmlinux 0xc0bc5f25 pinctrl_get +EXPORT_SYMBOL_GPL vmlinux 0xc0c3ab13 pm_runtime_no_callbacks +EXPORT_SYMBOL_GPL vmlinux 0xc0dcb59e edac_layer_name +EXPORT_SYMBOL_GPL vmlinux 0xc0e046f2 devm_gpio_request +EXPORT_SYMBOL_GPL vmlinux 0xc0e27f8e crypto_unregister_ahashes +EXPORT_SYMBOL_GPL vmlinux 0xc0f0458a ip_tunnel_unneed_metadata +EXPORT_SYMBOL_GPL vmlinux 0xc0fd68ab rio_mport_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xc1086e0c sysrq_toggle_support +EXPORT_SYMBOL_GPL vmlinux 0xc10c070f usb_enable_autosuspend +EXPORT_SYMBOL_GPL vmlinux 0xc117a77f blk_execute_rq_nowait +EXPORT_SYMBOL_GPL vmlinux 0xc11aa87a crypto_enqueue_request_head +EXPORT_SYMBOL_GPL vmlinux 0xc1288028 phy_get_rate_matching +EXPORT_SYMBOL_GPL vmlinux 0xc1320af3 devl_unlock +EXPORT_SYMBOL_GPL vmlinux 0xc137aa27 relay_flush +EXPORT_SYMBOL_GPL vmlinux 0xc1577bd9 __tracepoint_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0xc15a8621 serdev_controller_remove +EXPORT_SYMBOL_GPL vmlinux 0xc167f217 pstore_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc17515d7 usb_hcds_loaded +EXPORT_SYMBOL_GPL vmlinux 0xc17e0045 rio_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xc17e9946 usb_show_dynids +EXPORT_SYMBOL_GPL vmlinux 0xc190eeb6 md_start +EXPORT_SYMBOL_GPL vmlinux 0xc192dd9a sk_psock_tls_strp_read +EXPORT_SYMBOL_GPL vmlinux 0xc193fc72 __SCK__tp_func_rpm_idle +EXPORT_SYMBOL_GPL vmlinux 0xc1a52327 __traceiter_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0xc1a682be pingv6_prot +EXPORT_SYMBOL_GPL vmlinux 0xc1b335da netdev_rx_handler_register +EXPORT_SYMBOL_GPL vmlinux 0xc1bc742a peernet2id_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc1cc3074 isa_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xc1e69770 blk_rq_is_poll +EXPORT_SYMBOL_GPL vmlinux 0xc1e6986e interval_tree_span_iter_first +EXPORT_SYMBOL_GPL vmlinux 0xc1f7e77f __dev_fwnode_const +EXPORT_SYMBOL_GPL vmlinux 0xc2033d9f amd_get_highest_perf +EXPORT_SYMBOL_GPL vmlinux 0xc204008a __SCK__tp_func_cpu_idle +EXPORT_SYMBOL_GPL vmlinux 0xc20d5aaa regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xc22a3091 vm_unmap_aliases +EXPORT_SYMBOL_GPL vmlinux 0xc23601c1 __SCT__tp_func_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0xc2368ea5 ata_xfer_mask2mode +EXPORT_SYMBOL_GPL vmlinux 0xc2530d4f __SCK__tp_func_pelt_thermal_tp +EXPORT_SYMBOL_GPL vmlinux 0xc253c85d ima_file_check +EXPORT_SYMBOL_GPL vmlinux 0xc25b8971 hv_remove_crash_handler +EXPORT_SYMBOL_GPL vmlinux 0xc2692173 wakeup_sources_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xc2772ad7 mmc_crypto_setup_queue +EXPORT_SYMBOL_GPL vmlinux 0xc27aee45 edac_pci_release_generic_ctl +EXPORT_SYMBOL_GPL vmlinux 0xc27cb2f3 phy_set_mode_ext +EXPORT_SYMBOL_GPL vmlinux 0xc287d96a kvm_set_posted_intr_wakeup_handler +EXPORT_SYMBOL_GPL vmlinux 0xc289e46d cpufreq_generic_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xc2a3e570 errata +EXPORT_SYMBOL_GPL vmlinux 0xc2a60d5e blkg_conf_init +EXPORT_SYMBOL_GPL vmlinux 0xc2a814db tcp_memory_pressure +EXPORT_SYMBOL_GPL vmlinux 0xc2bf6bc5 input_ff_event +EXPORT_SYMBOL_GPL vmlinux 0xc2c1c427 perf_event_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc2c4b254 simple_attr_write +EXPORT_SYMBOL_GPL vmlinux 0xc2c830a0 devm_clk_get_optional_prepared +EXPORT_SYMBOL_GPL vmlinux 0xc2ca651d ata_host_activate +EXPORT_SYMBOL_GPL vmlinux 0xc2de27ca hest_disable +EXPORT_SYMBOL_GPL vmlinux 0xc2fb483f __SCT__tp_func_tcp_bad_csum +EXPORT_SYMBOL_GPL vmlinux 0xc3004ade msi_device_has_isolated_msi +EXPORT_SYMBOL_GPL vmlinux 0xc31084d5 pinctrl_enable +EXPORT_SYMBOL_GPL vmlinux 0xc313c32f thermal_cooling_device_update +EXPORT_SYMBOL_GPL vmlinux 0xc31769cc strp_stop +EXPORT_SYMBOL_GPL vmlinux 0xc328e60c __SCK__tp_func_ipi_send_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xc32fdb0d __audit_inode_child +EXPORT_SYMBOL_GPL vmlinux 0xc3386b89 crypto_aead_setauthsize +EXPORT_SYMBOL_GPL vmlinux 0xc33ca570 fscrypt_ioctl_remove_key +EXPORT_SYMBOL_GPL vmlinux 0xc341ae6d zs_map_object +EXPORT_SYMBOL_GPL vmlinux 0xc35e09f7 kick_process +EXPORT_SYMBOL_GPL vmlinux 0xc3652942 vp_modern_get_status +EXPORT_SYMBOL_GPL vmlinux 0xc3708747 trace_vprintk +EXPORT_SYMBOL_GPL vmlinux 0xc37a8bbd ip6_append_data +EXPORT_SYMBOL_GPL vmlinux 0xc3805cd1 fs_ftype_to_dtype +EXPORT_SYMBOL_GPL vmlinux 0xc3876c1a hv_isolation_type_snp +EXPORT_SYMBOL_GPL vmlinux 0xc3997d9d mpi_read_raw_from_sgl +EXPORT_SYMBOL_GPL vmlinux 0xc39b457b tcp_bpf_update_proto +EXPORT_SYMBOL_GPL vmlinux 0xc39e4892 __tracepoint_pelt_dl_tp +EXPORT_SYMBOL_GPL vmlinux 0xc39f28fd kthread_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xc3a7ca39 securityfs_create_file +EXPORT_SYMBOL_GPL vmlinux 0xc3b0823c edac_device_alloc_ctl_info +EXPORT_SYMBOL_GPL vmlinux 0xc3b47825 rcu_async_relax +EXPORT_SYMBOL_GPL vmlinux 0xc3c4c6cc hash_algo_name +EXPORT_SYMBOL_GPL vmlinux 0xc3c997b4 sdio_signal_irq +EXPORT_SYMBOL_GPL vmlinux 0xc3cc4300 smca_get_long_name +EXPORT_SYMBOL_GPL vmlinux 0xc3dda1be skcipher_walk_async +EXPORT_SYMBOL_GPL vmlinux 0xc3de65ff ring_buffer_bytes_cpu +EXPORT_SYMBOL_GPL vmlinux 0xc3e1021c __SCT__tp_func_ata_bmdma_status +EXPORT_SYMBOL_GPL vmlinux 0xc3ea5305 iommu_default_passthrough +EXPORT_SYMBOL_GPL vmlinux 0xc3f07051 cpuidle_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc3faaadb __hvc_resize +EXPORT_SYMBOL_GPL vmlinux 0xc3fc2ee8 rio_unmap_outb_region +EXPORT_SYMBOL_GPL vmlinux 0xc4008d55 xen_have_vector_callback +EXPORT_SYMBOL_GPL vmlinux 0xc403123f spi_take_timestamp_post +EXPORT_SYMBOL_GPL vmlinux 0xc40910ef dev_pm_opp_remove_all_dynamic +EXPORT_SYMBOL_GPL vmlinux 0xc40df8d1 dev_pm_qos_expose_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xc413f38b replace_page_cache_folio +EXPORT_SYMBOL_GPL vmlinux 0xc41a8113 fib_new_table +EXPORT_SYMBOL_GPL vmlinux 0xc42069fa vp_modern_set_features +EXPORT_SYMBOL_GPL vmlinux 0xc4210077 get_cpu_device +EXPORT_SYMBOL_GPL vmlinux 0xc426c51f klp_shadow_free_all +EXPORT_SYMBOL_GPL vmlinux 0xc428068d sata_deb_timing_long +EXPORT_SYMBOL_GPL vmlinux 0xc428ce33 ata_sas_port_stop +EXPORT_SYMBOL_GPL vmlinux 0xc42a6a82 percpu_free_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xc430820d param_set_uint_minmax +EXPORT_SYMBOL_GPL vmlinux 0xc43e92b9 trace_seq_bprintf +EXPORT_SYMBOL_GPL vmlinux 0xc4454c8e platform_msi_domain_alloc_irqs +EXPORT_SYMBOL_GPL vmlinux 0xc4461313 __tracepoint_arm_event +EXPORT_SYMBOL_GPL vmlinux 0xc44afc48 pse_ethtool_set_config +EXPORT_SYMBOL_GPL vmlinux 0xc454fc7b twl_get_type +EXPORT_SYMBOL_GPL vmlinux 0xc45d0d13 injectm +EXPORT_SYMBOL_GPL vmlinux 0xc45fb8c3 n_tty_inherit_ops +EXPORT_SYMBOL_GPL vmlinux 0xc46324f6 dynevent_create +EXPORT_SYMBOL_GPL vmlinux 0xc46a65bb file_ra_state_init +EXPORT_SYMBOL_GPL vmlinux 0xc471c67a twl4030_audio_disable_resource +EXPORT_SYMBOL_GPL vmlinux 0xc4846520 debugfs_lookup_and_remove +EXPORT_SYMBOL_GPL vmlinux 0xc4a31146 rdma_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xc4a72936 trusted_tpm_send +EXPORT_SYMBOL_GPL vmlinux 0xc4ab7c04 mmc_send_abort_tuning +EXPORT_SYMBOL_GPL vmlinux 0xc4b421c4 devlink_port_region_create +EXPORT_SYMBOL_GPL vmlinux 0xc4bef59d pm_genpd_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xc4c5191f vp_legacy_remove +EXPORT_SYMBOL_GPL vmlinux 0xc4d022cb __SCT__tp_func_napi_poll +EXPORT_SYMBOL_GPL vmlinux 0xc4d5e0e8 acpi_gpio_get_irq_resource +EXPORT_SYMBOL_GPL vmlinux 0xc4d935d9 blockdev_superblock +EXPORT_SYMBOL_GPL vmlinux 0xc4db0e45 devm_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xc4e7fe6e cgroup_get_from_path +EXPORT_SYMBOL_GPL vmlinux 0xc4e9e6a9 nvme_mpath_start_request +EXPORT_SYMBOL_GPL vmlinux 0xc4f0da12 ktime_get_with_offset +EXPORT_SYMBOL_GPL vmlinux 0xc5006349 usb_hub_release_port +EXPORT_SYMBOL_GPL vmlinux 0xc502a68d register_pernet_device +EXPORT_SYMBOL_GPL vmlinux 0xc50dca33 __SCT__tp_func_neigh_cleanup_and_release +EXPORT_SYMBOL_GPL vmlinux 0xc512626a __supported_pte_mask +EXPORT_SYMBOL_GPL vmlinux 0xc514237a platform_get_resource_byname +EXPORT_SYMBOL_GPL vmlinux 0xc51d93d4 cpufreq_cpu_get_raw +EXPORT_SYMBOL_GPL vmlinux 0xc52277a5 sdio_readb +EXPORT_SYMBOL_GPL vmlinux 0xc52ece8b powercap_unregister_zone +EXPORT_SYMBOL_GPL vmlinux 0xc52f8202 fib_alias_hw_flags_set +EXPORT_SYMBOL_GPL vmlinux 0xc5326d70 extcon_dev_free +EXPORT_SYMBOL_GPL vmlinux 0xc545bf49 hvc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xc548f2fe l3mdev_ifindex_lookup_by_table_id +EXPORT_SYMBOL_GPL vmlinux 0xc550496d gpiod_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xc55ed06c thermal_zone_get_offset +EXPORT_SYMBOL_GPL vmlinux 0xc5604800 clk_set_rate_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xc569d8ce __clk_get_name +EXPORT_SYMBOL_GPL vmlinux 0xc56bc793 tracepoint_probe_register_prio +EXPORT_SYMBOL_GPL vmlinux 0xc575c737 debug_locks_off +EXPORT_SYMBOL_GPL vmlinux 0xc5777fca linear_range_get_selector_low_array +EXPORT_SYMBOL_GPL vmlinux 0xc57a0e37 regulator_list_voltage_linear_range +EXPORT_SYMBOL_GPL vmlinux 0xc58556cb trace_output_call +EXPORT_SYMBOL_GPL vmlinux 0xc58a3ee6 icc_node_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc58e8f70 __devm_add_action +EXPORT_SYMBOL_GPL vmlinux 0xc5a5c678 uart_parse_earlycon +EXPORT_SYMBOL_GPL vmlinux 0xc5a60a81 xhci_run +EXPORT_SYMBOL_GPL vmlinux 0xc5aad560 vga_default_device +EXPORT_SYMBOL_GPL vmlinux 0xc5e1bdb5 cpufreq_driver_target +EXPORT_SYMBOL_GPL vmlinux 0xc5e4a2af reset_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc5efe9f8 __traceiter_br_fdb_add +EXPORT_SYMBOL_GPL vmlinux 0xc5f34aa6 sk_clone_lock +EXPORT_SYMBOL_GPL vmlinux 0xc5f3aa13 class_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xc5fa5d1a vp_modern_queue_address +EXPORT_SYMBOL_GPL vmlinux 0xc604ab28 __SCT__tp_func_kfree_skb +EXPORT_SYMBOL_GPL vmlinux 0xc617f82c unregister_oom_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc61f6184 spi_controller_dma_unmap_mem_op_data +EXPORT_SYMBOL_GPL vmlinux 0xc61f9b63 __account_locked_vm +EXPORT_SYMBOL_GPL vmlinux 0xc6250576 ZSTD_isError +EXPORT_SYMBOL_GPL vmlinux 0xc62611e1 scatterwalk_map_and_copy +EXPORT_SYMBOL_GPL vmlinux 0xc6292875 __tracepoint_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xc62cc05a acpi_subsys_suspend +EXPORT_SYMBOL_GPL vmlinux 0xc631e4e2 blkcg_print_blkgs +EXPORT_SYMBOL_GPL vmlinux 0xc63eea6c led_trigger_register_simple +EXPORT_SYMBOL_GPL vmlinux 0xc6411b5c fuse_dev_operations +EXPORT_SYMBOL_GPL vmlinux 0xc64fd66a add_hwgenerator_randomness +EXPORT_SYMBOL_GPL vmlinux 0xc6569014 clk_fixed_rate_ops +EXPORT_SYMBOL_GPL vmlinux 0xc6572a90 xenbus_read_unsigned +EXPORT_SYMBOL_GPL vmlinux 0xc66019cc xen_resume_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc66b77b1 iommu_group_set_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xc66ca75a devm_regmap_del_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xc66daccb usb_hcd_pci_probe +EXPORT_SYMBOL_GPL vmlinux 0xc6745e2d sock_diag_check_cookie +EXPORT_SYMBOL_GPL vmlinux 0xc6779093 ring_buffer_record_enable +EXPORT_SYMBOL_GPL vmlinux 0xc682d9fe nvme_uninit_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xc683da81 set_memory_decrypted +EXPORT_SYMBOL_GPL vmlinux 0xc697b0f7 nvmem_device_read +EXPORT_SYMBOL_GPL vmlinux 0xc69b7ee5 zs_destroy_pool +EXPORT_SYMBOL_GPL vmlinux 0xc6a3c9b6 skb_consume_udp +EXPORT_SYMBOL_GPL vmlinux 0xc6a4a872 __clk_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xc6c78d2e __SCK__tp_func_suspend_resume +EXPORT_SYMBOL_GPL vmlinux 0xc6ce52dc regmap_noinc_read +EXPORT_SYMBOL_GPL vmlinux 0xc6def34b gnttab_empty_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xc6e5bcf3 linear_range_get_selector_within +EXPORT_SYMBOL_GPL vmlinux 0xc6e84a16 mf_dax_kill_procs +EXPORT_SYMBOL_GPL vmlinux 0xc6fad95e __rtnl_link_unregister +EXPORT_SYMBOL_GPL vmlinux 0xc7061ef3 iova_cache_put +EXPORT_SYMBOL_GPL vmlinux 0xc70c8e3c blk_crypto_profile_init +EXPORT_SYMBOL_GPL vmlinux 0xc71bb27a anon_inode_getfd_secure +EXPORT_SYMBOL_GPL vmlinux 0xc74c07ce cppc_get_epp_perf +EXPORT_SYMBOL_GPL vmlinux 0xc74db05c component_compare_dev +EXPORT_SYMBOL_GPL vmlinux 0xc7611678 iommu_get_domain_for_dev_pasid +EXPORT_SYMBOL_GPL vmlinux 0xc77ba504 security_inode_create +EXPORT_SYMBOL_GPL vmlinux 0xc7856e74 __wake_up_locked_sync_key +EXPORT_SYMBOL_GPL vmlinux 0xc78dc8da extcon_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xc7970c62 ping_close +EXPORT_SYMBOL_GPL vmlinux 0xc7988db1 sk_psock_init +EXPORT_SYMBOL_GPL vmlinux 0xc79cfc9f wm831x_reg_lock +EXPORT_SYMBOL_GPL vmlinux 0xc7a1840e llist_add_batch +EXPORT_SYMBOL_GPL vmlinux 0xc7a7e770 clk_bulk_enable +EXPORT_SYMBOL_GPL vmlinux 0xc7c23ff0 xenbus_exists +EXPORT_SYMBOL_GPL vmlinux 0xc7c94e54 srcu_torture_stats_print +EXPORT_SYMBOL_GPL vmlinux 0xc7d6ab96 srcu_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xc7de238d sfp_bus_find_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xc7e2cbae rcu_tasks_trace_qs_blkd +EXPORT_SYMBOL_GPL vmlinux 0xc7e6063d xhci_dbg_trace +EXPORT_SYMBOL_GPL vmlinux 0xc7e64fc2 asn1_encode_integer +EXPORT_SYMBOL_GPL vmlinux 0xc7e89755 device_store_ulong +EXPORT_SYMBOL_GPL vmlinux 0xc7fa4aa9 kobj_ns_drop +EXPORT_SYMBOL_GPL vmlinux 0xc8122094 devm_of_icc_get +EXPORT_SYMBOL_GPL vmlinux 0xc8126340 clear_mce_nospec +EXPORT_SYMBOL_GPL vmlinux 0xc81d9ca4 transport_class_register +EXPORT_SYMBOL_GPL vmlinux 0xc82c721f klist_remove +EXPORT_SYMBOL_GPL vmlinux 0xc82fecca ata_dev_pair +EXPORT_SYMBOL_GPL vmlinux 0xc839c1ce trace_seq_to_user +EXPORT_SYMBOL_GPL vmlinux 0xc83e5426 usb_sg_init +EXPORT_SYMBOL_GPL vmlinux 0xc851b2cf wm8350_reg_read +EXPORT_SYMBOL_GPL vmlinux 0xc8594d3d reset_control_acquire +EXPORT_SYMBOL_GPL vmlinux 0xc865d920 usb_poison_urb +EXPORT_SYMBOL_GPL vmlinux 0xc874d710 hv_unmap_ioapic_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xc87e487a sched_clock_idle_sleep_event +EXPORT_SYMBOL_GPL vmlinux 0xc8949a51 __set_memory_prot +EXPORT_SYMBOL_GPL vmlinux 0xc89a66a3 blk_queue_flag_test_and_set +EXPORT_SYMBOL_GPL vmlinux 0xc8a946a7 regulator_set_soft_start_regmap +EXPORT_SYMBOL_GPL vmlinux 0xc8b35744 devl_port_register_with_ops +EXPORT_SYMBOL_GPL vmlinux 0xc8c4ae4c nf_ipv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xc8d6f7e8 seg6_do_srh_encap +EXPORT_SYMBOL_GPL vmlinux 0xc8ddd5b5 kstrdup_quotable +EXPORT_SYMBOL_GPL vmlinux 0xc8e3cf26 devl_rate_leaf_destroy +EXPORT_SYMBOL_GPL vmlinux 0xc8ea7aa3 crypto_unregister_acomp +EXPORT_SYMBOL_GPL vmlinux 0xc8f0722c ehci_setup +EXPORT_SYMBOL_GPL vmlinux 0xc900fd94 pci_device_is_present +EXPORT_SYMBOL_GPL vmlinux 0xc9054127 usb_anchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xc905b0ef scsi_dh_attached_handler_name +EXPORT_SYMBOL_GPL vmlinux 0xc90e776d iomap_file_unshare +EXPORT_SYMBOL_GPL vmlinux 0xc90f3179 xdp_convert_zc_to_xdp_frame +EXPORT_SYMBOL_GPL vmlinux 0xc9175f62 ioc_find_get_icq +EXPORT_SYMBOL_GPL vmlinux 0xc91ee1b5 __SCT__tp_func_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xc91fdf58 percpu_ref_is_zero +EXPORT_SYMBOL_GPL vmlinux 0xc9216a82 recalibrate_cpu_khz +EXPORT_SYMBOL_GPL vmlinux 0xc9345c0f digsig_verify +EXPORT_SYMBOL_GPL vmlinux 0xc93ee1e7 usb_phy_roothub_init +EXPORT_SYMBOL_GPL vmlinux 0xc940d567 unix_peer_get +EXPORT_SYMBOL_GPL vmlinux 0xc941425e kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xc94bc0df blk_mq_freeze_queue_wait +EXPORT_SYMBOL_GPL vmlinux 0xc9551aa7 scsi_nl_sock +EXPORT_SYMBOL_GPL vmlinux 0xc9561772 fb_destroy_modelist +EXPORT_SYMBOL_GPL vmlinux 0xc95ccf37 synchronize_srcu_expedited +EXPORT_SYMBOL_GPL vmlinux 0xc96242da srcu_init_notifier_head +EXPORT_SYMBOL_GPL vmlinux 0xc9641b48 visitor32 +EXPORT_SYMBOL_GPL vmlinux 0xc977f83d dax_iomap_fault +EXPORT_SYMBOL_GPL vmlinux 0xc9827693 __bpf_call_base +EXPORT_SYMBOL_GPL vmlinux 0xc985c717 xfrm_audit_policy_add +EXPORT_SYMBOL_GPL vmlinux 0xc99da118 debugfs_create_u32 +EXPORT_SYMBOL_GPL vmlinux 0xc99f5319 apply_to_existing_page_range +EXPORT_SYMBOL_GPL vmlinux 0xc9a4b416 copy_to_user_nofault +EXPORT_SYMBOL_GPL vmlinux 0xc9b09f14 wm8350_read_auxadc +EXPORT_SYMBOL_GPL vmlinux 0xc9bb48ac nvme_auth_dhgroup_name +EXPORT_SYMBOL_GPL vmlinux 0xc9bec4dc spi_transfer_cs_change_delay_exec +EXPORT_SYMBOL_GPL vmlinux 0xc9c3f176 hpet_register_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xc9ceea06 clk_has_parent +EXPORT_SYMBOL_GPL vmlinux 0xc9d49a98 attribute_container_register +EXPORT_SYMBOL_GPL vmlinux 0xc9ec4e21 free_percpu +EXPORT_SYMBOL_GPL vmlinux 0xc9f20fa3 __SCK__tp_func_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0xc9f2d8b0 virtio_add_status +EXPORT_SYMBOL_GPL vmlinux 0xc9f4bbb5 __fsnotify_inode_delete +EXPORT_SYMBOL_GPL vmlinux 0xc9fd634a usb_role_switch_put +EXPORT_SYMBOL_GPL vmlinux 0xc9fdbe45 pwm_lpss_byt_info +EXPORT_SYMBOL_GPL vmlinux 0xca054841 __SCK__tp_func_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0xca06f970 devm_hwmon_device_register_with_info +EXPORT_SYMBOL_GPL vmlinux 0xca12fbc1 gpiod_get_index +EXPORT_SYMBOL_GPL vmlinux 0xca454a34 vt_get_leds +EXPORT_SYMBOL_GPL vmlinux 0xca467318 hibernation_set_ops +EXPORT_SYMBOL_GPL vmlinux 0xca47f8b8 ata_sas_tport_add +EXPORT_SYMBOL_GPL vmlinux 0xca4b370d usb_store_new_id +EXPORT_SYMBOL_GPL vmlinux 0xca500464 ZSTD_getErrorName +EXPORT_SYMBOL_GPL vmlinux 0xca5f74f7 dev_pm_domain_start +EXPORT_SYMBOL_GPL vmlinux 0xca610b23 mmu_interval_notifier_remove +EXPORT_SYMBOL_GPL vmlinux 0xca7d8764 kthread_freezable_should_stop +EXPORT_SYMBOL_GPL vmlinux 0xca88b967 dw_pcie_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xca8fd0f2 regulator_get_bypass_regmap +EXPORT_SYMBOL_GPL vmlinux 0xca9508fa __tracepoint_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xca9a1d5e ring_buffer_free +EXPORT_SYMBOL_GPL vmlinux 0xca9bf9e6 iomap_fiemap +EXPORT_SYMBOL_GPL vmlinux 0xcaa68533 cpu_has_xfeatures +EXPORT_SYMBOL_GPL vmlinux 0xcaaa5874 pci_find_ht_capability +EXPORT_SYMBOL_GPL vmlinux 0xcab492ec cpufreq_freq_transition_end +EXPORT_SYMBOL_GPL vmlinux 0xcabb6f55 dbs_update +EXPORT_SYMBOL_GPL vmlinux 0xcabd0942 iommu_device_sysfs_remove +EXPORT_SYMBOL_GPL vmlinux 0xcabe04de cpuidle_resume_and_unlock +EXPORT_SYMBOL_GPL vmlinux 0xcae0dd3c pci_probe_reset_slot +EXPORT_SYMBOL_GPL vmlinux 0xcaea4311 pci_bus_resource_n +EXPORT_SYMBOL_GPL vmlinux 0xcaedb124 ahash_register_instance +EXPORT_SYMBOL_GPL vmlinux 0xcaf0271f hv_get_register +EXPORT_SYMBOL_GPL vmlinux 0xcaf1d958 evtchn_get +EXPORT_SYMBOL_GPL vmlinux 0xcaf5897f hwmon_notify_event +EXPORT_SYMBOL_GPL vmlinux 0xcb2bfe2b nvmem_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xcb2f89c4 pci_host_probe +EXPORT_SYMBOL_GPL vmlinux 0xcb349fa4 clk_mux_ops +EXPORT_SYMBOL_GPL vmlinux 0xcb35ed11 icc_set_bw +EXPORT_SYMBOL_GPL vmlinux 0xcb39603c nvme_auth_hmac_id +EXPORT_SYMBOL_GPL vmlinux 0xcb3dbe35 dax_truncate_page +EXPORT_SYMBOL_GPL vmlinux 0xcb4a7d9b public_key_verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xcb561441 mem_dump_obj +EXPORT_SYMBOL_GPL vmlinux 0xcb5fa9ec __udp6_lib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcb72a07f bsg_register_queue +EXPORT_SYMBOL_GPL vmlinux 0xcb74add8 vcap_chain_offset +EXPORT_SYMBOL_GPL vmlinux 0xcb8a461c hv_stimer_legacy_cleanup +EXPORT_SYMBOL_GPL vmlinux 0xcb970751 stop_machine +EXPORT_SYMBOL_GPL vmlinux 0xcbabd73b xenbus_alloc_evtchn +EXPORT_SYMBOL_GPL vmlinux 0xcbaf181d nd_region_provider_data +EXPORT_SYMBOL_GPL vmlinux 0xcbc29a0e spi_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xcbc86b4c __SCK__tp_func_wbc_writepage +EXPORT_SYMBOL_GPL vmlinux 0xcbc9e1cd acpi_dev_resume +EXPORT_SYMBOL_GPL vmlinux 0xcbdd6962 syscon_regmap_lookup_by_phandle +EXPORT_SYMBOL_GPL vmlinux 0xcbe56bc2 zs_get_total_pages +EXPORT_SYMBOL_GPL vmlinux 0xcc00fd1f crypto_alloc_aead +EXPORT_SYMBOL_GPL vmlinux 0xcc0976cb generic_device_group +EXPORT_SYMBOL_GPL vmlinux 0xcc1acfc6 irq_generic_chip_ops +EXPORT_SYMBOL_GPL vmlinux 0xcc2ba4c6 page_cache_async_ra +EXPORT_SYMBOL_GPL vmlinux 0xcc303c43 devlink_region_snapshot_id_put +EXPORT_SYMBOL_GPL vmlinux 0xcc381e76 rio_mport_write_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xcc39c03e nvmem_unregister +EXPORT_SYMBOL_GPL vmlinux 0xcc41d5c4 xen_unmap_domain_gfn_range +EXPORT_SYMBOL_GPL vmlinux 0xcc45567e blk_queue_zone_write_granularity +EXPORT_SYMBOL_GPL vmlinux 0xcc5275c3 acpi_match_acpi_device +EXPORT_SYMBOL_GPL vmlinux 0xcc55784d pci_hp_create_module_link +EXPORT_SYMBOL_GPL vmlinux 0xcc624bd4 clk_hw_get_parent +EXPORT_SYMBOL_GPL vmlinux 0xcc692edc pm_runtime_get_if_active +EXPORT_SYMBOL_GPL vmlinux 0xcc6f75d8 fb_deferred_io_init +EXPORT_SYMBOL_GPL vmlinux 0xcc82e847 usb_get_current_frame_number +EXPORT_SYMBOL_GPL vmlinux 0xcc88a74c rio_mport_get_feature +EXPORT_SYMBOL_GPL vmlinux 0xcc903fa1 __virtqueue_break +EXPORT_SYMBOL_GPL vmlinux 0xcc9268fc hwpoison_filter_enable +EXPORT_SYMBOL_GPL vmlinux 0xcc935375 walk_iomem_res_desc +EXPORT_SYMBOL_GPL vmlinux 0xcc9ae25d vp_modern_get_driver_features +EXPORT_SYMBOL_GPL vmlinux 0xccabde6f crc64_rocksoft_generic +EXPORT_SYMBOL_GPL vmlinux 0xcccfb2fa sata_deb_timing_hotplug +EXPORT_SYMBOL_GPL vmlinux 0xccd86806 ata_id_string +EXPORT_SYMBOL_GPL vmlinux 0xccdc7dce bpf_map_put +EXPORT_SYMBOL_GPL vmlinux 0xcce213f5 ip_valid_fib_dump_req +EXPORT_SYMBOL_GPL vmlinux 0xcce4fbbc ata_change_queue_depth +EXPORT_SYMBOL_GPL vmlinux 0xccecbb47 bpf_offload_dev_netdev_register +EXPORT_SYMBOL_GPL vmlinux 0xccf52bc9 sfp_upstream_start +EXPORT_SYMBOL_GPL vmlinux 0xccfae72c ext_pi_type1_crc64 +EXPORT_SYMBOL_GPL vmlinux 0xcd010ef8 to_nd_region +EXPORT_SYMBOL_GPL vmlinux 0xcd08c9f4 iomap_dio_bio_end_io +EXPORT_SYMBOL_GPL vmlinux 0xcd098a3f __fscrypt_prepare_lookup +EXPORT_SYMBOL_GPL vmlinux 0xcd204a1c pci_generic_config_read32 +EXPORT_SYMBOL_GPL vmlinux 0xcd24e146 hash_digest_size +EXPORT_SYMBOL_GPL vmlinux 0xcd43f8ff __phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xcd504ecb switchdev_handle_port_obj_del_foreign +EXPORT_SYMBOL_GPL vmlinux 0xcd5101b9 bpf_prog_create +EXPORT_SYMBOL_GPL vmlinux 0xcd5aaa91 bpf_event_output +EXPORT_SYMBOL_GPL vmlinux 0xcd5b6c6f __tracepoint_ata_bmdma_start +EXPORT_SYMBOL_GPL vmlinux 0xcd637979 fb_deferred_io_mmap +EXPORT_SYMBOL_GPL vmlinux 0xcd6f2dc9 nf_log_buf_add +EXPORT_SYMBOL_GPL vmlinux 0xcd7e3330 __SCK__tp_func_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0xcd81a945 switch_fpu_return +EXPORT_SYMBOL_GPL vmlinux 0xcd8e8f82 uv_bios_enum_objs +EXPORT_SYMBOL_GPL vmlinux 0xcd91b127 system_highpri_wq +EXPORT_SYMBOL_GPL vmlinux 0xcd974f00 rcu_all_qs +EXPORT_SYMBOL_GPL vmlinux 0xcd98d325 serdev_controller_alloc +EXPORT_SYMBOL_GPL vmlinux 0xcd9cd2ff wakeme_after_rcu +EXPORT_SYMBOL_GPL vmlinux 0xcda7f5e1 set_memory_p +EXPORT_SYMBOL_GPL vmlinux 0xcda8499f fwnode_get_name +EXPORT_SYMBOL_GPL vmlinux 0xcdadc6b3 dev_xdp_prog_count +EXPORT_SYMBOL_GPL vmlinux 0xcdb6adcc ras_userspace_consumers +EXPORT_SYMBOL_GPL vmlinux 0xcdb84219 unix_outq_len +EXPORT_SYMBOL_GPL vmlinux 0xcdbf3d80 pci_find_ext_capability +EXPORT_SYMBOL_GPL vmlinux 0xcdc3acdd regulator_suspend_disable +EXPORT_SYMBOL_GPL vmlinux 0xcdc5df5a iommu_unmap +EXPORT_SYMBOL_GPL vmlinux 0xcdca3691 nr_irqs +EXPORT_SYMBOL_GPL vmlinux 0xcdd2f246 usb_register_dev +EXPORT_SYMBOL_GPL vmlinux 0xcde26600 cppc_get_transition_latency +EXPORT_SYMBOL_GPL vmlinux 0xce0a4020 xenbus_directory +EXPORT_SYMBOL_GPL vmlinux 0xce15cc8e proc_create_net_single_write +EXPORT_SYMBOL_GPL vmlinux 0xce1a1e59 usb_hc_died +EXPORT_SYMBOL_GPL vmlinux 0xce25ada6 cpufreq_driver_resolve_freq +EXPORT_SYMBOL_GPL vmlinux 0xce370b5b tpm1_getcap +EXPORT_SYMBOL_GPL vmlinux 0xce38718e devl_trap_groups_unregister +EXPORT_SYMBOL_GPL vmlinux 0xce65705d irq_domain_push_irq +EXPORT_SYMBOL_GPL vmlinux 0xce6db656 rcu_is_watching +EXPORT_SYMBOL_GPL vmlinux 0xce73d3ff serial8250_modem_status +EXPORT_SYMBOL_GPL vmlinux 0xce7e734b dma_resv_wait_timeout +EXPORT_SYMBOL_GPL vmlinux 0xce978ea6 metadata_dst_alloc_percpu +EXPORT_SYMBOL_GPL vmlinux 0xce9c2f40 __fscrypt_prepare_readdir +EXPORT_SYMBOL_GPL vmlinux 0xce9ecfe1 spi_mem_supports_op +EXPORT_SYMBOL_GPL vmlinux 0xceae9c58 trace_array_destroy +EXPORT_SYMBOL_GPL vmlinux 0xceb1f126 mpi_read_raw_data +EXPORT_SYMBOL_GPL vmlinux 0xceb46eeb verify_signature +EXPORT_SYMBOL_GPL vmlinux 0xceb66bec sched_clock_cpu +EXPORT_SYMBOL_GPL vmlinux 0xcec7988a skb_copy_ubufs +EXPORT_SYMBOL_GPL vmlinux 0xcee1641c kgdb_unregister_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xcee56260 udp_cmsg_send +EXPORT_SYMBOL_GPL vmlinux 0xcee9c15b dax_inode +EXPORT_SYMBOL_GPL vmlinux 0xcf02ab71 __SCT__tp_func_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xcf06b2f6 serial8250_rx_chars +EXPORT_SYMBOL_GPL vmlinux 0xcf07b05d nvmem_layout_get_match_data +EXPORT_SYMBOL_GPL vmlinux 0xcf0fcf1a device_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xcf2b93c8 __SCT__tp_func_ata_tf_load +EXPORT_SYMBOL_GPL vmlinux 0xcf35629e __traceiter_ipi_send_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xcf3d9141 blkg_conf_prep +EXPORT_SYMBOL_GPL vmlinux 0xcf43c08a __traceiter_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xcf4e4a24 tpm_try_get_ops +EXPORT_SYMBOL_GPL vmlinux 0xcf4fc865 tty_port_unregister_device +EXPORT_SYMBOL_GPL vmlinux 0xcf66275e virtqueue_poll +EXPORT_SYMBOL_GPL vmlinux 0xcf6b658e crypto_enqueue_request +EXPORT_SYMBOL_GPL vmlinux 0xcf748643 crypto_unregister_rngs +EXPORT_SYMBOL_GPL vmlinux 0xcf78ec68 fpu_copy_uabi_to_guest_fpstate +EXPORT_SYMBOL_GPL vmlinux 0xcf8cf1d1 bio_blkcg_css +EXPORT_SYMBOL_GPL vmlinux 0xcf9123c6 i2c_dw_validate_speed +EXPORT_SYMBOL_GPL vmlinux 0xcf91dcc0 pm_generic_thaw_early +EXPORT_SYMBOL_GPL vmlinux 0xcf99ba8d clockevents_unbind_device +EXPORT_SYMBOL_GPL vmlinux 0xcfa0c5cc wm831x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xcfab9998 irq_domain_alloc_irqs_parent +EXPORT_SYMBOL_GPL vmlinux 0xcfc5108a devlink_fmsg_u8_pair_put +EXPORT_SYMBOL_GPL vmlinux 0xcfc7b4e4 rcu_barrier_tasks_trace +EXPORT_SYMBOL_GPL vmlinux 0xcfd30d71 acpi_os_map_memory +EXPORT_SYMBOL_GPL vmlinux 0xcfdff4a3 strp_process +EXPORT_SYMBOL_GPL vmlinux 0xd00eed80 __traceiter_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd0177a65 acrn_setup_intr_handler +EXPORT_SYMBOL_GPL vmlinux 0xd017dcd2 pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd02d3cda tps65912_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xd03e952b cpuidle_get_driver +EXPORT_SYMBOL_GPL vmlinux 0xd03eaf4c schedule_hrtimeout_range +EXPORT_SYMBOL_GPL vmlinux 0xd0458ccb xenbus_strstate +EXPORT_SYMBOL_GPL vmlinux 0xd04a6e94 tpm_chip_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd05d18c0 __tracepoint_pelt_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xd06524ba raw_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd067d3c5 system_freezable_power_efficient_wq +EXPORT_SYMBOL_GPL vmlinux 0xd0686cd4 rcuref_put_slowpath +EXPORT_SYMBOL_GPL vmlinux 0xd0735e2d ipv6_icmp_error +EXPORT_SYMBOL_GPL vmlinux 0xd086b4f0 dev_pm_get_subsys_data +EXPORT_SYMBOL_GPL vmlinux 0xd08f52fc is_virtio_device +EXPORT_SYMBOL_GPL vmlinux 0xd092c9c3 rio_dma_prep_slave_sg +EXPORT_SYMBOL_GPL vmlinux 0xd0990b14 irq_domain_update_bus_token +EXPORT_SYMBOL_GPL vmlinux 0xd09911a6 acpi_dev_get_irq_type +EXPORT_SYMBOL_GPL vmlinux 0xd0a9e894 acpi_dev_get_dma_resources +EXPORT_SYMBOL_GPL vmlinux 0xd0abcd73 power_supply_powers +EXPORT_SYMBOL_GPL vmlinux 0xd0c01719 inet_twsk_put +EXPORT_SYMBOL_GPL vmlinux 0xd0c05159 emergency_restart +EXPORT_SYMBOL_GPL vmlinux 0xd0d156e9 __rht_bucket_nested +EXPORT_SYMBOL_GPL vmlinux 0xd0d3f0a4 gen_pool_avail +EXPORT_SYMBOL_GPL vmlinux 0xd0db0f12 run_dax +EXPORT_SYMBOL_GPL vmlinux 0xd0df12ba __SCT__tp_func_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xd0e2a33d dm_put +EXPORT_SYMBOL_GPL vmlinux 0xd0e44eb7 pm_generic_thaw_noirq +EXPORT_SYMBOL_GPL vmlinux 0xd0fa61db con_debug_enter +EXPORT_SYMBOL_GPL vmlinux 0xd0fd7085 hwrng_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd0fe7c33 screen_glyph_unicode +EXPORT_SYMBOL_GPL vmlinux 0xd10b51e0 thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xd11bab18 power_supply_set_battery_charged +EXPORT_SYMBOL_GPL vmlinux 0xd13121b1 regmap_fields_update_bits_base +EXPORT_SYMBOL_GPL vmlinux 0xd134bc61 pci_acpi_set_companion_lookup_hook +EXPORT_SYMBOL_GPL vmlinux 0xd138c08a free_iova_fast +EXPORT_SYMBOL_GPL vmlinux 0xd13a94d1 __SCT__tp_func_devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xd13e060c fsverity_ioctl_measure +EXPORT_SYMBOL_GPL vmlinux 0xd14528a8 devres_close_group +EXPORT_SYMBOL_GPL vmlinux 0xd1481de7 mpi_clear +EXPORT_SYMBOL_GPL vmlinux 0xd159586c net_prio_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xd15ccb08 inet6_sock_destruct +EXPORT_SYMBOL_GPL vmlinux 0xd15d30f4 md_find_rdev_nr_rcu +EXPORT_SYMBOL_GPL vmlinux 0xd162de8f device_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xd17d441c gpiochip_remove +EXPORT_SYMBOL_GPL vmlinux 0xd1a86d03 tps6586x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xd1bb925b dev_forward_skb +EXPORT_SYMBOL_GPL vmlinux 0xd1bd35e8 gpiochip_line_is_open_source +EXPORT_SYMBOL_GPL vmlinux 0xd1c3fb44 vcap_free_rule +EXPORT_SYMBOL_GPL vmlinux 0xd1c57d18 acpi_subsys_complete +EXPORT_SYMBOL_GPL vmlinux 0xd1c59b2d device_add_software_node +EXPORT_SYMBOL_GPL vmlinux 0xd1cbc23c add_timer_on +EXPORT_SYMBOL_GPL vmlinux 0xd1d4d96e pm_clk_suspend +EXPORT_SYMBOL_GPL vmlinux 0xd1da3137 extcon_register_notifier_all +EXPORT_SYMBOL_GPL vmlinux 0xd1e8ca4a iommu_fwspec_add_ids +EXPORT_SYMBOL_GPL vmlinux 0xd1e9b2ad __SCT__tp_func_rpm_resume +EXPORT_SYMBOL_GPL vmlinux 0xd1eadaa4 dev_pm_genpd_synced_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xd1f2eee2 nf_logger_find_get +EXPORT_SYMBOL_GPL vmlinux 0xd200256c pci_epc_multi_mem_init +EXPORT_SYMBOL_GPL vmlinux 0xd2034f53 eventfd_fget +EXPORT_SYMBOL_GPL vmlinux 0xd20c66ab __SCT__tp_func_sched_util_est_se_tp +EXPORT_SYMBOL_GPL vmlinux 0xd217e9e6 trace_set_clr_event +EXPORT_SYMBOL_GPL vmlinux 0xd21b61bd async_schedule_node_domain +EXPORT_SYMBOL_GPL vmlinux 0xd21bfb6f __alloc_pages_bulk +EXPORT_SYMBOL_GPL vmlinux 0xd2265595 trace_add_event_call +EXPORT_SYMBOL_GPL vmlinux 0xd22f5035 usb_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xd240c320 sysfs_create_mount_point +EXPORT_SYMBOL_GPL vmlinux 0xd24e9e8c klist_init +EXPORT_SYMBOL_GPL vmlinux 0xd260af0d ring_buffer_write +EXPORT_SYMBOL_GPL vmlinux 0xd2653879 acpi_get_and_request_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xd273b1b1 __round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xd2748b03 scsi_flush_work +EXPORT_SYMBOL_GPL vmlinux 0xd2780326 divider_recalc_rate +EXPORT_SYMBOL_GPL vmlinux 0xd27eeb4b alloc_iova +EXPORT_SYMBOL_GPL vmlinux 0xd27f215d gnttab_alloc_grant_references +EXPORT_SYMBOL_GPL vmlinux 0xd2896b8b devl_params_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd29c1f10 __traceiter_error_report_end +EXPORT_SYMBOL_GPL vmlinux 0xd29f9286 mbox_bind_client +EXPORT_SYMBOL_GPL vmlinux 0xd2a0b2d5 usb_get_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd2b10a05 ata_timing_find_mode +EXPORT_SYMBOL_GPL vmlinux 0xd2ba442e mnt_want_write_file +EXPORT_SYMBOL_GPL vmlinux 0xd2c67398 pci_epf_free_space +EXPORT_SYMBOL_GPL vmlinux 0xd2d7e59b unregister_platform_power_off +EXPORT_SYMBOL_GPL vmlinux 0xd2e62288 __traceiter_sk_data_ready +EXPORT_SYMBOL_GPL vmlinux 0xd2e86839 platform_device_register +EXPORT_SYMBOL_GPL vmlinux 0xd302621b divider_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xd30377d8 power_supply_changed +EXPORT_SYMBOL_GPL vmlinux 0xd308c72f iov_iter_extract_pages +EXPORT_SYMBOL_GPL vmlinux 0xd30de944 nf_hook_entries_delete_raw +EXPORT_SYMBOL_GPL vmlinux 0xd313bc7b xas_nomem +EXPORT_SYMBOL_GPL vmlinux 0xd31a2ac5 ring_buffer_oldest_event_ts +EXPORT_SYMBOL_GPL vmlinux 0xd31f76f7 ata_port_classify +EXPORT_SYMBOL_GPL vmlinux 0xd320ebaf pci_epc_get_first_free_bar +EXPORT_SYMBOL_GPL vmlinux 0xd326300f thermal_zone_get_trip +EXPORT_SYMBOL_GPL vmlinux 0xd34d2cfb regulator_list_hardware_vsel +EXPORT_SYMBOL_GPL vmlinux 0xd36760ef __usb_get_extra_descriptor +EXPORT_SYMBOL_GPL vmlinux 0xd3752c27 atomic_notifier_call_chain +EXPORT_SYMBOL_GPL vmlinux 0xd3832037 simple_attr_read +EXPORT_SYMBOL_GPL vmlinux 0xd3901d33 acpi_dev_resource_address_space +EXPORT_SYMBOL_GPL vmlinux 0xd39e9848 put_itimerspec64 +EXPORT_SYMBOL_GPL vmlinux 0xd3a6c852 dev_pm_opp_get_max_volt_latency +EXPORT_SYMBOL_GPL vmlinux 0xd3bc2f70 get_task_pid +EXPORT_SYMBOL_GPL vmlinux 0xd3d46911 regulator_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xd3e85f45 ip6_local_out +EXPORT_SYMBOL_GPL vmlinux 0xd3e94020 pci_epc_get +EXPORT_SYMBOL_GPL vmlinux 0xd3eaf1ed devlink_dpipe_entry_clear +EXPORT_SYMBOL_GPL vmlinux 0xd3ec851c __traceiter_unmap +EXPORT_SYMBOL_GPL vmlinux 0xd3eff7ed icc_provider_deregister +EXPORT_SYMBOL_GPL vmlinux 0xd3fa402f l3mdev_table_lookup_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd3fe6ea5 pci_dev_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd4034828 system_freezable_wq +EXPORT_SYMBOL_GPL vmlinux 0xd404c57d __pm_stay_awake +EXPORT_SYMBOL_GPL vmlinux 0xd406888a blkg_conf_exit +EXPORT_SYMBOL_GPL vmlinux 0xd4129190 kthread_unuse_mm +EXPORT_SYMBOL_GPL vmlinux 0xd416cfec perf_guest_get_msrs +EXPORT_SYMBOL_GPL vmlinux 0xd426dbc4 erst_get_record_count +EXPORT_SYMBOL_GPL vmlinux 0xd42f1d4e show_rcu_tasks_rude_gp_kthread +EXPORT_SYMBOL_GPL vmlinux 0xd435695d pm_clk_init +EXPORT_SYMBOL_GPL vmlinux 0xd435d622 fat_flush_inodes +EXPORT_SYMBOL_GPL vmlinux 0xd4404350 __SCT__tp_func_block_split +EXPORT_SYMBOL_GPL vmlinux 0xd44a5eac kgdb_register_nmi_console +EXPORT_SYMBOL_GPL vmlinux 0xd44cc702 irq_domain_associate_many +EXPORT_SYMBOL_GPL vmlinux 0xd44d6063 ata_sff_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xd45434ee admin_timeout +EXPORT_SYMBOL_GPL vmlinux 0xd45a90d2 blkcg_deactivate_policy +EXPORT_SYMBOL_GPL vmlinux 0xd46af5ef cppc_get_perf_ctrs +EXPORT_SYMBOL_GPL vmlinux 0xd47914fc tty_port_register_device +EXPORT_SYMBOL_GPL vmlinux 0xd48a9773 drop_reasons_register_subsys +EXPORT_SYMBOL_GPL vmlinux 0xd49e7ccb gpiod_get_array_value_cansleep +EXPORT_SYMBOL_GPL vmlinux 0xd4b0f585 xfrm_output +EXPORT_SYMBOL_GPL vmlinux 0xd4b6157e devlink_health_reporter_recovery_done +EXPORT_SYMBOL_GPL vmlinux 0xd4b9a616 reset_control_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xd4c14632 system_unbound_wq +EXPORT_SYMBOL_GPL vmlinux 0xd4d04d87 tpm_chip_register +EXPORT_SYMBOL_GPL vmlinux 0xd4d0ed9f dm_hold +EXPORT_SYMBOL_GPL vmlinux 0xd4df5e83 pci_add_dynid +EXPORT_SYMBOL_GPL vmlinux 0xd4e6d7e0 linear_range_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd4eb07cc acpi_driver_match_device +EXPORT_SYMBOL_GPL vmlinux 0xd4f18410 devm_mbox_controller_unregister +EXPORT_SYMBOL_GPL vmlinux 0xd4f5bfa5 iommu_queue_iopf +EXPORT_SYMBOL_GPL vmlinux 0xd4f91e06 devm_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xd4fa3415 pci_epf_remove_vepf +EXPORT_SYMBOL_GPL vmlinux 0xd51d134d kset_create_and_add +EXPORT_SYMBOL_GPL vmlinux 0xd5301b2c linear_range_get_max_value +EXPORT_SYMBOL_GPL vmlinux 0xd538bcd9 gpiochip_unlock_as_irq +EXPORT_SYMBOL_GPL vmlinux 0xd5474690 usb_role_switch_set_role +EXPORT_SYMBOL_GPL vmlinux 0xd54f8d68 acpi_ec_add_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xd55ad93b iommu_group_get_iommudata +EXPORT_SYMBOL_GPL vmlinux 0xd55d4836 bpf_trace_run3 +EXPORT_SYMBOL_GPL vmlinux 0xd5767b08 skb_zerocopy_iter_stream +EXPORT_SYMBOL_GPL vmlinux 0xd57a9914 usb_unanchor_urb +EXPORT_SYMBOL_GPL vmlinux 0xd57f7f30 ping_common_sendmsg +EXPORT_SYMBOL_GPL vmlinux 0xd58bbbcb nvme_delete_wq +EXPORT_SYMBOL_GPL vmlinux 0xd59a1587 linkmode_resolve_pause +EXPORT_SYMBOL_GPL vmlinux 0xd59abcc8 set_capacity_and_notify +EXPORT_SYMBOL_GPL vmlinux 0xd59b2b2d xdp_return_frame_bulk +EXPORT_SYMBOL_GPL vmlinux 0xd5a5d732 iommu_setup_dma_ops +EXPORT_SYMBOL_GPL vmlinux 0xd5a61a34 synchronize_srcu +EXPORT_SYMBOL_GPL vmlinux 0xd5ab371c ata_sff_qc_fill_rtf +EXPORT_SYMBOL_GPL vmlinux 0xd5b02baa rt_mutex_unlock +EXPORT_SYMBOL_GPL vmlinux 0xd5b99363 power_supply_am_i_supplied +EXPORT_SYMBOL_GPL vmlinux 0xd5c83d60 srcutorture_get_gp_data +EXPORT_SYMBOL_GPL vmlinux 0xd5cbb8fe __netpoll_setup +EXPORT_SYMBOL_GPL vmlinux 0xd5e3cc89 usb_get_from_anchor +EXPORT_SYMBOL_GPL vmlinux 0xd5e530df usb_hcd_is_primary_hcd +EXPORT_SYMBOL_GPL vmlinux 0xd5ec8ab7 net_ns_get_ownership +EXPORT_SYMBOL_GPL vmlinux 0xd5f15bf0 wbc_account_cgroup_owner +EXPORT_SYMBOL_GPL vmlinux 0xd5f3bb7b set_memory_encrypted +EXPORT_SYMBOL_GPL vmlinux 0xd5f48a1b crypto_clone_cipher +EXPORT_SYMBOL_GPL vmlinux 0xd5f71af5 ip6_route_input_lookup +EXPORT_SYMBOL_GPL vmlinux 0xd6026eca dev_pm_opp_find_level_exact +EXPORT_SYMBOL_GPL vmlinux 0xd61e0c93 da903x_writes +EXPORT_SYMBOL_GPL vmlinux 0xd64ed259 __memcat_p +EXPORT_SYMBOL_GPL vmlinux 0xd6501b61 ping_seq_next +EXPORT_SYMBOL_GPL vmlinux 0xd6588884 __tracepoint_add_device_to_group +EXPORT_SYMBOL_GPL vmlinux 0xd65ea023 rtnl_get_net_ns_capable +EXPORT_SYMBOL_GPL vmlinux 0xd6601330 bpf_trace_run1 +EXPORT_SYMBOL_GPL vmlinux 0xd6649bb0 clk_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xd66a7a35 sbitmap_queue_wake_all +EXPORT_SYMBOL_GPL vmlinux 0xd67364f7 eventfd_ctx_fdget +EXPORT_SYMBOL_GPL vmlinux 0xd6865a21 thermal_zone_get_crit_temp +EXPORT_SYMBOL_GPL vmlinux 0xd68711b0 dev_pm_qos_hide_latency_tolerance +EXPORT_SYMBOL_GPL vmlinux 0xd6874fee mddev_init +EXPORT_SYMBOL_GPL vmlinux 0xd687e7b0 irq_domain_xlate_onecell +EXPORT_SYMBOL_GPL vmlinux 0xd69006f7 serdev_device_write_flush +EXPORT_SYMBOL_GPL vmlinux 0xd698f6b8 trace_array_put +EXPORT_SYMBOL_GPL vmlinux 0xd6aaa6f9 __traceiter_udp_fail_queue_rcv_skb +EXPORT_SYMBOL_GPL vmlinux 0xd6aafb42 crc64_rocksoft +EXPORT_SYMBOL_GPL vmlinux 0xd6ae9ba7 rcu_async_should_hurry +EXPORT_SYMBOL_GPL vmlinux 0xd6b27e8a xas_set_mark +EXPORT_SYMBOL_GPL vmlinux 0xd6b79793 devres_open_group +EXPORT_SYMBOL_GPL vmlinux 0xd6d686f7 xen_remap_vma_range +EXPORT_SYMBOL_GPL vmlinux 0xd6df01f7 perf_get_hw_event_config +EXPORT_SYMBOL_GPL vmlinux 0xd6e1102a devlink_remote_reload_actions_performed +EXPORT_SYMBOL_GPL vmlinux 0xd6e7c715 devm_intel_scu_ipc_dev_get +EXPORT_SYMBOL_GPL vmlinux 0xd6ee04fe acpi_spi_count_resources +EXPORT_SYMBOL_GPL vmlinux 0xd6f3c1c1 rio_del_device +EXPORT_SYMBOL_GPL vmlinux 0xd6feefa5 agp_num_entries +EXPORT_SYMBOL_GPL vmlinux 0xd700dcf5 kthread_func +EXPORT_SYMBOL_GPL vmlinux 0xd705e179 rtnl_delete_link +EXPORT_SYMBOL_GPL vmlinux 0xd7269c64 osc_sb_native_usb4_control +EXPORT_SYMBOL_GPL vmlinux 0xd7293ffc percpu_ref_reinit +EXPORT_SYMBOL_GPL vmlinux 0xd72feba2 xenbus_read_driver_state +EXPORT_SYMBOL_GPL vmlinux 0xd73631b8 get_device +EXPORT_SYMBOL_GPL vmlinux 0xd73ef7db __traceiter_pelt_cfs_tp +EXPORT_SYMBOL_GPL vmlinux 0xd7421de2 dev_pm_opp_put +EXPORT_SYMBOL_GPL vmlinux 0xd7493cdb vfs_removexattr +EXPORT_SYMBOL_GPL vmlinux 0xd75b20aa rsa_parse_priv_key +EXPORT_SYMBOL_GPL vmlinux 0xd768e985 regulator_has_full_constraints +EXPORT_SYMBOL_GPL vmlinux 0xd78a25b0 usb_init_urb +EXPORT_SYMBOL_GPL vmlinux 0xd78c1ea1 __ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xd78c267c badblocks_show +EXPORT_SYMBOL_GPL vmlinux 0xd79675a8 bpf_trace_run4 +EXPORT_SYMBOL_GPL vmlinux 0xd79f33e2 evict_inodes +EXPORT_SYMBOL_GPL vmlinux 0xd7a0800c bpf_trace_run9 +EXPORT_SYMBOL_GPL vmlinux 0xd7a7a324 debugfs_attr_write_signed +EXPORT_SYMBOL_GPL vmlinux 0xd7a86ea4 tcp_twsk_purge +EXPORT_SYMBOL_GPL vmlinux 0xd7aea26e kernel_read_file_from_path_initns +EXPORT_SYMBOL_GPL vmlinux 0xd7b21543 ip6_datagram_connect_v6_only +EXPORT_SYMBOL_GPL vmlinux 0xd7b265c4 phy_configure +EXPORT_SYMBOL_GPL vmlinux 0xd7b9b83e dst_blackhole_mtu +EXPORT_SYMBOL_GPL vmlinux 0xd7bb4e03 regulator_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd7c185be tty_ldisc_ref_wait +EXPORT_SYMBOL_GPL vmlinux 0xd7c33a07 sdio_release_irq +EXPORT_SYMBOL_GPL vmlinux 0xd7cea889 edac_mod_work +EXPORT_SYMBOL_GPL vmlinux 0xd7f76083 regmap_get_max_register +EXPORT_SYMBOL_GPL vmlinux 0xd800ba9f __devm_of_phy_provider_register +EXPORT_SYMBOL_GPL vmlinux 0xd804cc1a kthread_use_mm +EXPORT_SYMBOL_GPL vmlinux 0xd809f485 rdev_get_dev +EXPORT_SYMBOL_GPL vmlinux 0xd81e1fcd dma_wait_for_async_tx +EXPORT_SYMBOL_GPL vmlinux 0xd820b201 __SCK__tp_func_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0xd82d4de5 tcp_abort +EXPORT_SYMBOL_GPL vmlinux 0xd83d3ba3 blk_mq_quiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xd84d35bd dax_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xd85b6878 crypto_spawn_tfm +EXPORT_SYMBOL_GPL vmlinux 0xd865cf0a acpi_dev_get_resources +EXPORT_SYMBOL_GPL vmlinux 0xd87539da perf_event_update_userpage +EXPORT_SYMBOL_GPL vmlinux 0xd877bb04 iomap_dio_rw +EXPORT_SYMBOL_GPL vmlinux 0xd87cb8eb dma_fence_unwrap_next +EXPORT_SYMBOL_GPL vmlinux 0xd87fc0a0 usb_amd_prefetch_quirk +EXPORT_SYMBOL_GPL vmlinux 0xd88850be gpiod_get_value +EXPORT_SYMBOL_GPL vmlinux 0xd894f4e8 __tracepoint_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0xd89cc0e3 dev_pm_domain_attach_by_name +EXPORT_SYMBOL_GPL vmlinux 0xd89ce8d0 bpf_map_inc +EXPORT_SYMBOL_GPL vmlinux 0xd8a061da __auxiliary_device_add +EXPORT_SYMBOL_GPL vmlinux 0xd8ae707a perf_pmu_register +EXPORT_SYMBOL_GPL vmlinux 0xd8b07bb6 tty_save_termios +EXPORT_SYMBOL_GPL vmlinux 0xd8bdc812 ata_scsi_ioctl +EXPORT_SYMBOL_GPL vmlinux 0xd8bf1b77 ata_msleep +EXPORT_SYMBOL_GPL vmlinux 0xd8bff181 regulator_unregister_notifier +EXPORT_SYMBOL_GPL vmlinux 0xd8c1663e regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xd8c595f4 bpf_sk_storage_diag_put +EXPORT_SYMBOL_GPL vmlinux 0xd8d065dd hv_stimer_alloc +EXPORT_SYMBOL_GPL vmlinux 0xd8d68ab1 dmi_memdev_type +EXPORT_SYMBOL_GPL vmlinux 0xd8d86302 pinctrl_pm_select_idle_state +EXPORT_SYMBOL_GPL vmlinux 0xd8d8759d vp_legacy_get_features +EXPORT_SYMBOL_GPL vmlinux 0xd8fbb14d net_cls_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xd8fd1db6 cpufreq_unregister_governor +EXPORT_SYMBOL_GPL vmlinux 0xd8fd4e15 rio_enable_rx_tx_port +EXPORT_SYMBOL_GPL vmlinux 0xd9087fb5 class_dev_iter_exit +EXPORT_SYMBOL_GPL vmlinux 0xd910c81d aead_init_geniv +EXPORT_SYMBOL_GPL vmlinux 0xd9125221 blk_update_request +EXPORT_SYMBOL_GPL vmlinux 0xd91dbd1f xdp_alloc_skb_bulk +EXPORT_SYMBOL_GPL vmlinux 0xd92bc594 pinctrl_force_default +EXPORT_SYMBOL_GPL vmlinux 0xd92ef192 security_kernel_post_load_data +EXPORT_SYMBOL_GPL vmlinux 0xd92f0791 leds_list_lock +EXPORT_SYMBOL_GPL vmlinux 0xd933bd90 mmc_send_tuning +EXPORT_SYMBOL_GPL vmlinux 0xd943d739 umd_cleanup_helper +EXPORT_SYMBOL_GPL vmlinux 0xd95ee1d0 serial8250_get_port +EXPORT_SYMBOL_GPL vmlinux 0xd96babb4 interval_tree_iter_next +EXPORT_SYMBOL_GPL vmlinux 0xd9916c3a idr_alloc_u32 +EXPORT_SYMBOL_GPL vmlinux 0xd9945b58 sysfs_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xd9992eb4 uv_bios_get_geoinfo +EXPORT_SYMBOL_GPL vmlinux 0xd9a41e2d __dev_change_net_namespace +EXPORT_SYMBOL_GPL vmlinux 0xd9a68ad2 srcu_barrier +EXPORT_SYMBOL_GPL vmlinux 0xd9b0debb __SCK__tp_func_pelt_irq_tp +EXPORT_SYMBOL_GPL vmlinux 0xd9bb2c13 pkcs7_get_content_data +EXPORT_SYMBOL_GPL vmlinux 0xd9cb0851 devres_remove_group +EXPORT_SYMBOL_GPL vmlinux 0xd9d0007d devm_regmap_add_irq_chip +EXPORT_SYMBOL_GPL vmlinux 0xd9dac089 mctrl_gpio_init_noauto +EXPORT_SYMBOL_GPL vmlinux 0xd9e24457 ring_buffer_peek +EXPORT_SYMBOL_GPL vmlinux 0xd9e61980 phy_gbit_all_ports_features +EXPORT_SYMBOL_GPL vmlinux 0xd9fc5d8b inet_ctl_sock_create +EXPORT_SYMBOL_GPL vmlinux 0xd9ff2172 ezx_pcap_write +EXPORT_SYMBOL_GPL vmlinux 0xda0947de kmsg_dump_unregister +EXPORT_SYMBOL_GPL vmlinux 0xda10e1e2 phy_basic_t1_features +EXPORT_SYMBOL_GPL vmlinux 0xda12fdaf firmware_request_cache +EXPORT_SYMBOL_GPL vmlinux 0xda190019 acomp_request_alloc +EXPORT_SYMBOL_GPL vmlinux 0xda1f78ee clear_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xda320d31 sfp_module_start +EXPORT_SYMBOL_GPL vmlinux 0xda45f931 xenbus_dev_fatal +EXPORT_SYMBOL_GPL vmlinux 0xda5406ec cpufreq_cpu_put +EXPORT_SYMBOL_GPL vmlinux 0xda57d107 gov_update_cpu_data +EXPORT_SYMBOL_GPL vmlinux 0xda6c8aac md_stop_writes +EXPORT_SYMBOL_GPL vmlinux 0xda7912d4 freq_qos_add_request +EXPORT_SYMBOL_GPL vmlinux 0xda8369a7 __traceiter_extlog_mem_event +EXPORT_SYMBOL_GPL vmlinux 0xda87b907 ata_platform_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xda8e1302 software_node_find_by_name +EXPORT_SYMBOL_GPL vmlinux 0xdaa06dc1 acpi_lpat_raw_to_temp +EXPORT_SYMBOL_GPL vmlinux 0xdaa139dc tps6586x_clr_bits +EXPORT_SYMBOL_GPL vmlinux 0xdaa2f226 transport_destroy_device +EXPORT_SYMBOL_GPL vmlinux 0xdaa8014e device_rename +EXPORT_SYMBOL_GPL vmlinux 0xdaad0ea5 md_run +EXPORT_SYMBOL_GPL vmlinux 0xdaae3610 acpi_dev_get_next_consumer_dev +EXPORT_SYMBOL_GPL vmlinux 0xdab5a1eb interval_tree_insert +EXPORT_SYMBOL_GPL vmlinux 0xdad2fe9d nvdimm_name +EXPORT_SYMBOL_GPL vmlinux 0xdad67e5f ipv6_stub +EXPORT_SYMBOL_GPL vmlinux 0xdad79186 __hwspin_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdaf454ac usb_free_urb +EXPORT_SYMBOL_GPL vmlinux 0xdb004084 set_direct_map_invalid_noflush +EXPORT_SYMBOL_GPL vmlinux 0xdb04b804 acpi_cppc_processor_probe +EXPORT_SYMBOL_GPL vmlinux 0xdb05d7b8 fuse_file_poll +EXPORT_SYMBOL_GPL vmlinux 0xdb15dbc9 __SCK__tp_func_rpm_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdb1aaf9b arch_is_platform_page +EXPORT_SYMBOL_GPL vmlinux 0xdb20e371 fat_alloc_new_dir +EXPORT_SYMBOL_GPL vmlinux 0xdb4c03ff dw_pcie_ep_raise_legacy_irq +EXPORT_SYMBOL_GPL vmlinux 0xdb4d06bc bus_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xdb4e2c68 policy_has_boost_freq +EXPORT_SYMBOL_GPL vmlinux 0xdb60c969 iopf_queue_remove_device +EXPORT_SYMBOL_GPL vmlinux 0xdb62b571 devlink_flash_update_status_notify +EXPORT_SYMBOL_GPL vmlinux 0xdb62dc67 __SCT__tp_func_map +EXPORT_SYMBOL_GPL vmlinux 0xdb63a944 acpi_lpat_get_conversion_table +EXPORT_SYMBOL_GPL vmlinux 0xdb64ddbf pm_relax +EXPORT_SYMBOL_GPL vmlinux 0xdb77607b perf_event_release_kernel +EXPORT_SYMBOL_GPL vmlinux 0xdb8a1b3f usermodehelper_read_trylock +EXPORT_SYMBOL_GPL vmlinux 0xdba0e344 machine_check_poll +EXPORT_SYMBOL_GPL vmlinux 0xdbb20f5a icc_enable +EXPORT_SYMBOL_GPL vmlinux 0xdbb4fde6 nf_checksum_partial +EXPORT_SYMBOL_GPL vmlinux 0xdbc34c02 handle_bad_irq +EXPORT_SYMBOL_GPL vmlinux 0xdbc758b7 disk_set_zoned +EXPORT_SYMBOL_GPL vmlinux 0xdbca9a18 devlink_port_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdbd0f54d rio_get_comptag +EXPORT_SYMBOL_GPL vmlinux 0xdbdb0e8b request_any_context_irq +EXPORT_SYMBOL_GPL vmlinux 0xdbe39235 ata_timing_compute +EXPORT_SYMBOL_GPL vmlinux 0xdbe3dbe0 vhost_task_create +EXPORT_SYMBOL_GPL vmlinux 0xdbf7cb70 mpi_get_nbits +EXPORT_SYMBOL_GPL vmlinux 0xdc020b1c set_memory_np +EXPORT_SYMBOL_GPL vmlinux 0xdc02eb39 dmi_available +EXPORT_SYMBOL_GPL vmlinux 0xdc080c55 __SCK__tp_func_remove_device_from_group +EXPORT_SYMBOL_GPL vmlinux 0xdc1f2f73 tdx_guest_keyid_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdc295194 kernfs_notify +EXPORT_SYMBOL_GPL vmlinux 0xdc3e203b ata_cable_80wire +EXPORT_SYMBOL_GPL vmlinux 0xdc425ae4 nvme_mark_namespaces_dead +EXPORT_SYMBOL_GPL vmlinux 0xdc434752 hwspin_lock_register +EXPORT_SYMBOL_GPL vmlinux 0xdc43bdc6 pci_vpd_find_ro_info_keyword +EXPORT_SYMBOL_GPL vmlinux 0xdc45a5db edac_stop_work +EXPORT_SYMBOL_GPL vmlinux 0xdc618993 powercap_register_control_type +EXPORT_SYMBOL_GPL vmlinux 0xdc62e045 phy_save_page +EXPORT_SYMBOL_GPL vmlinux 0xdc6596fa irq_set_parent +EXPORT_SYMBOL_GPL vmlinux 0xdc6699cb acpi_dev_free_resource_list +EXPORT_SYMBOL_GPL vmlinux 0xdc6c492d sysfs_unmerge_group +EXPORT_SYMBOL_GPL vmlinux 0xdc6d6108 dev_attr_unload_heads +EXPORT_SYMBOL_GPL vmlinux 0xdc71648e regmap_field_bulk_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdc753125 nvme_disable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xdc780f55 spi_sync_locked +EXPORT_SYMBOL_GPL vmlinux 0xdc7ab108 cpuidle_disable_device +EXPORT_SYMBOL_GPL vmlinux 0xdc7df67f apei_exec_ctx_init +EXPORT_SYMBOL_GPL vmlinux 0xdc825d6c usb_amd_quirk_pll_disable +EXPORT_SYMBOL_GPL vmlinux 0xdc841b74 misc_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdc88b627 ata_sff_pause +EXPORT_SYMBOL_GPL vmlinux 0xdc97af2e syscore_suspend +EXPORT_SYMBOL_GPL vmlinux 0xdc9fa232 raw_notifier_chain_register +EXPORT_SYMBOL_GPL vmlinux 0xdcaab948 intel_pinctrl_suspend_noirq +EXPORT_SYMBOL_GPL vmlinux 0xdcb32c7c skcipher_walk_done +EXPORT_SYMBOL_GPL vmlinux 0xdcb46d3d vcap_is_last_chain +EXPORT_SYMBOL_GPL vmlinux 0xdcbd24c5 ata_wait_after_reset +EXPORT_SYMBOL_GPL vmlinux 0xdcbf4928 xhci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xdcc2b176 ata_sff_dma_pause +EXPORT_SYMBOL_GPL vmlinux 0xdccbd14f acpi_spi_device_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdceb5362 efi_status_to_err +EXPORT_SYMBOL_GPL vmlinux 0xdcf1ea92 fb_bl_default_curve +EXPORT_SYMBOL_GPL vmlinux 0xdd04d02c __traceiter_ata_exec_command +EXPORT_SYMBOL_GPL vmlinux 0xdd0762df set_worker_desc +EXPORT_SYMBOL_GPL vmlinux 0xdd305445 devm_regulator_register +EXPORT_SYMBOL_GPL vmlinux 0xdd626ee3 fuse_len_args +EXPORT_SYMBOL_GPL vmlinux 0xdd6f2349 ata_noop_qc_prep +EXPORT_SYMBOL_GPL vmlinux 0xdd6fb3e4 posix_clock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xdd992b3f gpiod_get_direction +EXPORT_SYMBOL_GPL vmlinux 0xdd9dd80d xen_pvh +EXPORT_SYMBOL_GPL vmlinux 0xdd9f30eb dw_pcie_ep_init +EXPORT_SYMBOL_GPL vmlinux 0xddbeeecc pci_lock_rescan_remove +EXPORT_SYMBOL_GPL vmlinux 0xddcac622 dax_iomap_rw +EXPORT_SYMBOL_GPL vmlinux 0xddd41e4d vcap_lookup_keyfield +EXPORT_SYMBOL_GPL vmlinux 0xdddb3ec3 crypto_init_akcipher_ops_sig +EXPORT_SYMBOL_GPL vmlinux 0xdde6b0c6 usb_hcd_start_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xddf01eab xdp_rxq_info_unreg +EXPORT_SYMBOL_GPL vmlinux 0xde0af24f udp_memory_per_cpu_fw_alloc +EXPORT_SYMBOL_GPL vmlinux 0xde21cee9 dev_pm_qos_expose_latency_limit +EXPORT_SYMBOL_GPL vmlinux 0xde29fb68 pci_alloc_p2pmem +EXPORT_SYMBOL_GPL vmlinux 0xde31bf7e unregister_sys_off_handler +EXPORT_SYMBOL_GPL vmlinux 0xde31da59 __inode_attach_wb +EXPORT_SYMBOL_GPL vmlinux 0xde367612 icmp_build_probe +EXPORT_SYMBOL_GPL vmlinux 0xde39c6b8 clk_hw_unregister_mux +EXPORT_SYMBOL_GPL vmlinux 0xde457d2c __tracepoint_devlink_hwmsg +EXPORT_SYMBOL_GPL vmlinux 0xde4b796c __suspend_report_result +EXPORT_SYMBOL_GPL vmlinux 0xde515453 acct_bioset_exit +EXPORT_SYMBOL_GPL vmlinux 0xde5574cf x509_load_certificate_list +EXPORT_SYMBOL_GPL vmlinux 0xde660705 devm_pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xde6f1851 TSS_checkhmac1 +EXPORT_SYMBOL_GPL vmlinux 0xde7534e8 wm831x_auxadc_read_uv +EXPORT_SYMBOL_GPL vmlinux 0xde9236a9 platform_msi_create_irq_domain +EXPORT_SYMBOL_GPL vmlinux 0xde9ab8c7 xenbus_rm +EXPORT_SYMBOL_GPL vmlinux 0xdea4699c tpmm_chip_alloc +EXPORT_SYMBOL_GPL vmlinux 0xdead2e78 reserve_iova +EXPORT_SYMBOL_GPL vmlinux 0xdeb49d29 nd_region_dev +EXPORT_SYMBOL_GPL vmlinux 0xdebe0262 ata_port_pbar_desc +EXPORT_SYMBOL_GPL vmlinux 0xdec4734a irq_gc_unmask_enable_reg +EXPORT_SYMBOL_GPL vmlinux 0xded6c04e of_hwspin_lock_get_id_byname +EXPORT_SYMBOL_GPL vmlinux 0xdef22fd0 gpiod_enable_hw_timestamp_ns +EXPORT_SYMBOL_GPL vmlinux 0xdef92c3c tty_port_install +EXPORT_SYMBOL_GPL vmlinux 0xdeffa0a7 edac_raw_mc_handle_error +EXPORT_SYMBOL_GPL vmlinux 0xdf0234bd ata_bmdma_irq_clear +EXPORT_SYMBOL_GPL vmlinux 0xdf077759 led_trigger_blink_oneshot +EXPORT_SYMBOL_GPL vmlinux 0xdf08fcbc switchdev_handle_port_attr_set +EXPORT_SYMBOL_GPL vmlinux 0xdf0c757f ata_tf_to_fis +EXPORT_SYMBOL_GPL vmlinux 0xdf0ca3f4 cpu_latency_qos_request_active +EXPORT_SYMBOL_GPL vmlinux 0xdf0f36df locks_alloc_lock +EXPORT_SYMBOL_GPL vmlinux 0xdf0f75c6 eventfd_signal +EXPORT_SYMBOL_GPL vmlinux 0xdf1882af dbgp_reset_prep +EXPORT_SYMBOL_GPL vmlinux 0xdf1be5e1 __free_iova +EXPORT_SYMBOL_GPL vmlinux 0xdf237453 timer_shutdown_sync +EXPORT_SYMBOL_GPL vmlinux 0xdf248a27 nexthop_for_each_fib6_nh +EXPORT_SYMBOL_GPL vmlinux 0xdf2738bb cpu_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xdf2851d4 dev_pm_domain_attach_by_id +EXPORT_SYMBOL_GPL vmlinux 0xdf2bf0de irq_chip_set_affinity_parent +EXPORT_SYMBOL_GPL vmlinux 0xdf31898f cper_mem_err_pack +EXPORT_SYMBOL_GPL vmlinux 0xdf448d1c fanout_mutex +EXPORT_SYMBOL_GPL vmlinux 0xdf558314 power_supply_battery_info_properties +EXPORT_SYMBOL_GPL vmlinux 0xdf59a71c inode_sb_list_add +EXPORT_SYMBOL_GPL vmlinux 0xdf60cac9 bio_start_io_acct +EXPORT_SYMBOL_GPL vmlinux 0xdf6e2454 __nf_ip6_route +EXPORT_SYMBOL_GPL vmlinux 0xdf76dae1 serial8250_rpm_put +EXPORT_SYMBOL_GPL vmlinux 0xdf7fb7e3 fsnotify_init_mark +EXPORT_SYMBOL_GPL vmlinux 0xdf81924d uv_bios_mq_watchlist_free +EXPORT_SYMBOL_GPL vmlinux 0xdfb8787b blk_stat_disable_accounting +EXPORT_SYMBOL_GPL vmlinux 0xdfca7da3 sk_setup_caps +EXPORT_SYMBOL_GPL vmlinux 0xdfcb6c90 mctrl_gpio_set +EXPORT_SYMBOL_GPL vmlinux 0xdfe0f6d1 cdrom_read_tocentry +EXPORT_SYMBOL_GPL vmlinux 0xdff55e52 scsi_free_sgtables +EXPORT_SYMBOL_GPL vmlinux 0xdfff83bb extcon_set_property_capability +EXPORT_SYMBOL_GPL vmlinux 0xe009f0cf dequeue_signal +EXPORT_SYMBOL_GPL vmlinux 0xe00c4682 __SCK__tp_func_error_report_end +EXPORT_SYMBOL_GPL vmlinux 0xe01a7c54 group_cpus_evenly +EXPORT_SYMBOL_GPL vmlinux 0xe01c5c6d __SCK__tp_func_attach_device_to_domain +EXPORT_SYMBOL_GPL vmlinux 0xe0313d71 rhashtable_insert_slow +EXPORT_SYMBOL_GPL vmlinux 0xe03deec5 ncsi_vlan_rx_kill_vid +EXPORT_SYMBOL_GPL vmlinux 0xe04c78db __SCT__tp_func_neigh_event_send_done +EXPORT_SYMBOL_GPL vmlinux 0xe0520307 usb_put_phy +EXPORT_SYMBOL_GPL vmlinux 0xe05e2f85 nexthop_free_rcu +EXPORT_SYMBOL_GPL vmlinux 0xe068a14d pci_epc_raise_irq +EXPORT_SYMBOL_GPL vmlinux 0xe06eca24 da9052_enable_irq +EXPORT_SYMBOL_GPL vmlinux 0xe07b5741 xdp_rxq_info_is_reg +EXPORT_SYMBOL_GPL vmlinux 0xe0820442 debugfs_create_atomic_t +EXPORT_SYMBOL_GPL vmlinux 0xe082da68 __fscrypt_prepare_rename +EXPORT_SYMBOL_GPL vmlinux 0xe089cfcc agp_memory_reserved +EXPORT_SYMBOL_GPL vmlinux 0xe0af7212 fwnode_count_parents +EXPORT_SYMBOL_GPL vmlinux 0xe0b1c103 clk_set_max_rate +EXPORT_SYMBOL_GPL vmlinux 0xe0ba9de9 pm_wakeup_dev_event +EXPORT_SYMBOL_GPL vmlinux 0xe0c4e14d hwrng_register +EXPORT_SYMBOL_GPL vmlinux 0xe0c77bb5 mce_notify_irq +EXPORT_SYMBOL_GPL vmlinux 0xe0d39f1c sgx_set_attribute +EXPORT_SYMBOL_GPL vmlinux 0xe0d400e5 wm831x_device_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xe0e6ef02 perf_get_x86_pmu_capability +EXPORT_SYMBOL_GPL vmlinux 0xe0e7b995 ethnl_cable_test_pulse +EXPORT_SYMBOL_GPL vmlinux 0xe0eda6af uart_handle_cts_change +EXPORT_SYMBOL_GPL vmlinux 0xe0f628cb power_supply_get_battery_info +EXPORT_SYMBOL_GPL vmlinux 0xe1023b23 usb_remove_phy +EXPORT_SYMBOL_GPL vmlinux 0xe105343b fixed_phy_set_link_update +EXPORT_SYMBOL_GPL vmlinux 0xe10cd6ad erst_get_record_id_begin +EXPORT_SYMBOL_GPL vmlinux 0xe115bc68 __tracepoint_unmap +EXPORT_SYMBOL_GPL vmlinux 0xe1377ea7 __fib_lookup +EXPORT_SYMBOL_GPL vmlinux 0xe16ac47f da903x_set_bits +EXPORT_SYMBOL_GPL vmlinux 0xe16b1690 usb_alloc_coherent +EXPORT_SYMBOL_GPL vmlinux 0xe16ca0ee pfn_to_online_page +EXPORT_SYMBOL_GPL vmlinux 0xe1712628 tps6586x_get_version +EXPORT_SYMBOL_GPL vmlinux 0xe18c3cff fuse_direct_io +EXPORT_SYMBOL_GPL vmlinux 0xe1a52fe3 wp_shared_mapping_range +EXPORT_SYMBOL_GPL vmlinux 0xe1a8d7c9 net_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xe1a9c0d8 vp_legacy_set_features +EXPORT_SYMBOL_GPL vmlinux 0xe1aa2d62 set_hv_tscchange_cb +EXPORT_SYMBOL_GPL vmlinux 0xe1b391e7 bd_prepare_to_claim +EXPORT_SYMBOL_GPL vmlinux 0xe1ba9ec9 smp_ops +EXPORT_SYMBOL_GPL vmlinux 0xe1bd6c99 rio_init_mports +EXPORT_SYMBOL_GPL vmlinux 0xe1beb6ff vfs_kern_mount +EXPORT_SYMBOL_GPL vmlinux 0xe1c87a2f kernel_can_power_off +EXPORT_SYMBOL_GPL vmlinux 0xe1c947c1 device_add +EXPORT_SYMBOL_GPL vmlinux 0xe1ca809d device_store_bool +EXPORT_SYMBOL_GPL vmlinux 0xe1e9079f mmc_get_ext_csd +EXPORT_SYMBOL_GPL vmlinux 0xe1fcac5c sb800_prefetch +EXPORT_SYMBOL_GPL vmlinux 0xe206ba93 fuse_simple_background +EXPORT_SYMBOL_GPL vmlinux 0xe21416e4 pwm_apply_state +EXPORT_SYMBOL_GPL vmlinux 0xe22ad149 tpm_transmit_cmd +EXPORT_SYMBOL_GPL vmlinux 0xe2300f01 fixed_phy_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe233762a input_event_from_user +EXPORT_SYMBOL_GPL vmlinux 0xe23a170b led_trigger_unregister_simple +EXPORT_SYMBOL_GPL vmlinux 0xe23b1aae phy_pm_runtime_get +EXPORT_SYMBOL_GPL vmlinux 0xe25d23f3 blocking_notifier_call_chain_robust +EXPORT_SYMBOL_GPL vmlinux 0xe267d7e7 fwnode_property_read_u16_array +EXPORT_SYMBOL_GPL vmlinux 0xe271f20c __SCT__tp_func_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0xe292f9c0 genphy_c45_plca_set_cfg +EXPORT_SYMBOL_GPL vmlinux 0xe295c0ff is_hpet_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe2a059da platform_msi_domain_free_irqs +EXPORT_SYMBOL_GPL vmlinux 0xe2b2865b irq_domain_remove +EXPORT_SYMBOL_GPL vmlinux 0xe2b3207a unregister_switchdev_notifier +EXPORT_SYMBOL_GPL vmlinux 0xe2c3edfb __list_lru_init +EXPORT_SYMBOL_GPL vmlinux 0xe2ce2b4d evm_set_key +EXPORT_SYMBOL_GPL vmlinux 0xe2cf9af2 crypto_comp_compress +EXPORT_SYMBOL_GPL vmlinux 0xe2d4f386 vcap_val_rule +EXPORT_SYMBOL_GPL vmlinux 0xe2ec293b sbitmap_queue_wake_up +EXPORT_SYMBOL_GPL vmlinux 0xe2f5fb16 msg_zerocopy_callback +EXPORT_SYMBOL_GPL vmlinux 0xe32eace5 devlink_port_type_clear +EXPORT_SYMBOL_GPL vmlinux 0xe332dc98 usb_unlocked_enable_lpm +EXPORT_SYMBOL_GPL vmlinux 0xe338d95b serial8250_handle_irq +EXPORT_SYMBOL_GPL vmlinux 0xe34fbc52 misc_cg_res_total_usage +EXPORT_SYMBOL_GPL vmlinux 0xe35451e0 i2c_dw_acpi_configure +EXPORT_SYMBOL_GPL vmlinux 0xe3591276 clockevents_register_device +EXPORT_SYMBOL_GPL vmlinux 0xe35ec49b irqchip_fwnode_ops +EXPORT_SYMBOL_GPL vmlinux 0xe37acd18 vcap_tc_flower_handler_tcp_usage +EXPORT_SYMBOL_GPL vmlinux 0xe3819e75 i2c_new_dummy_device +EXPORT_SYMBOL_GPL vmlinux 0xe382c581 dw_pcie_ep_init_complete +EXPORT_SYMBOL_GPL vmlinux 0xe3840e18 secure_ipv4_port_ephemeral +EXPORT_SYMBOL_GPL vmlinux 0xe39117a3 usb_autopm_get_interface_no_resume +EXPORT_SYMBOL_GPL vmlinux 0xe3924b62 wakeup_sources_walk_start +EXPORT_SYMBOL_GPL vmlinux 0xe395b245 pci_user_read_config_word +EXPORT_SYMBOL_GPL vmlinux 0xe397caf5 seq_buf_printf +EXPORT_SYMBOL_GPL vmlinux 0xe39d0794 usb_phy_roothub_exit +EXPORT_SYMBOL_GPL vmlinux 0xe3b09712 kprobe_event_delete +EXPORT_SYMBOL_GPL vmlinux 0xe3b752ca bpf_prog_inc_not_zero +EXPORT_SYMBOL_GPL vmlinux 0xe3baad35 devlink_resource_occ_get_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3bc7fd4 hpet_unregister_irq_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3c8498d __traceiter_neigh_timer_handler +EXPORT_SYMBOL_GPL vmlinux 0xe3cd5fae klist_iter_init +EXPORT_SYMBOL_GPL vmlinux 0xe3e423ac iommu_group_release_dma_owner +EXPORT_SYMBOL_GPL vmlinux 0xe3e52798 battery_hook_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe3e88acb __get_current_cr3_fast +EXPORT_SYMBOL_GPL vmlinux 0xe3f4050c is_software_node +EXPORT_SYMBOL_GPL vmlinux 0xe3f6d0e4 pci_iov_vf_id +EXPORT_SYMBOL_GPL vmlinux 0xe40a7da2 pci_epf_unregister_driver +EXPORT_SYMBOL_GPL vmlinux 0xe40bb23e devlink_health_reporter_priv +EXPORT_SYMBOL_GPL vmlinux 0xe40bbf22 clk_register_mux_table +EXPORT_SYMBOL_GPL vmlinux 0xe41b1a3e vchan_dma_desc_free_list +EXPORT_SYMBOL_GPL vmlinux 0xe4248980 cper_estatus_print +EXPORT_SYMBOL_GPL vmlinux 0xe42809f5 badblocks_store +EXPORT_SYMBOL_GPL vmlinux 0xe42d0f1c devfreq_event_get_edev_count +EXPORT_SYMBOL_GPL vmlinux 0xe42e3f99 pm_runtime_suspended_time +EXPORT_SYMBOL_GPL vmlinux 0xe4309905 syscore_resume +EXPORT_SYMBOL_GPL vmlinux 0xe4327880 ata_sas_async_probe +EXPORT_SYMBOL_GPL vmlinux 0xe436e90c __dma_fence_unwrap_merge +EXPORT_SYMBOL_GPL vmlinux 0xe439d182 mdiobus_c45_modify_changed +EXPORT_SYMBOL_GPL vmlinux 0xe43b36ba devl_rate_nodes_destroy +EXPORT_SYMBOL_GPL vmlinux 0xe441c0fd dev_attr_ncq_prio_supported +EXPORT_SYMBOL_GPL vmlinux 0xe452f954 clk_fixed_factor_ops +EXPORT_SYMBOL_GPL vmlinux 0xe4835bd7 sdio_writel +EXPORT_SYMBOL_GPL vmlinux 0xe48611ac trace_clock_global +EXPORT_SYMBOL_GPL vmlinux 0xe48af6d5 usb_autopm_get_interface +EXPORT_SYMBOL_GPL vmlinux 0xe4971ade tracing_alloc_snapshot +EXPORT_SYMBOL_GPL vmlinux 0xe4a3fe02 security_inode_setattr +EXPORT_SYMBOL_GPL vmlinux 0xe4b064f9 pcie_link_speed +EXPORT_SYMBOL_GPL vmlinux 0xe4b818c3 phy_speed_to_str +EXPORT_SYMBOL_GPL vmlinux 0xe4bc39db pinctrl_add_gpio_ranges +EXPORT_SYMBOL_GPL vmlinux 0xe4c2c66c rtc_ktime_to_tm +EXPORT_SYMBOL_GPL vmlinux 0xe4c82157 mddev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xe4d022ff of_phy_get +EXPORT_SYMBOL_GPL vmlinux 0xe4d98be4 devlink_dpipe_match_put +EXPORT_SYMBOL_GPL vmlinux 0xe4e48b12 swphy_validate_state +EXPORT_SYMBOL_GPL vmlinux 0xe4ebb4d6 pci_epf_unbind +EXPORT_SYMBOL_GPL vmlinux 0xe4f2edb1 xenbus_switch_state +EXPORT_SYMBOL_GPL vmlinux 0xe4f55199 inet6_sk_rebuild_header +EXPORT_SYMBOL_GPL vmlinux 0xe4f66271 gnttab_dma_alloc_pages +EXPORT_SYMBOL_GPL vmlinux 0xe50388b3 devm_extcon_dev_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe531234a pci_msi_mask_irq +EXPORT_SYMBOL_GPL vmlinux 0xe53d846a d_same_name +EXPORT_SYMBOL_GPL vmlinux 0xe54ac14a device_match_any +EXPORT_SYMBOL_GPL vmlinux 0xe55769b0 pci_disable_pasid +EXPORT_SYMBOL_GPL vmlinux 0xe55f5199 acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xe55f98e7 vp_modern_get_queue_enable +EXPORT_SYMBOL_GPL vmlinux 0xe5781a2a fwnode_property_read_string +EXPORT_SYMBOL_GPL vmlinux 0xe57d2048 devlink_port_attrs_set +EXPORT_SYMBOL_GPL vmlinux 0xe582cd85 __SCK__tp_func_block_unplug +EXPORT_SYMBOL_GPL vmlinux 0xe58741d8 virtqueue_get_desc_addr +EXPORT_SYMBOL_GPL vmlinux 0xe587fe50 __tracepoint_ipi_send_cpumask +EXPORT_SYMBOL_GPL vmlinux 0xe5883bd9 class_compat_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe5892724 power_supply_property_is_writeable +EXPORT_SYMBOL_GPL vmlinux 0xe58c63f5 devm_kstrdup_const +EXPORT_SYMBOL_GPL vmlinux 0xe58eb9d7 FSE_readNCount +EXPORT_SYMBOL_GPL vmlinux 0xe5b36496 nf_ct_hook +EXPORT_SYMBOL_GPL vmlinux 0xe5c02b64 freq_qos_remove_request +EXPORT_SYMBOL_GPL vmlinux 0xe5c93bcc fuse_send_init +EXPORT_SYMBOL_GPL vmlinux 0xe5ce1a56 rhashtable_walk_enter +EXPORT_SYMBOL_GPL vmlinux 0xe5d13a0f irq_chip_mask_ack_parent +EXPORT_SYMBOL_GPL vmlinux 0xe5d3b280 phy_speed_up +EXPORT_SYMBOL_GPL vmlinux 0xe5d68d55 dmaengine_desc_set_metadata_len +EXPORT_SYMBOL_GPL vmlinux 0xe5df94bf rio_inb_pwrite_handler +EXPORT_SYMBOL_GPL vmlinux 0xe5e05ddf devfreq_event_set_event +EXPORT_SYMBOL_GPL vmlinux 0xe5e8dbff rdev_get_id +EXPORT_SYMBOL_GPL vmlinux 0xe5f6c80c iomap_ioend_try_merge +EXPORT_SYMBOL_GPL vmlinux 0xe5f7ffaa phy_pm_runtime_forbid +EXPORT_SYMBOL_GPL vmlinux 0xe60632a9 edac_queue_work +EXPORT_SYMBOL_GPL vmlinux 0xe60a5e8d pids_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xe62308bb edac_pci_handle_npe +EXPORT_SYMBOL_GPL vmlinux 0xe62358a4 pcie_aspm_capable +EXPORT_SYMBOL_GPL vmlinux 0xe628bb9f phy_fibre_port_array +EXPORT_SYMBOL_GPL vmlinux 0xe62e1b04 nvme_cleanup_cmd +EXPORT_SYMBOL_GPL vmlinux 0xe6322b8d register_kretprobes +EXPORT_SYMBOL_GPL vmlinux 0xe63eac01 nvme_sync_queues +EXPORT_SYMBOL_GPL vmlinux 0xe63f2cba vmware_tdx_hypercall_args +EXPORT_SYMBOL_GPL vmlinux 0xe6499389 nvme_host_path_error +EXPORT_SYMBOL_GPL vmlinux 0xe64ad8ea unregister_nmi_handler +EXPORT_SYMBOL_GPL vmlinux 0xe658854e device_show_ulong +EXPORT_SYMBOL_GPL vmlinux 0xe6628f05 i2c_handle_smbus_host_notify +EXPORT_SYMBOL_GPL vmlinux 0xe676202f ping_init_sock +EXPORT_SYMBOL_GPL vmlinux 0xe67e98ed mmu_interval_read_begin +EXPORT_SYMBOL_GPL vmlinux 0xe6875ac5 crypto_register_templates +EXPORT_SYMBOL_GPL vmlinux 0xe688fe81 inet_csk_route_req +EXPORT_SYMBOL_GPL vmlinux 0xe68b0718 vring_transport_features +EXPORT_SYMBOL_GPL vmlinux 0xe6b7198f pinconf_generic_dump_config +EXPORT_SYMBOL_GPL vmlinux 0xe6c415e9 rio_request_inb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xe6cecf27 devm_register_sys_off_handler +EXPORT_SYMBOL_GPL vmlinux 0xe6d4c650 nvme_wait_reset +EXPORT_SYMBOL_GPL vmlinux 0xe6d871d4 page_cache_ra_unbounded +EXPORT_SYMBOL_GPL vmlinux 0xe6e40502 rcu_get_gp_seq +EXPORT_SYMBOL_GPL vmlinux 0xe6e6b684 md_new_event +EXPORT_SYMBOL_GPL vmlinux 0xe6f52443 klist_add_head +EXPORT_SYMBOL_GPL vmlinux 0xe6f83837 acpi_bus_attach_private_data +EXPORT_SYMBOL_GPL vmlinux 0xe6ffc61b usb_ep0_reinit +EXPORT_SYMBOL_GPL vmlinux 0xe700d767 reset_control_bulk_deassert +EXPORT_SYMBOL_GPL vmlinux 0xe70221d7 cppc_get_perf_caps +EXPORT_SYMBOL_GPL vmlinux 0xe70740f8 serdev_device_write_buf +EXPORT_SYMBOL_GPL vmlinux 0xe70e7835 dev_pm_opp_find_freq_ceil +EXPORT_SYMBOL_GPL vmlinux 0xe716c515 phy_modify_mmd +EXPORT_SYMBOL_GPL vmlinux 0xe7232e0f user_return_notifier_unregister +EXPORT_SYMBOL_GPL vmlinux 0xe72ea210 crypto_inst_setname +EXPORT_SYMBOL_GPL vmlinux 0xe7465f43 blk_mq_debugfs_rq_show +EXPORT_SYMBOL_GPL vmlinux 0xe74b4411 dw_pcie_link_up +EXPORT_SYMBOL_GPL vmlinux 0xe753b68d devlink_fmsg_arr_pair_nest_end +EXPORT_SYMBOL_GPL vmlinux 0xe769232e sprint_symbol_no_offset +EXPORT_SYMBOL_GPL vmlinux 0xe770d607 bpf_trace_run8 +EXPORT_SYMBOL_GPL vmlinux 0xe77d5ef3 ata_xfer_mode2mask +EXPORT_SYMBOL_GPL vmlinux 0xe781bc9f ata_bmdma_setup +EXPORT_SYMBOL_GPL vmlinux 0xe783e261 sysfs_emit +EXPORT_SYMBOL_GPL vmlinux 0xe79bf0c4 klp_shadow_get +EXPORT_SYMBOL_GPL vmlinux 0xe7a7cf56 skb_to_sgvec +EXPORT_SYMBOL_GPL vmlinux 0xe7a8fb75 ata_port_freeze +EXPORT_SYMBOL_GPL vmlinux 0xe7b96be0 tdx_mcall_get_report0 +EXPORT_SYMBOL_GPL vmlinux 0xe7c71a0f sysfs_remove_file_ns +EXPORT_SYMBOL_GPL vmlinux 0xe7d416ea mmc_regulator_disable_vqmmc +EXPORT_SYMBOL_GPL vmlinux 0xe7d6d2d4 filter_match_preds +EXPORT_SYMBOL_GPL vmlinux 0xe7e55916 br_ip6_fragment +EXPORT_SYMBOL_GPL vmlinux 0xe7f8a95a devl_trap_policers_register +EXPORT_SYMBOL_GPL vmlinux 0xe80167a6 mmu_notifier_get_locked +EXPORT_SYMBOL_GPL vmlinux 0xe8035e7c acpi_find_child_by_adr +EXPORT_SYMBOL_GPL vmlinux 0xe8091c2d sk_msg_memcopy_from_iter +EXPORT_SYMBOL_GPL vmlinux 0xe809c2bd lwtunnel_xmit +EXPORT_SYMBOL_GPL vmlinux 0xe811cbd2 xen_register_device_domain_owner +EXPORT_SYMBOL_GPL vmlinux 0xe818b32b ata_bmdma_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xe81b7213 failover_register +EXPORT_SYMBOL_GPL vmlinux 0xe83eba32 itlb_multihit_kvm_mitigation +EXPORT_SYMBOL_GPL vmlinux 0xe84f6e5c pciserial_remove_ports +EXPORT_SYMBOL_GPL vmlinux 0xe8522d38 alloc_dax +EXPORT_SYMBOL_GPL vmlinux 0xe852668e irq_chip_set_type_parent +EXPORT_SYMBOL_GPL vmlinux 0xe85f8e3e blkdev_zone_mgmt +EXPORT_SYMBOL_GPL vmlinux 0xe862a861 ata_cable_unknown +EXPORT_SYMBOL_GPL vmlinux 0xe862c4b7 dpm_suspend_start +EXPORT_SYMBOL_GPL vmlinux 0xe864e68f device_initialize +EXPORT_SYMBOL_GPL vmlinux 0xe86ed5e4 rio_lock_device +EXPORT_SYMBOL_GPL vmlinux 0xe8979afb mas_prev_range +EXPORT_SYMBOL_GPL vmlinux 0xe898bfb0 event_triggers_post_call +EXPORT_SYMBOL_GPL vmlinux 0xe8a4d7c6 mctp_unregister_netdev +EXPORT_SYMBOL_GPL vmlinux 0xe8a649d0 __traceiter_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0xe8a772bd vcap_keyset_list_add +EXPORT_SYMBOL_GPL vmlinux 0xe8b5d72b fwnode_property_read_u32_array +EXPORT_SYMBOL_GPL vmlinux 0xe8bc40c5 cn_netlink_send +EXPORT_SYMBOL_GPL vmlinux 0xe8c0065d memory_group_register_static +EXPORT_SYMBOL_GPL vmlinux 0xe8d18451 rtc_update_irq +EXPORT_SYMBOL_GPL vmlinux 0xe8e235c8 arch_static_call_transform +EXPORT_SYMBOL_GPL vmlinux 0xe8f7ae3e __devm_reset_control_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xe905a241 __inet_lookup_listener +EXPORT_SYMBOL_GPL vmlinux 0xe908e6c8 __clk_hw_register_mux +EXPORT_SYMBOL_GPL vmlinux 0xe90a0453 __tracepoint_io_page_fault +EXPORT_SYMBOL_GPL vmlinux 0xe91121bf devlink_port_linecard_set +EXPORT_SYMBOL_GPL vmlinux 0xe911df29 eventfd_ctx_do_read +EXPORT_SYMBOL_GPL vmlinux 0xe936b50b is_swiotlb_active +EXPORT_SYMBOL_GPL vmlinux 0xe93e49c3 devres_free +EXPORT_SYMBOL_GPL vmlinux 0xe94986d6 sched_clock +EXPORT_SYMBOL_GPL vmlinux 0xe94aa1ea blkcg_root +EXPORT_SYMBOL_GPL vmlinux 0xe987f41f __thermal_zone_get_trip +EXPORT_SYMBOL_GPL vmlinux 0xe98a3227 to_software_node +EXPORT_SYMBOL_GPL vmlinux 0xe98c8274 pwm_set_chip_data +EXPORT_SYMBOL_GPL vmlinux 0xe9a5f58e clk_hw_unregister_composite +EXPORT_SYMBOL_GPL vmlinux 0xe9c0cb02 input_device_enabled +EXPORT_SYMBOL_GPL vmlinux 0xe9ce931a kvm_para_available +EXPORT_SYMBOL_GPL vmlinux 0xe9cfb952 fsl_mc_device_group +EXPORT_SYMBOL_GPL vmlinux 0xe9d1b7cf irq_to_pcap +EXPORT_SYMBOL_GPL vmlinux 0xe9ea415d ata_std_prereset +EXPORT_SYMBOL_GPL vmlinux 0xe9f26980 dw8250_do_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xe9f3505f scsi_get_vpd_page +EXPORT_SYMBOL_GPL vmlinux 0xe9f5116f rcu_exp_jiffies_till_stall_check +EXPORT_SYMBOL_GPL vmlinux 0xe9f57704 nvme_wait_freeze +EXPORT_SYMBOL_GPL vmlinux 0xe9fadf16 __SCT__tp_func_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xea018bbb mpi_test_bit +EXPORT_SYMBOL_GPL vmlinux 0xea124bd1 gcd +EXPORT_SYMBOL_GPL vmlinux 0xea312c8c serdev_acpi_get_uart_resource +EXPORT_SYMBOL_GPL vmlinux 0xea38036f ring_buffer_entries +EXPORT_SYMBOL_GPL vmlinux 0xea414556 pci_ioremap_bar +EXPORT_SYMBOL_GPL vmlinux 0xea466b60 serial8250_init_port +EXPORT_SYMBOL_GPL vmlinux 0xea525d32 folio_wait_writeback +EXPORT_SYMBOL_GPL vmlinux 0xea585d43 cros_ec_cmd +EXPORT_SYMBOL_GPL vmlinux 0xea5a186a extcon_set_state +EXPORT_SYMBOL_GPL vmlinux 0xea6388fe usb_reset_endpoint +EXPORT_SYMBOL_GPL vmlinux 0xea65b2e0 acpi_subsys_suspend_late +EXPORT_SYMBOL_GPL vmlinux 0xea69d7d7 asm_exc_nmi_kvm_vmx +EXPORT_SYMBOL_GPL vmlinux 0xea6a9d34 vma_kernel_pagesize +EXPORT_SYMBOL_GPL vmlinux 0xea6caeb2 devm_acpi_dma_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xea76038e acpi_subsys_prepare +EXPORT_SYMBOL_GPL vmlinux 0xea79b572 edac_mc_alloc +EXPORT_SYMBOL_GPL vmlinux 0xea8919e4 usb_match_one_id +EXPORT_SYMBOL_GPL vmlinux 0xeaa5f5ec __cpuhp_state_remove_instance +EXPORT_SYMBOL_GPL vmlinux 0xeaa8d9a8 irq_chip_disable_parent +EXPORT_SYMBOL_GPL vmlinux 0xeac0074e device_create_bin_file +EXPORT_SYMBOL_GPL vmlinux 0xead3e41b __traceiter_cpu_frequency +EXPORT_SYMBOL_GPL vmlinux 0xead54924 mctrl_gpio_to_gpiod +EXPORT_SYMBOL_GPL vmlinux 0xead5c8e5 clk_bulk_prepare +EXPORT_SYMBOL_GPL vmlinux 0xeae0f496 clean_acked_data_flush +EXPORT_SYMBOL_GPL vmlinux 0xeae5fc66 nf_queue +EXPORT_SYMBOL_GPL vmlinux 0xeae8a5a6 rt_mutex_trylock +EXPORT_SYMBOL_GPL vmlinux 0xeaec6ae6 regulator_bulk_get +EXPORT_SYMBOL_GPL vmlinux 0xeaedcc70 sata_set_spd +EXPORT_SYMBOL_GPL vmlinux 0xeaf0a57c look_up_OID +EXPORT_SYMBOL_GPL vmlinux 0xeaf3cb23 crc64_be +EXPORT_SYMBOL_GPL vmlinux 0xeb080053 __pm_runtime_resume +EXPORT_SYMBOL_GPL vmlinux 0xeb12f4aa bpf_prog_free +EXPORT_SYMBOL_GPL vmlinux 0xeb20016a sdio_writeb +EXPORT_SYMBOL_GPL vmlinux 0xeb2777b8 usb_create_shared_hcd +EXPORT_SYMBOL_GPL vmlinux 0xeb3f1a37 nvme_enable_ctrl +EXPORT_SYMBOL_GPL vmlinux 0xeb43202d usb_add_phy_dev +EXPORT_SYMBOL_GPL vmlinux 0xeb4a4842 uart_handle_dcd_change +EXPORT_SYMBOL_GPL vmlinux 0xeb507c14 nvdimm_kobj +EXPORT_SYMBOL_GPL vmlinux 0xeb52f746 __SCT__tp_func_console +EXPORT_SYMBOL_GPL vmlinux 0xeb531d3b rcu_read_unlock_trace_special +EXPORT_SYMBOL_GPL vmlinux 0xeb5da109 perf_event_enable +EXPORT_SYMBOL_GPL vmlinux 0xeb6fad10 crypto_unregister_scomp +EXPORT_SYMBOL_GPL vmlinux 0xeb833c22 xen_has_pv_disk_devices +EXPORT_SYMBOL_GPL vmlinux 0xeb881373 device_register +EXPORT_SYMBOL_GPL vmlinux 0xeb918e5e __fsverity_file_open +EXPORT_SYMBOL_GPL vmlinux 0xeba78298 pm_generic_thaw +EXPORT_SYMBOL_GPL vmlinux 0xebac97f9 usb_hcd_poll_rh_status +EXPORT_SYMBOL_GPL vmlinux 0xebb1f830 acpi_quirk_skip_gpio_event_handlers +EXPORT_SYMBOL_GPL vmlinux 0xebccbf23 devm_spi_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xebd0f01a usb_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xebd2c398 crypto_unregister_akcipher +EXPORT_SYMBOL_GPL vmlinux 0xebd4cc11 mctrl_gpio_enable_ms +EXPORT_SYMBOL_GPL vmlinux 0xebe3209b validate_xmit_skb_list +EXPORT_SYMBOL_GPL vmlinux 0xebe35189 usb_enable_ltm +EXPORT_SYMBOL_GPL vmlinux 0xebe74879 ehci_hub_control +EXPORT_SYMBOL_GPL vmlinux 0xec119d22 xenbus_unmap_ring_vfree +EXPORT_SYMBOL_GPL vmlinux 0xec27d1e2 serial8250_release_dma +EXPORT_SYMBOL_GPL vmlinux 0xec2fa87c scsi_host_busy_iter +EXPORT_SYMBOL_GPL vmlinux 0xec3653c7 usb_role_switch_get +EXPORT_SYMBOL_GPL vmlinux 0xec55efea spi_bus_lock +EXPORT_SYMBOL_GPL vmlinux 0xec5668f6 dax_zero_page_range +EXPORT_SYMBOL_GPL vmlinux 0xec58ec90 nvme_change_ctrl_state +EXPORT_SYMBOL_GPL vmlinux 0xec5ad73b trace_seq_bitmask +EXPORT_SYMBOL_GPL vmlinux 0xec6c9465 extcon_get_property +EXPORT_SYMBOL_GPL vmlinux 0xec774acb cpufreq_frequency_table_verify +EXPORT_SYMBOL_GPL vmlinux 0xec788566 acpi_target_system_state +EXPORT_SYMBOL_GPL vmlinux 0xec7947cd proc_create_net_data +EXPORT_SYMBOL_GPL vmlinux 0xec87d8c0 fat_build_inode +EXPORT_SYMBOL_GPL vmlinux 0xec8fe179 nl_table +EXPORT_SYMBOL_GPL vmlinux 0xec9d0f09 rio_local_set_device_id +EXPORT_SYMBOL_GPL vmlinux 0xec9de8b7 housekeeping_affine +EXPORT_SYMBOL_GPL vmlinux 0xecab6c70 __tracepoint_xdp_bulk_tx +EXPORT_SYMBOL_GPL vmlinux 0xecb3a438 usb_hcd_platform_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xecba68e3 gnttab_batch_map +EXPORT_SYMBOL_GPL vmlinux 0xeccc06ec nvdimm_clear_poison +EXPORT_SYMBOL_GPL vmlinux 0xecce5d8b dm_audit_log_bio +EXPORT_SYMBOL_GPL vmlinux 0xecd591e4 vp_modern_map_vq_notify +EXPORT_SYMBOL_GPL vmlinux 0xecd8f23d xenbus_read +EXPORT_SYMBOL_GPL vmlinux 0xecf2818a serdev_device_remove +EXPORT_SYMBOL_GPL vmlinux 0xed0459df cros_ec_get_sensor_count +EXPORT_SYMBOL_GPL vmlinux 0xed0e201d kernfs_put +EXPORT_SYMBOL_GPL vmlinux 0xed12f574 devl_param_value_changed +EXPORT_SYMBOL_GPL vmlinux 0xed1c3a96 init_pid_ns +EXPORT_SYMBOL_GPL vmlinux 0xed23eef4 rio_del_mport_pw_handler +EXPORT_SYMBOL_GPL vmlinux 0xed2c5bcf power_supply_charge_behaviour_parse +EXPORT_SYMBOL_GPL vmlinux 0xed3316a9 device_property_present +EXPORT_SYMBOL_GPL vmlinux 0xed39b7b8 parse_OID +EXPORT_SYMBOL_GPL vmlinux 0xed3b7785 usb_get_hcd +EXPORT_SYMBOL_GPL vmlinux 0xed3f341c devm_clk_hw_register_fixed_factor_parent_hw +EXPORT_SYMBOL_GPL vmlinux 0xed43d3d9 icc_nodes_remove +EXPORT_SYMBOL_GPL vmlinux 0xed4d5e6a pci_sriov_get_totalvfs +EXPORT_SYMBOL_GPL vmlinux 0xed64d915 pci_test_config_bits +EXPORT_SYMBOL_GPL vmlinux 0xed84cd9d crypto_sig_set_privkey +EXPORT_SYMBOL_GPL vmlinux 0xed8c384b netdev_xmit_skip_txqueue +EXPORT_SYMBOL_GPL vmlinux 0xed918dde hte_init_line_attr +EXPORT_SYMBOL_GPL vmlinux 0xed9ba5dd tty_standard_install +EXPORT_SYMBOL_GPL vmlinux 0xeda1cd13 cpufreq_freq_transition_begin +EXPORT_SYMBOL_GPL vmlinux 0xedacfd69 crypto_register_alg +EXPORT_SYMBOL_GPL vmlinux 0xedc425e6 sata_scr_read +EXPORT_SYMBOL_GPL vmlinux 0xedc45e67 __percpu_init_rwsem +EXPORT_SYMBOL_GPL vmlinux 0xedc77106 hvc_remove +EXPORT_SYMBOL_GPL vmlinux 0xedd1feee cpufreq_register_governor +EXPORT_SYMBOL_GPL vmlinux 0xedd31aa1 sock_diag_unregister +EXPORT_SYMBOL_GPL vmlinux 0xeddbc39f irq_create_of_mapping +EXPORT_SYMBOL_GPL vmlinux 0xedde9bb8 icc_put +EXPORT_SYMBOL_GPL vmlinux 0xede96218 spi_add_device +EXPORT_SYMBOL_GPL vmlinux 0xede9a09a btree_lookup +EXPORT_SYMBOL_GPL vmlinux 0xedec60b0 watchdog_set_last_hw_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xededc604 usb_choose_configuration +EXPORT_SYMBOL_GPL vmlinux 0xee0a9f77 input_ff_upload +EXPORT_SYMBOL_GPL vmlinux 0xee13e697 set_personality_ia32 +EXPORT_SYMBOL_GPL vmlinux 0xee2f57c5 dm_copy_name_and_uuid +EXPORT_SYMBOL_GPL vmlinux 0xee38ef57 register_switchdev_blocking_notifier +EXPORT_SYMBOL_GPL vmlinux 0xee3f32dc tty_set_termios +EXPORT_SYMBOL_GPL vmlinux 0xee41cd9b crypto_unregister_templates +EXPORT_SYMBOL_GPL vmlinux 0xee42947a devm_mbox_controller_register +EXPORT_SYMBOL_GPL vmlinux 0xee4e43ba devm_clk_hw_register +EXPORT_SYMBOL_GPL vmlinux 0xee518148 kmsg_dump_get_buffer +EXPORT_SYMBOL_GPL vmlinux 0xee6b71c4 syscon_regmap_lookup_by_compatible +EXPORT_SYMBOL_GPL vmlinux 0xee6c633a devices_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xee77e6be gnttab_map_refs +EXPORT_SYMBOL_GPL vmlinux 0xeea76283 divider_ro_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xeece5b77 vmware_hypercall_mode +EXPORT_SYMBOL_GPL vmlinux 0xeed22207 cpuidle_enable_device +EXPORT_SYMBOL_GPL vmlinux 0xeed23f10 is_dock_device +EXPORT_SYMBOL_GPL vmlinux 0xeedd987e phy_10gbit_features_array +EXPORT_SYMBOL_GPL vmlinux 0xeede7613 tty_get_pgrp +EXPORT_SYMBOL_GPL vmlinux 0xeee4b172 mnt_idmap_put +EXPORT_SYMBOL_GPL vmlinux 0xeee667d3 fpregs_assert_state_consistent +EXPORT_SYMBOL_GPL vmlinux 0xeee8f92f md_stop +EXPORT_SYMBOL_GPL vmlinux 0xeeedd22f regulator_map_voltage_ascend +EXPORT_SYMBOL_GPL vmlinux 0xeef68434 acpi_ec_remove_query_handler +EXPORT_SYMBOL_GPL vmlinux 0xef064ff4 devlink_dpipe_entry_ctx_close +EXPORT_SYMBOL_GPL vmlinux 0xef158071 bio_associate_blkg_from_css +EXPORT_SYMBOL_GPL vmlinux 0xef1f6e23 apei_resources_request +EXPORT_SYMBOL_GPL vmlinux 0xef29fcdd clk_bulk_put +EXPORT_SYMBOL_GPL vmlinux 0xef30cb0f fsnotify_alloc_group +EXPORT_SYMBOL_GPL vmlinux 0xef33e16a devlink_port_fini +EXPORT_SYMBOL_GPL vmlinux 0xef34bf3e hrtimer_active +EXPORT_SYMBOL_GPL vmlinux 0xef391794 xfrm_bpf_md_dst +EXPORT_SYMBOL_GPL vmlinux 0xef40a367 edac_mc_free +EXPORT_SYMBOL_GPL vmlinux 0xef464c28 getboottime64 +EXPORT_SYMBOL_GPL vmlinux 0xef4d76c5 led_classdev_suspend +EXPORT_SYMBOL_GPL vmlinux 0xef5db66d regulator_get_init_drvdata +EXPORT_SYMBOL_GPL vmlinux 0xef6c3f70 round_jiffies_up_relative +EXPORT_SYMBOL_GPL vmlinux 0xef70eb7e ring_buffer_iter_advance +EXPORT_SYMBOL_GPL vmlinux 0xef8fc95f kvm_async_pf_task_wait_schedule +EXPORT_SYMBOL_GPL vmlinux 0xef92e824 serdev_device_write_wakeup +EXPORT_SYMBOL_GPL vmlinux 0xef92ef33 btree_last +EXPORT_SYMBOL_GPL vmlinux 0xef97c081 __xdp_rxq_info_reg +EXPORT_SYMBOL_GPL vmlinux 0xef9bddfc fscrypt_get_symlink +EXPORT_SYMBOL_GPL vmlinux 0xef9d4a1a dev_pm_opp_get_opp_count +EXPORT_SYMBOL_GPL vmlinux 0xefa2c27d register_tracepoint_module_notifier +EXPORT_SYMBOL_GPL vmlinux 0xefa6cf6c relay_file_operations +EXPORT_SYMBOL_GPL vmlinux 0xefa98057 sysfs_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xefabc85c serial8250_tx_chars +EXPORT_SYMBOL_GPL vmlinux 0xefaf5756 switchdev_port_obj_add +EXPORT_SYMBOL_GPL vmlinux 0xefb66190 disk_force_media_change +EXPORT_SYMBOL_GPL vmlinux 0xefbe9c20 nvme_auth_gen_pubkey +EXPORT_SYMBOL_GPL vmlinux 0xefd4d497 regulator_set_current_limit +EXPORT_SYMBOL_GPL vmlinux 0xefdbfb29 rio_unregister_mport +EXPORT_SYMBOL_GPL vmlinux 0xefeafcf1 edac_has_mcs +EXPORT_SYMBOL_GPL vmlinux 0xefeb658f genphy_c45_config_aneg +EXPORT_SYMBOL_GPL vmlinux 0xeff5f3a9 lwtunnel_valid_encap_type +EXPORT_SYMBOL_GPL vmlinux 0xf000ba5c regmap_exit +EXPORT_SYMBOL_GPL vmlinux 0xf000f8e4 ping_bind +EXPORT_SYMBOL_GPL vmlinux 0xf012a4fa devlink_port_attrs_pci_pf_set +EXPORT_SYMBOL_GPL vmlinux 0xf02bde5f devm_gpiod_put +EXPORT_SYMBOL_GPL vmlinux 0xf02d27ba syscon_node_to_regmap +EXPORT_SYMBOL_GPL vmlinux 0xf03cca91 synth_event_add_val +EXPORT_SYMBOL_GPL vmlinux 0xf042f977 thermal_zone_get_zone_by_name +EXPORT_SYMBOL_GPL vmlinux 0xf043c215 zap_vma_ptes +EXPORT_SYMBOL_GPL vmlinux 0xf04429b4 acpi_bus_get_status_handle +EXPORT_SYMBOL_GPL vmlinux 0xf05a52fe asn1_encode_oid +EXPORT_SYMBOL_GPL vmlinux 0xf05fbf09 pci_pio_to_address +EXPORT_SYMBOL_GPL vmlinux 0xf0696401 acpi_pci_detect_ejectable +EXPORT_SYMBOL_GPL vmlinux 0xf071c8e0 devl_assert_locked +EXPORT_SYMBOL_GPL vmlinux 0xf0790a7e fwnode_get_next_parent +EXPORT_SYMBOL_GPL vmlinux 0xf07fcd54 spi_controller_suspend +EXPORT_SYMBOL_GPL vmlinux 0xf083c6bc bind_interdomain_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf08bf77b shmem_file_setup +EXPORT_SYMBOL_GPL vmlinux 0xf0910075 sfp_bus_del_upstream +EXPORT_SYMBOL_GPL vmlinux 0xf0c9b177 pcie_port_find_device +EXPORT_SYMBOL_GPL vmlinux 0xf0ccf2d4 nvme_auth_dhgroup_kpp +EXPORT_SYMBOL_GPL vmlinux 0xf0d3ac74 dev_pm_qos_flags +EXPORT_SYMBOL_GPL vmlinux 0xf0dfc80c netdev_walk_all_upper_dev_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf0e19581 __irq_set_handler +EXPORT_SYMBOL_GPL vmlinux 0xf0eb9cd5 devm_thermal_add_hwmon_sysfs +EXPORT_SYMBOL_GPL vmlinux 0xf0f4021f xfrm_audit_state_notfound_simple +EXPORT_SYMBOL_GPL vmlinux 0xf0fd0b61 x86_perf_get_lbr +EXPORT_SYMBOL_GPL vmlinux 0xf108d294 sata_link_hardreset +EXPORT_SYMBOL_GPL vmlinux 0xf1124ecd sfp_upstream_set_signal_rate +EXPORT_SYMBOL_GPL vmlinux 0xf12f7e1a dma_need_sync +EXPORT_SYMBOL_GPL vmlinux 0xf13aa8e6 sched_set_fifo +EXPORT_SYMBOL_GPL vmlinux 0xf147f4c7 dax_finish_sync_fault +EXPORT_SYMBOL_GPL vmlinux 0xf14a8b58 platform_bus_type +EXPORT_SYMBOL_GPL vmlinux 0xf1624b90 iomap_page_mkwrite +EXPORT_SYMBOL_GPL vmlinux 0xf165c906 __SCK__tp_func_block_rq_insert +EXPORT_SYMBOL_GPL vmlinux 0xf175d9d5 em_dev_register_perf_domain +EXPORT_SYMBOL_GPL vmlinux 0xf17c2a63 handle_fasteoi_nmi +EXPORT_SYMBOL_GPL vmlinux 0xf184aa48 pwmchip_add +EXPORT_SYMBOL_GPL vmlinux 0xf184d189 kernel_power_off +EXPORT_SYMBOL_GPL vmlinux 0xf1854766 blk_mq_unfreeze_queue +EXPORT_SYMBOL_GPL vmlinux 0xf188a662 rhashtable_walk_exit +EXPORT_SYMBOL_GPL vmlinux 0xf194eb96 pci_intx +EXPORT_SYMBOL_GPL vmlinux 0xf1cd8929 kvm_read_and_reset_apf_flags +EXPORT_SYMBOL_GPL vmlinux 0xf1d6e377 battery_hook_register +EXPORT_SYMBOL_GPL vmlinux 0xf1da90bc regulator_disable_deferred +EXPORT_SYMBOL_GPL vmlinux 0xf1df7c84 __acpi_node_get_property_reference +EXPORT_SYMBOL_GPL vmlinux 0xf1ec0c85 debugfs_create_dir +EXPORT_SYMBOL_GPL vmlinux 0xf1ecda92 vcap_set_rule_set_keyset +EXPORT_SYMBOL_GPL vmlinux 0xf1f245ed divider_ro_round_rate_parent +EXPORT_SYMBOL_GPL vmlinux 0xf1ffb44f vcap_rule_set_counter_id +EXPORT_SYMBOL_GPL vmlinux 0xf2032ab3 ipv6_bpf_stub +EXPORT_SYMBOL_GPL vmlinux 0xf203387c trace_array_printk +EXPORT_SYMBOL_GPL vmlinux 0xf21e1f9b disable_percpu_irq +EXPORT_SYMBOL_GPL vmlinux 0xf226e290 sfp_add_phy +EXPORT_SYMBOL_GPL vmlinux 0xf237a3b3 ip6_datagram_connect +EXPORT_SYMBOL_GPL vmlinux 0xf24fab22 ata_dummy_port_ops +EXPORT_SYMBOL_GPL vmlinux 0xf251c947 crypto_unregister_shash +EXPORT_SYMBOL_GPL vmlinux 0xf252ad63 __rio_local_read_config_8 +EXPORT_SYMBOL_GPL vmlinux 0xf2711fc8 edac_device_handle_ce_count +EXPORT_SYMBOL_GPL vmlinux 0xf27d0a7b gnttab_grant_foreign_access_ref +EXPORT_SYMBOL_GPL vmlinux 0xf28404cf devlink_dpipe_header_ipv6 +EXPORT_SYMBOL_GPL vmlinux 0xf28a235b clk_hw_is_enabled +EXPORT_SYMBOL_GPL vmlinux 0xf2967796 ring_buffer_record_on +EXPORT_SYMBOL_GPL vmlinux 0xf29b96cb devm_fwnode_pwm_get +EXPORT_SYMBOL_GPL vmlinux 0xf29ece6f skb_splice_bits +EXPORT_SYMBOL_GPL vmlinux 0xf2a01638 irq_set_chained_handler_and_data +EXPORT_SYMBOL_GPL vmlinux 0xf2b33cb7 memory_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xf2b343f1 crypto_get_default_null_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xf2c1ba8d nvme_set_queue_count +EXPORT_SYMBOL_GPL vmlinux 0xf2c1d20d pci_epf_create +EXPORT_SYMBOL_GPL vmlinux 0xf2c41de2 bpfilter_ops +EXPORT_SYMBOL_GPL vmlinux 0xf2c53d53 pci_write_msi_msg +EXPORT_SYMBOL_GPL vmlinux 0xf2d3536b mbox_chan_txdone +EXPORT_SYMBOL_GPL vmlinux 0xf2f44331 acpi_subsys_poweroff +EXPORT_SYMBOL_GPL vmlinux 0xf2fb3282 extcon_find_edev_by_node +EXPORT_SYMBOL_GPL vmlinux 0xf2fb5af2 sk_set_memalloc +EXPORT_SYMBOL_GPL vmlinux 0xf2fb61bd vprintk_default +EXPORT_SYMBOL_GPL vmlinux 0xf2ff4bc2 serial8250_em485_supported +EXPORT_SYMBOL_GPL vmlinux 0xf30a5502 cpufreq_enable_boost_support +EXPORT_SYMBOL_GPL vmlinux 0xf311e156 key_being_used_for +EXPORT_SYMBOL_GPL vmlinux 0xf31632e0 ezx_pcap_read +EXPORT_SYMBOL_GPL vmlinux 0xf3189f7e __uv_cpu_info +EXPORT_SYMBOL_GPL vmlinux 0xf31b3fd1 workqueue_set_max_active +EXPORT_SYMBOL_GPL vmlinux 0xf31b7631 crypto_shash_tfm_digest +EXPORT_SYMBOL_GPL vmlinux 0xf32bdc5d unregister_xenstore_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf331236f btree_geo32 +EXPORT_SYMBOL_GPL vmlinux 0xf340af06 __tracepoint_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0xf3425112 hte_ts_get +EXPORT_SYMBOL_GPL vmlinux 0xf352023f memory_cgrp_subsys_enabled_key +EXPORT_SYMBOL_GPL vmlinux 0xf3558a5d usb_hcd_link_urb_to_ep +EXPORT_SYMBOL_GPL vmlinux 0xf3589884 get_net_ns_by_pid +EXPORT_SYMBOL_GPL vmlinux 0xf3607d70 perf_event_period +EXPORT_SYMBOL_GPL vmlinux 0xf36149f2 wm8350_reg_unlock +EXPORT_SYMBOL_GPL vmlinux 0xf374c54d strp_check_rcv +EXPORT_SYMBOL_GPL vmlinux 0xf3797506 mpi_ec_deinit +EXPORT_SYMBOL_GPL vmlinux 0xf37e8b42 __reset_control_get +EXPORT_SYMBOL_GPL vmlinux 0xf3808cb1 get_state_synchronize_rcu +EXPORT_SYMBOL_GPL vmlinux 0xf382910e alloc_skb_for_msg +EXPORT_SYMBOL_GPL vmlinux 0xf38c1d7e devm_hwmon_sanitize_name +EXPORT_SYMBOL_GPL vmlinux 0xf395616e i2c_probe_func_quick_read +EXPORT_SYMBOL_GPL vmlinux 0xf3a09fe7 crypto_has_kpp +EXPORT_SYMBOL_GPL vmlinux 0xf3b451ca kdb_poll_funcs +EXPORT_SYMBOL_GPL vmlinux 0xf3b95d79 btree_remove +EXPORT_SYMBOL_GPL vmlinux 0xf3cab17d cpufreq_dbs_governor_limits +EXPORT_SYMBOL_GPL vmlinux 0xf3f35744 da9052_adc_read_temp +EXPORT_SYMBOL_GPL vmlinux 0xf40523c1 __devm_spi_alloc_controller +EXPORT_SYMBOL_GPL vmlinux 0xf421d47e vcap_copy_rule +EXPORT_SYMBOL_GPL vmlinux 0xf4303973 regmap_get_reg_stride +EXPORT_SYMBOL_GPL vmlinux 0xf4347103 rtc_read_alarm +EXPORT_SYMBOL_GPL vmlinux 0xf43ab567 input_ff_flush +EXPORT_SYMBOL_GPL vmlinux 0xf43af1c2 led_set_brightness +EXPORT_SYMBOL_GPL vmlinux 0xf441e673 device_create +EXPORT_SYMBOL_GPL vmlinux 0xf44ba3cc gov_attr_set_get +EXPORT_SYMBOL_GPL vmlinux 0xf44df5eb __SCK__tp_func_pelt_rt_tp +EXPORT_SYMBOL_GPL vmlinux 0xf456e302 raw_v6_match +EXPORT_SYMBOL_GPL vmlinux 0xf458cbe5 crypto_register_scomps +EXPORT_SYMBOL_GPL vmlinux 0xf4689d50 linkmode_set_pause +EXPORT_SYMBOL_GPL vmlinux 0xf46ae26c follow_pte +EXPORT_SYMBOL_GPL vmlinux 0xf46e913e xdp_do_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf47654df irq_check_status_bit +EXPORT_SYMBOL_GPL vmlinux 0xf485b74a adp5520_register_notifier +EXPORT_SYMBOL_GPL vmlinux 0xf4887699 blk_mq_update_nr_hw_queues +EXPORT_SYMBOL_GPL vmlinux 0xf4890915 sysfs_rename_link_ns +EXPORT_SYMBOL_GPL vmlinux 0xf49e0f16 clk_hw_init_rate_request +EXPORT_SYMBOL_GPL vmlinux 0xf4a0e07c crypto_aead_setkey +EXPORT_SYMBOL_GPL vmlinux 0xf4af35c2 rcu_gp_is_normal +EXPORT_SYMBOL_GPL vmlinux 0xf4c0a81b usb_reset_device +EXPORT_SYMBOL_GPL vmlinux 0xf4c481c7 led_get_default_pattern +EXPORT_SYMBOL_GPL vmlinux 0xf4c9620c ata_link_abort +EXPORT_SYMBOL_GPL vmlinux 0xf4cd9f8f reset_control_bulk_release +EXPORT_SYMBOL_GPL vmlinux 0xf4dd89bf uv_get_hubless_system +EXPORT_SYMBOL_GPL vmlinux 0xf50f5015 regulator_get_exclusive +EXPORT_SYMBOL_GPL vmlinux 0xf515895d irq_domain_free_irqs_common +EXPORT_SYMBOL_GPL vmlinux 0xf5350f3c devres_find +EXPORT_SYMBOL_GPL vmlinux 0xf53fe1b2 __traceiter_neigh_event_send_dead +EXPORT_SYMBOL_GPL vmlinux 0xf542d968 pingv6_ops +EXPORT_SYMBOL_GPL vmlinux 0xf544151a __usb_create_hcd +EXPORT_SYMBOL_GPL vmlinux 0xf54b088c bio_end_io_acct_remapped +EXPORT_SYMBOL_GPL vmlinux 0xf54bd49b lcm +EXPORT_SYMBOL_GPL vmlinux 0xf54c09da __SCK__tp_func_mc_event +EXPORT_SYMBOL_GPL vmlinux 0xf54fa0b0 i2c_for_each_dev +EXPORT_SYMBOL_GPL vmlinux 0xf553318d cpuidle_pause_and_lock +EXPORT_SYMBOL_GPL vmlinux 0xf55e1dca gnttab_page_cache_get +EXPORT_SYMBOL_GPL vmlinux 0xf5863f0b dummy_con +EXPORT_SYMBOL_GPL vmlinux 0xf5878cc7 fpstate_clear_xstate_component +EXPORT_SYMBOL_GPL vmlinux 0xf5a02dd3 vfs_cancel_lock +EXPORT_SYMBOL_GPL vmlinux 0xf5a067bf iommu_group_dma_owner_claimed +EXPORT_SYMBOL_GPL vmlinux 0xf5a3ba99 linear_range_values_in_range +EXPORT_SYMBOL_GPL vmlinux 0xf5a691cd invalidate_bh_lrus +EXPORT_SYMBOL_GPL vmlinux 0xf5aca61d blk_crypto_evict_key +EXPORT_SYMBOL_GPL vmlinux 0xf5b52d5c hv_vp_assist_page +EXPORT_SYMBOL_GPL vmlinux 0xf5b7fd3e __irq_domain_add +EXPORT_SYMBOL_GPL vmlinux 0xf5b8d10f filemap_range_has_writeback +EXPORT_SYMBOL_GPL vmlinux 0xf5b99a33 software_node_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xf5d5aa0e spi_sync +EXPORT_SYMBOL_GPL vmlinux 0xf5f214b9 thermal_clear_package_intr_status +EXPORT_SYMBOL_GPL vmlinux 0xf5f370e0 async_schedule_node +EXPORT_SYMBOL_GPL vmlinux 0xf604f534 pci_generic_config_write32 +EXPORT_SYMBOL_GPL vmlinux 0xf6063f22 power_supply_external_power_changed +EXPORT_SYMBOL_GPL vmlinux 0xf61176f3 encrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xf6132089 ipv4_sk_redirect +EXPORT_SYMBOL_GPL vmlinux 0xf615ddf9 blk_mq_end_request_batch +EXPORT_SYMBOL_GPL vmlinux 0xf62571d3 to_nd_desc +EXPORT_SYMBOL_GPL vmlinux 0xf62c5af6 devm_regmap_add_irq_chip_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xf63f003a acpi_gpio_get_io_resource +EXPORT_SYMBOL_GPL vmlinux 0xf64aaa25 alarm_init +EXPORT_SYMBOL_GPL vmlinux 0xf650d1b6 device_set_wakeup_enable +EXPORT_SYMBOL_GPL vmlinux 0xf65322c4 regulator_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf663ee2f pcap_adc_sync +EXPORT_SYMBOL_GPL vmlinux 0xf6735373 pci_msi_prepare +EXPORT_SYMBOL_GPL vmlinux 0xf676a9fc of_phandle_args_to_fwspec +EXPORT_SYMBOL_GPL vmlinux 0xf67d2b24 __clk_determine_rate +EXPORT_SYMBOL_GPL vmlinux 0xf683a3d3 __traceiter_fdb_delete +EXPORT_SYMBOL_GPL vmlinux 0xf69e2c5a __traceiter_neigh_update +EXPORT_SYMBOL_GPL vmlinux 0xf6a28554 region_intersects +EXPORT_SYMBOL_GPL vmlinux 0xf6a50036 folio_invalidate +EXPORT_SYMBOL_GPL vmlinux 0xf6b2a01e __irq_domain_alloc_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xf6c71a25 cper_severity_str +EXPORT_SYMBOL_GPL vmlinux 0xf6c8dc62 cpu_hotplug_enable +EXPORT_SYMBOL_GPL vmlinux 0xf6db8ec0 __vfs_setxattr_locked +EXPORT_SYMBOL_GPL vmlinux 0xf6e874f5 ata_timing_merge +EXPORT_SYMBOL_GPL vmlinux 0xf6eef732 __pci_epc_create +EXPORT_SYMBOL_GPL vmlinux 0xf711f4dc __udp_gso_segment +EXPORT_SYMBOL_GPL vmlinux 0xf712c386 ata_ehi_push_desc +EXPORT_SYMBOL_GPL vmlinux 0xf7145dc4 drop_reasons_unregister_subsys +EXPORT_SYMBOL_GPL vmlinux 0xf71e9141 component_unbind_all +EXPORT_SYMBOL_GPL vmlinux 0xf72a65ea tty_get_char_size +EXPORT_SYMBOL_GPL vmlinux 0xf72a7805 raw_seq_start +EXPORT_SYMBOL_GPL vmlinux 0xf73eb6de pinctrl_select_default_state +EXPORT_SYMBOL_GPL vmlinux 0xf73eba9e device_get_phy_mode +EXPORT_SYMBOL_GPL vmlinux 0xf7455c16 input_event_to_user +EXPORT_SYMBOL_GPL vmlinux 0xf749debc md5_zero_message_hash +EXPORT_SYMBOL_GPL vmlinux 0xf74ac337 bio_add_zone_append_page +EXPORT_SYMBOL_GPL vmlinux 0xf74bb274 mod_delayed_work_on +EXPORT_SYMBOL_GPL vmlinux 0xf74ca2e5 devm_rtc_nvmem_register +EXPORT_SYMBOL_GPL vmlinux 0xf74e7c93 jump_label_rate_limit +EXPORT_SYMBOL_GPL vmlinux 0xf76414b3 direct_write_fallback +EXPORT_SYMBOL_GPL vmlinux 0xf765b4e5 dma_resv_test_signaled +EXPORT_SYMBOL_GPL vmlinux 0xf767ca35 fixed_percpu_data +EXPORT_SYMBOL_GPL vmlinux 0xf774a83e inet_ehash_nolisten +EXPORT_SYMBOL_GPL vmlinux 0xf7772bde xas_init_marks +EXPORT_SYMBOL_GPL vmlinux 0xf77bff87 sbitmap_queue_show +EXPORT_SYMBOL_GPL vmlinux 0xf782fb07 percpu_ref_switch_to_atomic_sync +EXPORT_SYMBOL_GPL vmlinux 0xf7857111 platform_device_register_full +EXPORT_SYMBOL_GPL vmlinux 0xf7866b4f bind_evtchn_to_irqhandler_lateeoi +EXPORT_SYMBOL_GPL vmlinux 0xf7914474 devm_request_pci_bus_resources +EXPORT_SYMBOL_GPL vmlinux 0xf79c7bcd irq_chip_enable_parent +EXPORT_SYMBOL_GPL vmlinux 0xf79e908d adp5520_write +EXPORT_SYMBOL_GPL vmlinux 0xf7a49045 __traceiter_devlink_trap_report +EXPORT_SYMBOL_GPL vmlinux 0xf7a82900 acpi_dma_simple_xlate +EXPORT_SYMBOL_GPL vmlinux 0xf7afb369 btree_init +EXPORT_SYMBOL_GPL vmlinux 0xf7bc95b0 devlink_fmsg_pair_nest_start +EXPORT_SYMBOL_GPL vmlinux 0xf7c3f273 xen_resume_notifier_register +EXPORT_SYMBOL_GPL vmlinux 0xf7c7b208 rcu_trc_cmpxchg_need_qs +EXPORT_SYMBOL_GPL vmlinux 0xf7cda565 hwspin_lock_unregister +EXPORT_SYMBOL_GPL vmlinux 0xf7cfc128 sk_detach_filter +EXPORT_SYMBOL_GPL vmlinux 0xf7fae124 acpi_gpiochip_request_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xf8063013 __regmap_init_i2c +EXPORT_SYMBOL_GPL vmlinux 0xf80cc5f7 gpiochip_irqchip_irq_valid +EXPORT_SYMBOL_GPL vmlinux 0xf8159f2b rt_mutex_lock +EXPORT_SYMBOL_GPL vmlinux 0xf817ced3 regulator_list_voltage +EXPORT_SYMBOL_GPL vmlinux 0xf81c26e6 lwtunnel_fill_encap +EXPORT_SYMBOL_GPL vmlinux 0xf81dce70 thermal_genl_cpu_capability_event +EXPORT_SYMBOL_GPL vmlinux 0xf81ee9f5 netlink_has_listeners +EXPORT_SYMBOL_GPL vmlinux 0xf8231c8a badblocks_clear +EXPORT_SYMBOL_GPL vmlinux 0xf8253576 sock_gen_put +EXPORT_SYMBOL_GPL vmlinux 0xf825d45e tcp_register_congestion_control +EXPORT_SYMBOL_GPL vmlinux 0xf82f3657 work_on_cpu +EXPORT_SYMBOL_GPL vmlinux 0xf8345e39 xhci_find_slot_id_by_port +EXPORT_SYMBOL_GPL vmlinux 0xf83aac84 __traceiter_neigh_update_done +EXPORT_SYMBOL_GPL vmlinux 0xf840ea85 blkcg_root_css +EXPORT_SYMBOL_GPL vmlinux 0xf8540d8c sbitmap_any_bit_set +EXPORT_SYMBOL_GPL vmlinux 0xf856a967 regulator_bulk_unregister_supply_alias +EXPORT_SYMBOL_GPL vmlinux 0xf857367c __traceiter_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xf85af929 pci_epc_write_header +EXPORT_SYMBOL_GPL vmlinux 0xf85ea443 perf_get_aux +EXPORT_SYMBOL_GPL vmlinux 0xf866a783 raw_hash_sk +EXPORT_SYMBOL_GPL vmlinux 0xf86cdf96 dev_nit_active +EXPORT_SYMBOL_GPL vmlinux 0xf8776ebb da9052_regmap_config +EXPORT_SYMBOL_GPL vmlinux 0xf87a696b pci_epc_init_notify +EXPORT_SYMBOL_GPL vmlinux 0xf87dd816 __pm_runtime_set_status +EXPORT_SYMBOL_GPL vmlinux 0xf881cecd load_fixmap_gdt +EXPORT_SYMBOL_GPL vmlinux 0xf883bf93 crypto_dh_key_len +EXPORT_SYMBOL_GPL vmlinux 0xf8a2b062 xenbus_probe_node +EXPORT_SYMBOL_GPL vmlinux 0xf8a6e350 usb_debug_root +EXPORT_SYMBOL_GPL vmlinux 0xf8a8bdd2 bpf_trace_run6 +EXPORT_SYMBOL_GPL vmlinux 0xf8a933fc crypto_grab_skcipher +EXPORT_SYMBOL_GPL vmlinux 0xf8bc0beb clear_node_memory_type +EXPORT_SYMBOL_GPL vmlinux 0xf8ce4119 cpci_hp_register_controller +EXPORT_SYMBOL_GPL vmlinux 0xf8d68e4e __traceiter_devlink_hwerr +EXPORT_SYMBOL_GPL vmlinux 0xf8d7c745 vcap_lookup_rule_by_cookie +EXPORT_SYMBOL_GPL vmlinux 0xf8f3a0fb ata_ratelimit +EXPORT_SYMBOL_GPL vmlinux 0xf8fe3986 pat_pfn_immune_to_uc_mtrr +EXPORT_SYMBOL_GPL vmlinux 0xf903b9cf tun_get_tx_ring +EXPORT_SYMBOL_GPL vmlinux 0xf9072204 regmap_check_range_table +EXPORT_SYMBOL_GPL vmlinux 0xf90f01e7 cleanup_srcu_struct +EXPORT_SYMBOL_GPL vmlinux 0xf9101c9b __rio_local_write_config_32 +EXPORT_SYMBOL_GPL vmlinux 0xf92f49e4 blk_mq_unquiesce_queue +EXPORT_SYMBOL_GPL vmlinux 0xf949990f pci_device_group +EXPORT_SYMBOL_GPL vmlinux 0xf95322f4 kthread_parkme +EXPORT_SYMBOL_GPL vmlinux 0xf95500d5 vcap_enable_lookups +EXPORT_SYMBOL_GPL vmlinux 0xf955e9c5 bprintf +EXPORT_SYMBOL_GPL vmlinux 0xf97de8f3 sched_setattr_nocheck +EXPORT_SYMBOL_GPL vmlinux 0xf98e724c regmap_field_test_bits +EXPORT_SYMBOL_GPL vmlinux 0xf99cee25 __traceiter_block_rq_remap +EXPORT_SYMBOL_GPL vmlinux 0xf9a054b5 __round_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xf9b34a0b iopf_queue_free +EXPORT_SYMBOL_GPL vmlinux 0xf9d3cb34 clone_private_mount +EXPORT_SYMBOL_GPL vmlinux 0xf9d82bb1 dev_pm_opp_get_suspend_opp_freq +EXPORT_SYMBOL_GPL vmlinux 0xf9e91ce8 pci_reset_function +EXPORT_SYMBOL_GPL vmlinux 0xf9ea3f7a bpf_trace_run2 +EXPORT_SYMBOL_GPL vmlinux 0xf9ef9569 spi_async +EXPORT_SYMBOL_GPL vmlinux 0xf9f12a22 __SCK__tp_func_sched_overutilized_tp +EXPORT_SYMBOL_GPL vmlinux 0xfa0c9826 serial8250_em485_stop_tx +EXPORT_SYMBOL_GPL vmlinux 0xfa1eb910 unregister_syscore_ops +EXPORT_SYMBOL_GPL vmlinux 0xfa20488d tcp_parse_mss_option +EXPORT_SYMBOL_GPL vmlinux 0xfa224b96 ip6_push_pending_frames +EXPORT_SYMBOL_GPL vmlinux 0xfa2e76d7 nvme_auth_stop +EXPORT_SYMBOL_GPL vmlinux 0xfa349688 aer_recover_queue +EXPORT_SYMBOL_GPL vmlinux 0xfa35044a alternatives_patched +EXPORT_SYMBOL_GPL vmlinux 0xfa38870a clk_register +EXPORT_SYMBOL_GPL vmlinux 0xfa43cefc is_hash_blacklisted +EXPORT_SYMBOL_GPL vmlinux 0xfa4f3ddc fuse_init_fs_context_submount +EXPORT_SYMBOL_GPL vmlinux 0xfa4fa497 __crypto_alloc_tfm +EXPORT_SYMBOL_GPL vmlinux 0xfa56b695 tty_init_termios +EXPORT_SYMBOL_GPL vmlinux 0xfa57d7a9 regulator_is_supported_voltage +EXPORT_SYMBOL_GPL vmlinux 0xfa666974 queue_work_node +EXPORT_SYMBOL_GPL vmlinux 0xfa66f705 __clk_get_hw +EXPORT_SYMBOL_GPL vmlinux 0xfa79bbda balloon_page_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfa7b36c4 __clk_hw_register_fixed_rate +EXPORT_SYMBOL_GPL vmlinux 0xfa98c92d of_devfreq_cooling_register +EXPORT_SYMBOL_GPL vmlinux 0xfaa54b29 irq_chip_retrigger_hierarchy +EXPORT_SYMBOL_GPL vmlinux 0xfaa9b711 crypto_register_algs +EXPORT_SYMBOL_GPL vmlinux 0xfaaf8621 power_supply_battery_bti_in_range +EXPORT_SYMBOL_GPL vmlinux 0xfab30dc0 mdio_bus_exit +EXPORT_SYMBOL_GPL vmlinux 0xfab52fab hv_set_register +EXPORT_SYMBOL_GPL vmlinux 0xfab53ed9 pinctrl_gpio_can_use_line +EXPORT_SYMBOL_GPL vmlinux 0xfab5d35d cpu_device_create +EXPORT_SYMBOL_GPL vmlinux 0xfab77f16 usb_urb_ep_type_check +EXPORT_SYMBOL_GPL vmlinux 0xfab869c1 mptcp_token_get_sock +EXPORT_SYMBOL_GPL vmlinux 0xfac0ca11 bsg_remove_queue +EXPORT_SYMBOL_GPL vmlinux 0xfad8f9d9 get_dev_pagemap +EXPORT_SYMBOL_GPL vmlinux 0xfad9c827 kill_dax +EXPORT_SYMBOL_GPL vmlinux 0xfadea21c p2sb_bar +EXPORT_SYMBOL_GPL vmlinux 0xfaea5bb0 acpi_dev_ready_for_enumeration +EXPORT_SYMBOL_GPL vmlinux 0xfaec800b ata_pci_remove_one +EXPORT_SYMBOL_GPL vmlinux 0xfafcdd02 pci_generic_config_write +EXPORT_SYMBOL_GPL vmlinux 0xfb07f680 agp_add_bridge +EXPORT_SYMBOL_GPL vmlinux 0xfb190a86 request_firmware_direct +EXPORT_SYMBOL_GPL vmlinux 0xfb1df559 tcp_bpf_sendmsg_redir +EXPORT_SYMBOL_GPL vmlinux 0xfb2f9f3a __netif_set_xps_queue +EXPORT_SYMBOL_GPL vmlinux 0xfb32b30f ring_buffer_read_prepare_sync +EXPORT_SYMBOL_GPL vmlinux 0xfb35890a x509_cert_parse +EXPORT_SYMBOL_GPL vmlinux 0xfb3aa750 devm_rtc_allocate_device +EXPORT_SYMBOL_GPL vmlinux 0xfb4cd197 switchdev_port_obj_del +EXPORT_SYMBOL_GPL vmlinux 0xfb4f2c42 sata_link_debounce +EXPORT_SYMBOL_GPL vmlinux 0xfb60faf5 posix_acl_clone +EXPORT_SYMBOL_GPL vmlinux 0xfb6eedf9 power_group_name +EXPORT_SYMBOL_GPL vmlinux 0xfb746b1a iomap_get_folio +EXPORT_SYMBOL_GPL vmlinux 0xfb74e910 proc_douintvec_minmax +EXPORT_SYMBOL_GPL vmlinux 0xfb830233 smpboot_register_percpu_thread +EXPORT_SYMBOL_GPL vmlinux 0xfb834677 acpi_cppc_processor_exit +EXPORT_SYMBOL_GPL vmlinux 0xfb89717a device_remove_file_self +EXPORT_SYMBOL_GPL vmlinux 0xfb9e80d6 rio_release_outb_dbell +EXPORT_SYMBOL_GPL vmlinux 0xfb9fc975 vcap_find_keystream_keysets +EXPORT_SYMBOL_GPL vmlinux 0xfbb59fdb platform_get_mem_or_io +EXPORT_SYMBOL_GPL vmlinux 0xfbbd41ca no_action +EXPORT_SYMBOL_GPL vmlinux 0xfbcc63b8 sdio_retune_crc_enable +EXPORT_SYMBOL_GPL vmlinux 0xfbcf9cfa devm_hwspin_lock_request +EXPORT_SYMBOL_GPL vmlinux 0xfbd31a2d fuse_request_end +EXPORT_SYMBOL_GPL vmlinux 0xfbd50a00 device_create_file +EXPORT_SYMBOL_GPL vmlinux 0xfbdc9a64 regmap_add_irq_chip_fwnode +EXPORT_SYMBOL_GPL vmlinux 0xfbde4e1b tcp_set_keepalive +EXPORT_SYMBOL_GPL vmlinux 0xfbdfadd6 cgroup_get_from_id +EXPORT_SYMBOL_GPL vmlinux 0xfbffd601 net_prio_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xfc03d97a page_is_ram +EXPORT_SYMBOL_GPL vmlinux 0xfc0f5c40 decrypt_blob +EXPORT_SYMBOL_GPL vmlinux 0xfc201b66 sprint_oid +EXPORT_SYMBOL_GPL vmlinux 0xfc254d15 gnttab_free_auto_xlat_frames +EXPORT_SYMBOL_GPL vmlinux 0xfc315ca2 tdx_cpu_enable +EXPORT_SYMBOL_GPL vmlinux 0xfc3b4246 acpi_bus_update_power +EXPORT_SYMBOL_GPL vmlinux 0xfc497b40 devl_lock +EXPORT_SYMBOL_GPL vmlinux 0xfc4df8cb genphy_c45_pma_baset1_read_master_slave +EXPORT_SYMBOL_GPL vmlinux 0xfc4e5fc0 __SCK__tp_func_powernv_throttle +EXPORT_SYMBOL_GPL vmlinux 0xfc5957a9 debugfs_create_u16 +EXPORT_SYMBOL_GPL vmlinux 0xfc792ee2 clk_hw_round_rate +EXPORT_SYMBOL_GPL vmlinux 0xfc82f8e5 vfs_test_lock +EXPORT_SYMBOL_GPL vmlinux 0xfc98c8dc xen_percpu_upcall +EXPORT_SYMBOL_GPL vmlinux 0xfc9fabe6 dev_pm_opp_set_sharing_cpus +EXPORT_SYMBOL_GPL vmlinux 0xfca03181 regulator_irq_helper +EXPORT_SYMBOL_GPL vmlinux 0xfca77270 dev_pm_domain_set +EXPORT_SYMBOL_GPL vmlinux 0xfcadfcea __srcu_read_lock +EXPORT_SYMBOL_GPL vmlinux 0xfcbf384f __SCK__tp_func_br_mdb_full +EXPORT_SYMBOL_GPL vmlinux 0xfcbfec70 add_memory_driver_managed +EXPORT_SYMBOL_GPL vmlinux 0xfcc04718 pci_rescan_bus +EXPORT_SYMBOL_GPL vmlinux 0xfcc1edd3 memory_block_size_bytes +EXPORT_SYMBOL_GPL vmlinux 0xfcc45eb0 skb_morph +EXPORT_SYMBOL_GPL vmlinux 0xfcca5424 register_kprobe +EXPORT_SYMBOL_GPL vmlinux 0xfcda4e5a xfrm_output_resume +EXPORT_SYMBOL_GPL vmlinux 0xfcde9b66 mbox_client_peek_data +EXPORT_SYMBOL_GPL vmlinux 0xfce18b20 strp_done +EXPORT_SYMBOL_GPL vmlinux 0xfce7da2b crypto_akcipher_sync_decrypt +EXPORT_SYMBOL_GPL vmlinux 0xfcf9ef73 hw_protection_shutdown +EXPORT_SYMBOL_GPL vmlinux 0xfd00e738 pstore_register +EXPORT_SYMBOL_GPL vmlinux 0xfd07189b lwtunnel_encap_add_ops +EXPORT_SYMBOL_GPL vmlinux 0xfd07a94a ata_host_alloc +EXPORT_SYMBOL_GPL vmlinux 0xfd182bc6 dma_vmap_noncontiguous +EXPORT_SYMBOL_GPL vmlinux 0xfd22630a debugfs_file_put +EXPORT_SYMBOL_GPL vmlinux 0xfd232780 pci_epc_linkdown +EXPORT_SYMBOL_GPL vmlinux 0xfd4eb4cb phy_set_media +EXPORT_SYMBOL_GPL vmlinux 0xfd54b86a devm_regmap_field_free +EXPORT_SYMBOL_GPL vmlinux 0xfd7243c7 erst_disable +EXPORT_SYMBOL_GPL vmlinux 0xfd756bfc devm_gpiod_unhinge +EXPORT_SYMBOL_GPL vmlinux 0xfd77e268 register_sys_off_handler +EXPORT_SYMBOL_GPL vmlinux 0xfd9da548 pci_check_and_unmask_intx +EXPORT_SYMBOL_GPL vmlinux 0xfd9df1ef ima_inode_hash +EXPORT_SYMBOL_GPL vmlinux 0xfdbd7a17 crypto_get_attr_type +EXPORT_SYMBOL_GPL vmlinux 0xfdbf31c8 fuse_conn_put +EXPORT_SYMBOL_GPL vmlinux 0xfdc62d6e kobject_init_and_add +EXPORT_SYMBOL_GPL vmlinux 0xfdd6d4fd fwnode_property_read_u64_array +EXPORT_SYMBOL_GPL vmlinux 0xfdea2d04 alarm_cancel +EXPORT_SYMBOL_GPL vmlinux 0xfe02c037 pm_genpd_add_device +EXPORT_SYMBOL_GPL vmlinux 0xfe089412 vp_legacy_probe +EXPORT_SYMBOL_GPL vmlinux 0xfe0e7cd3 apei_exec_post_unmap_gars +EXPORT_SYMBOL_GPL vmlinux 0xfe19dc28 vivaldi_function_row_physmap_show +EXPORT_SYMBOL_GPL vmlinux 0xfe1a7a7b mpi_point_release +EXPORT_SYMBOL_GPL vmlinux 0xfe1b2f45 ring_buffer_unlock_commit +EXPORT_SYMBOL_GPL vmlinux 0xfe1dffda relay_late_setup_files +EXPORT_SYMBOL_GPL vmlinux 0xfe28961e usb_acpi_port_lpm_incapable +EXPORT_SYMBOL_GPL vmlinux 0xfe3a6de3 alarm_try_to_cancel +EXPORT_SYMBOL_GPL vmlinux 0xfe3cd3a2 scsi_mode_select +EXPORT_SYMBOL_GPL vmlinux 0xfe3ded48 tty_buffer_request_room +EXPORT_SYMBOL_GPL vmlinux 0xfe3ef2e0 uart_set_options +EXPORT_SYMBOL_GPL vmlinux 0xfe3fc995 misc_cg_try_charge +EXPORT_SYMBOL_GPL vmlinux 0xfe476039 ktime_get_resolution_ns +EXPORT_SYMBOL_GPL vmlinux 0xfe5a122c pci_get_dsn +EXPORT_SYMBOL_GPL vmlinux 0xfe5f53d1 tpm_pcr_read +EXPORT_SYMBOL_GPL vmlinux 0xfe693f02 srcu_notifier_chain_unregister +EXPORT_SYMBOL_GPL vmlinux 0xfe727411 get_phys_to_machine +EXPORT_SYMBOL_GPL vmlinux 0xfe8b890e blk_crypto_reprogram_all_keys +EXPORT_SYMBOL_GPL vmlinux 0xfe8cdb84 ring_buffer_alloc_read_page +EXPORT_SYMBOL_GPL vmlinux 0xfe990052 gpio_free +EXPORT_SYMBOL_GPL vmlinux 0xfec994b7 edac_mc_find_csrow_by_page +EXPORT_SYMBOL_GPL vmlinux 0xfec9f628 genphy_c45_fast_retrain +EXPORT_SYMBOL_GPL vmlinux 0xfed11ed1 usb_mon_deregister +EXPORT_SYMBOL_GPL vmlinux 0xfed1edc3 acpi_quirk_skip_i2c_client_enumeration +EXPORT_SYMBOL_GPL vmlinux 0xfee3a74c pm_schedule_suspend +EXPORT_SYMBOL_GPL vmlinux 0xfee69cba blkg_rwstat_recursive_sum +EXPORT_SYMBOL_GPL vmlinux 0xfeea35d0 gnttab_foreach_grant_in_range +EXPORT_SYMBOL_GPL vmlinux 0xfeeb4c1f gnttab_dma_free_pages +EXPORT_SYMBOL_GPL vmlinux 0xfeec3489 pkcs7_parse_message +EXPORT_SYMBOL_GPL vmlinux 0xfeeecd05 apei_read +EXPORT_SYMBOL_GPL vmlinux 0xfefc0a0f dsa_stubs +EXPORT_SYMBOL_GPL vmlinux 0xff052117 acpi_gpiochip_free_interrupts +EXPORT_SYMBOL_GPL vmlinux 0xff059ae5 kernel_read_file +EXPORT_SYMBOL_GPL vmlinux 0xff05fa13 vring_interrupt +EXPORT_SYMBOL_GPL vmlinux 0xff089412 iommu_attach_device +EXPORT_SYMBOL_GPL vmlinux 0xff0f657c acct_bioset_init +EXPORT_SYMBOL_GPL vmlinux 0xff1666f3 reset_control_bulk_assert +EXPORT_SYMBOL_GPL vmlinux 0xff1e67b9 setup_APIC_eilvt +EXPORT_SYMBOL_GPL vmlinux 0xff291ecf clk_unregister_divider +EXPORT_SYMBOL_GPL vmlinux 0xff30b1cf _proc_mkdir +EXPORT_SYMBOL_GPL vmlinux 0xff332db8 phy_remove_lookup +EXPORT_SYMBOL_GPL vmlinux 0xff34b0a9 perf_event_pause +EXPORT_SYMBOL_GPL vmlinux 0xff370732 ata_std_qc_defer +EXPORT_SYMBOL_GPL vmlinux 0xff42c374 usb_role_switch_get_role +EXPORT_SYMBOL_GPL vmlinux 0xff537417 iomap_file_buffered_write_punch_delalloc +EXPORT_SYMBOL_GPL vmlinux 0xff6e45e1 regcache_sync_region +EXPORT_SYMBOL_GPL vmlinux 0xff7e33bf mpi_sub_ui +EXPORT_SYMBOL_GPL vmlinux 0xff7fc364 anon_transport_class_unregister +EXPORT_SYMBOL_GPL vmlinux 0xff81487d gpiod_remove_lookup_table +EXPORT_SYMBOL_GPL vmlinux 0xff84a8a5 page_reporting_order +EXPORT_SYMBOL_GPL vmlinux 0xff8e74e2 arch_haltpoll_enable +EXPORT_SYMBOL_GPL vmlinux 0xff90f32a debugfs_read_file_bool +EXPORT_SYMBOL_GPL vmlinux 0xff9e23d1 hugetlb_cgrp_subsys_on_dfl_key +EXPORT_SYMBOL_GPL vmlinux 0xffa69730 ata_sas_port_resume +EXPORT_SYMBOL_GPL vmlinux 0xffae8e8b nsecs_to_jiffies +EXPORT_SYMBOL_GPL vmlinux 0xffbdb210 hwspin_lock_request_specific +EXPORT_SYMBOL_GPL vmlinux 0xffbfda7a nvme_auth_gen_shared_secret +EXPORT_SYMBOL_GPL vmlinux 0xffc86f14 __xas_next +EXPORT_SYMBOL_GPL vmlinux 0xffccc3d3 __SCK__tp_func_unmap +EXPORT_SYMBOL_GPL vmlinux 0xffd33469 thermal_acpi_passive_trip_temp +EXPORT_SYMBOL_GPL vmlinux 0xffea3dfc perf_aux_output_begin +EXPORT_SYMBOL_GPL vmlinux 0xffeec10f __clocksource_register_scale +EXPORT_SYMBOL_GPL vmlinux 0xfff776d2 pm_clk_add +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0x07342898 unregister_firmware_config_sysctl vmlinux +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xae43feea register_firmware_config_sysctl vmlinux +FIRMWARE_LOADER_PRIVATE EXPORT_SYMBOL_GPL 0xd3ae7756 fw_fallback_config vmlinux +GPIO_TANGIER EXPORT_SYMBOL_GPL 0x12d92138 tng_gpio_suspend drivers/gpio/gpio-tangier +GPIO_TANGIER EXPORT_SYMBOL_GPL 0x3353630f devm_tng_gpio_probe drivers/gpio/gpio-tangier +GPIO_TANGIER EXPORT_SYMBOL_GPL 0x4c7a1f3d tng_gpio_resume drivers/gpio/gpio-tangier +HWMON_THERMAL EXPORT_SYMBOL_GPL 0xe5502ef3 hwmon_device_register_for_thermal vmlinux +I8255 EXPORT_SYMBOL_GPL 0xbec2b21d devm_i8255_regmap_register drivers/gpio/gpio-i8255 +I915_GVT EXPORT_SYMBOL_GPL 0x0234ce57 _i915_vma_move_to_active drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x09b252e3 intel_uncore_forcewake_put drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x09e15ceb shmem_unpin_map drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x0a6fd06b i915_gem_ww_ctx_fini drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x11d1c2c8 i915_gem_object_alloc drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x1e39a280 intel_runtime_pm_put_unchecked drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x2080216c __intel_context_do_pin drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x223f14cf intel_gvt_iterate_mmio_table drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x2c60bd4b __intel_context_do_unpin drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x2d9c5908 i915_gem_ww_ctx_init drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x38b91c5b i915_fence_ops drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x3ac2bf37 __px_dma drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x3ce56341 i915_request_wait drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x3f5fe15f i915_gem_object_create_shmem drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x42e954b4 intel_gvt_clear_ops drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x4b07b7d0 intel_runtime_pm_get drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x4cceeae7 i915_gem_ww_ctx_backoff drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x515e7f0e i915_request_create drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x55bf94ef i915_gem_object_set_to_cpu_domain drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x7e15f7ea i915_gem_prime_export drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x890fc889 i915_vm_release drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x8f75876a intel_uncore_forcewake_get drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x911a4fde intel_gvt_set_ops drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x93428ca1 intel_uncore_forcewake_for_reg drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x962f9890 shmem_pin_map drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0x9f8a5dd2 i915_gem_gtt_insert drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xa0535078 intel_ring_begin drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xc59fbf12 __i915_gem_object_set_pages drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xc5c6455c i915_unreserve_fence drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xcb9bcd0c __i915_gem_object_flush_map drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xcf561720 i915_gem_object_ggtt_pin_ww drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xd8f3b1d7 i915_ppgtt_create drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xdb242eac i915_request_add drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xdbc59721 i915_gem_object_init drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xdbd10728 i915_gem_object_pin_map drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xeaaf2d8d i915_reserve_fence drivers/gpu/drm/i915/i915 +I915_GVT EXPORT_SYMBOL_GPL 0xfef9bd5b intel_context_create drivers/gpu/drm/i915/i915 +IDLE_INJECT EXPORT_SYMBOL_GPL 0x5b3a2cd6 idle_inject_start vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0x60b2e814 idle_inject_register vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0x85c2b7eb idle_inject_stop vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0x95e93783 idle_inject_set_latency vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0xa66c1ea7 idle_inject_register_full vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0xc18575af idle_inject_set_duration vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0xe9cbcfd0 idle_inject_get_duration vmlinux +IDLE_INJECT EXPORT_SYMBOL_GPL 0xf0e96547 idle_inject_unregister vmlinux +IDXD EXPORT_SYMBOL_GPL 0x6a43be64 idxd_drv drivers/dma/idxd/idxd +IDXD EXPORT_SYMBOL_GPL 0x9c58b579 __idxd_driver_register drivers/dma/idxd/idxd_bus +IDXD EXPORT_SYMBOL_GPL 0xdf5d7340 idxd_dmaengine_drv drivers/dma/idxd/idxd +IDXD EXPORT_SYMBOL_GPL 0xe2e69563 idxd_user_drv drivers/dma/idxd/idxd +IDXD EXPORT_SYMBOL_GPL 0xe5e7d50e dsa_bus_type drivers/dma/idxd/idxd_bus +IDXD EXPORT_SYMBOL_GPL 0xf496c182 idxd_driver_unregister drivers/dma/idxd/idxd_bus +IIO_AD5592R EXPORT_SYMBOL_GPL 0x18e49a85 ad5592r_remove drivers/iio/dac/ad5592r-base +IIO_AD5592R EXPORT_SYMBOL_GPL 0xfe0ef28f ad5592r_probe drivers/iio/dac/ad5592r-base +IIO_AD5686 EXPORT_SYMBOL_GPL 0x20f64b97 ad5686_remove drivers/iio/dac/ad5686 +IIO_AD5686 EXPORT_SYMBOL_GPL 0x9dd13384 ad5686_probe drivers/iio/dac/ad5686 +IIO_AD7091R EXPORT_SYMBOL_GPL 0xb6e0f30e ad7091r_regmap_config drivers/iio/adc/ad7091r-base +IIO_AD7091R EXPORT_SYMBOL_GPL 0xceb0bfe7 ad7091r_probe drivers/iio/adc/ad7091r-base +IIO_AD7606 EXPORT_SYMBOL_GPL 0x2b0ad2e5 ad7606_probe drivers/iio/adc/ad7606 +IIO_AD7606 EXPORT_SYMBOL_GPL 0xfc624bb7 ad7606_pm_ops drivers/iio/adc/ad7606 +IIO_ADISLIB EXPORT_SYMBOL 0xc9522b23 adis_debugfs_reg_access drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL 0xe1c3d7b1 __adis_enable_irq drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x18be4eda __adis_read_reg drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x25a00113 __adis_write_reg drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x29f32a5a __adis_check_status drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x418601e4 __adis_initial_startup drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x4de5f818 adis_init drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x56c36187 devm_adis_probe_trigger drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x79c6c861 adis_single_conversion drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0x9577b922 adis_update_scan_mode drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0xbdc9568c __adis_update_bits_base drivers/iio/imu/adis_lib +IIO_ADISLIB EXPORT_SYMBOL_GPL 0xf577e129 devm_adis_setup_buffer_and_trigger drivers/iio/imu/adis_lib +IIO_ADIS_LIB EXPORT_SYMBOL_GPL 0xe4b43c82 __adis_reset drivers/iio/imu/adis_lib +IIO_ADXL313 EXPORT_SYMBOL_GPL 0x276e2669 adxl313_core_probe drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0x75f0d4ad adxl31x_chip_info drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0x8401eedc adxl313_readable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0x93298a1c adxl312_readable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0x932e87b3 adxl314_writable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0xe1d8d09c adxl314_readable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0xe1dfdd33 adxl312_writable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL313 EXPORT_SYMBOL_GPL 0xf6f7b9f3 adxl313_writable_regs_table drivers/iio/accel/adxl313_core +IIO_ADXL355 EXPORT_SYMBOL_GPL 0x4d2f5e0f adxl35x_chip_info drivers/iio/accel/adxl355_core +IIO_ADXL355 EXPORT_SYMBOL_GPL 0x6ff5403b adxl355_readable_regs_tbl drivers/iio/accel/adxl355_core +IIO_ADXL355 EXPORT_SYMBOL_GPL 0x87fcdbd5 adxl355_core_probe drivers/iio/accel/adxl355_core +IIO_ADXL355 EXPORT_SYMBOL_GPL 0xb446fa86 adxl355_writeable_regs_tbl drivers/iio/accel/adxl355_core +IIO_ADXL367 EXPORT_SYMBOL_GPL 0xfa75a300 adxl367_probe drivers/iio/accel/adxl367 +IIO_ADXL372 EXPORT_SYMBOL_GPL 0x21494cfd adxl372_probe drivers/iio/accel/adxl372 +IIO_ADXL372 EXPORT_SYMBOL_GPL 0x3020c442 adxl372_readable_noinc_reg drivers/iio/accel/adxl372 +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x124e5188 devm_ad_sd_setup_buffer_and_trigger drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x3175a871 ad_sd_write_reg drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x376a3cde ad_sigma_delta_single_conversion drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x63d2225e ad_sd_set_comm drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x695c97ee ad_sd_validate_trigger drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x7cfc5a42 ad_sd_read_reg drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x8bcbdfce ad_sd_calibrate_all drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0x987acb19 ad_sd_init drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0xb47e4721 ad_sd_calibrate drivers/iio/adc/ad_sigma_delta +IIO_AD_SIGMA_DELTA EXPORT_SYMBOL_GPL 0xe6fa85de ad_sd_reset drivers/iio/adc/ad_sigma_delta +IIO_BMA400 EXPORT_SYMBOL 0x5b5fcf2d bma400_probe drivers/iio/accel/bma400_core +IIO_BMA400 EXPORT_SYMBOL 0xd8206619 bma400_regmap_config drivers/iio/accel/bma400_core +IIO_BMC150 EXPORT_SYMBOL_GPL 0x04f65743 bmc150_accel_pm_ops drivers/iio/accel/bmc150-accel-core +IIO_BMC150 EXPORT_SYMBOL_GPL 0x52846a77 bmc150_accel_core_probe drivers/iio/accel/bmc150-accel-core +IIO_BMC150 EXPORT_SYMBOL_GPL 0x82392fe5 bmc150_regmap_conf drivers/iio/accel/bmc150-accel-core +IIO_BMC150 EXPORT_SYMBOL_GPL 0x901af13e bmc150_accel_core_remove drivers/iio/accel/bmc150-accel-core +IIO_BMC150_MAGN EXPORT_SYMBOL 0x02f3f981 bmc150_magn_remove drivers/iio/magnetometer/bmc150_magn +IIO_BMC150_MAGN EXPORT_SYMBOL 0x73e2bbad bmc150_magn_regmap_config drivers/iio/magnetometer/bmc150_magn +IIO_BMC150_MAGN EXPORT_SYMBOL 0x9cc3444e bmc150_magn_pm_ops drivers/iio/magnetometer/bmc150_magn +IIO_BMC150_MAGN EXPORT_SYMBOL 0xfe959878 bmc150_magn_probe drivers/iio/magnetometer/bmc150_magn +IIO_BME680 EXPORT_SYMBOL 0x50fea474 bme680_regmap_config drivers/iio/chemical/bme680_core +IIO_BME680 EXPORT_SYMBOL_GPL 0x80a44dbd bme680_core_probe drivers/iio/chemical/bme680_core +IIO_BMI088 EXPORT_SYMBOL_GPL 0x0f5d09bd bmi088_accel_core_probe drivers/iio/accel/bmi088-accel-core +IIO_BMI088 EXPORT_SYMBOL_GPL 0x4172558d bmi088_accel_core_remove drivers/iio/accel/bmi088-accel-core +IIO_BMI088 EXPORT_SYMBOL_GPL 0x5fd40240 bmi088_accel_pm_ops drivers/iio/accel/bmi088-accel-core +IIO_BMI088 EXPORT_SYMBOL_GPL 0xe563c4b4 bmi088_regmap_conf drivers/iio/accel/bmi088-accel-core +IIO_BMI160 EXPORT_SYMBOL 0xca19cfae bmi160_enable_irq drivers/iio/imu/bmi160/bmi160_core +IIO_BMI160 EXPORT_SYMBOL 0xf4f9ec98 bmi160_regmap_config drivers/iio/imu/bmi160/bmi160_core +IIO_BMI160 EXPORT_SYMBOL_GPL 0x65956d95 bmi160_core_probe drivers/iio/imu/bmi160/bmi160_core +IIO_BMP280 EXPORT_SYMBOL 0x15c22434 bmp580_regmap_config drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x1bbe98b1 bmp380_regmap_config drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x1e6af332 bmp180_regmap_config drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x2147c7fb bmp280_chip_info drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x24dce73f bmp280_common_probe drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x448a6d3b bmp580_chip_info drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x56a2e63f bme280_chip_info drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0x5d26e220 bmp180_chip_info drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0xbc48268d bmp380_chip_info drivers/iio/pressure/bmp280 +IIO_BMP280 EXPORT_SYMBOL 0xf4ec2e50 bmp280_regmap_config drivers/iio/pressure/bmp280 +IIO_BNO055 EXPORT_SYMBOL_GPL 0x2a371ba3 bno055_regmap_config drivers/iio/imu/bno055/bno055 +IIO_BNO055 EXPORT_SYMBOL_GPL 0xd47dad86 bno055_probe drivers/iio/imu/bno055/bno055 +IIO_FXAS21002C EXPORT_SYMBOL_GPL 0x524e798b fxas21002c_core_remove drivers/iio/gyro/fxas21002c_core +IIO_FXAS21002C EXPORT_SYMBOL_GPL 0x60efe722 fxas21002c_pm_ops drivers/iio/gyro/fxas21002c_core +IIO_FXAS21002C EXPORT_SYMBOL_GPL 0xc9f76eda fxas21002c_core_probe drivers/iio/gyro/fxas21002c_core +IIO_FXLS8962AF EXPORT_SYMBOL_GPL 0x721d575e fxls8962af_spi_regmap_conf drivers/iio/accel/fxls8962af-core +IIO_FXLS8962AF EXPORT_SYMBOL_GPL 0x9264263c fxls8962af_pm_ops drivers/iio/accel/fxls8962af-core +IIO_FXLS8962AF EXPORT_SYMBOL_GPL 0xce6f1958 fxls8962af_core_probe drivers/iio/accel/fxls8962af-core +IIO_FXLS8962AF EXPORT_SYMBOL_GPL 0xd0c3c39b fxls8962af_i2c_regmap_conf drivers/iio/accel/fxls8962af-core +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x00947ce6 devm_iio_init_iio_gts drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x094bee02 iio_gts_avail_scales_for_time drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x296bb0cd iio_gts_all_avail_scales drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x4ed89402 iio_gts_find_sel_by_gain drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x53000dc5 iio_gts_find_gain_by_sel drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x54a7bad7 iio_gts_get_min_gain drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0x5f338fa0 iio_gts_find_new_gain_sel_by_old_gain_time drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xa3374797 iio_gts_get_scale drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xaf5aaa85 iio_find_closest_gain_low drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xc061498b iio_gts_avail_times drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xc25ccf30 iio_gts_find_new_gain_by_old_gain_time drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xd7e29768 iio_gts_find_gain_sel_for_scale_using_time drivers/iio/industrialio-gts-helper +IIO_GTS_HELPER EXPORT_SYMBOL_GPL 0xf42af90f iio_gts_total_gain_to_scale drivers/iio/industrialio-gts-helper +IIO_HID EXPORT_SYMBOL 0x122c3c8a hid_sensor_parse_common_attributes drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x22f90161 hid_sensor_pm_ops drivers/iio/common/hid-sensors/hid-sensor-trigger +IIO_HID EXPORT_SYMBOL 0x2bf8ce0b hid_sensor_read_raw_hyst_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x2d91c42a hid_sensor_write_raw_hyst_rel_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x2e79a6dc hid_sensor_power_state drivers/iio/common/hid-sensors/hid-sensor-trigger +IIO_HID EXPORT_SYMBOL 0x34015d0d hid_sensor_write_raw_hyst_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x3ab9f53c hid_sensor_write_samp_freq_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x42c1d7a9 hid_sensor_convert_timestamp drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x44bd01e1 hid_sensor_read_samp_freq_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0x6b0ac2cb hid_sensor_remove_trigger drivers/iio/common/hid-sensors/hid-sensor-trigger +IIO_HID EXPORT_SYMBOL 0x7f7621ec hid_sensor_format_scale drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID EXPORT_SYMBOL 0xdbe70e16 hid_sensor_setup_trigger drivers/iio/common/hid-sensors/hid-sensor-trigger +IIO_HID EXPORT_SYMBOL 0xecf9031d hid_sensor_read_raw_hyst_rel_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID_ATTRIBUTES EXPORT_SYMBOL 0x12e59e8b hid_sensor_get_report_latency drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID_ATTRIBUTES EXPORT_SYMBOL 0x21b12ffb hid_sensor_set_report_latency drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID_ATTRIBUTES EXPORT_SYMBOL 0xaae34fb3 hid_sensor_batch_mode_supported drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HID_ATTRIBUTES EXPORT_SYMBOL 0xb1263a58 hid_sensor_read_poll_value drivers/iio/common/hid-sensors/hid-sensor-iio-common +IIO_HMC5843 EXPORT_SYMBOL 0x12378c47 hmc5843_common_probe drivers/iio/magnetometer/hmc5843_core +IIO_HMC5843 EXPORT_SYMBOL 0x383540f4 hmc5843_common_remove drivers/iio/magnetometer/hmc5843_core +IIO_HMC5843 EXPORT_SYMBOL 0xe4b125b8 hmc5843_pm_ops drivers/iio/magnetometer/hmc5843_core +IIO_HTS221 EXPORT_SYMBOL 0x93d649a8 hts221_probe drivers/iio/humidity/hts221 +IIO_HTS221 EXPORT_SYMBOL 0xbcb56400 hts221_pm_ops drivers/iio/humidity/hts221 +IIO_KX022A EXPORT_SYMBOL_GPL 0x2a6f22f7 kx022a_regmap drivers/iio/accel/kionix-kx022a +IIO_KX022A EXPORT_SYMBOL_GPL 0x6572787c kx022a_probe_internal drivers/iio/accel/kionix-kx022a +IIO_KXSD9 EXPORT_SYMBOL 0x2e4c7725 kxsd9_dev_pm_ops drivers/iio/accel/kxsd9 +IIO_KXSD9 EXPORT_SYMBOL 0x744f2bf4 kxsd9_common_remove drivers/iio/accel/kxsd9 +IIO_KXSD9 EXPORT_SYMBOL 0x91f1c963 kxsd9_common_probe drivers/iio/accel/kxsd9 +IIO_LSM6DSX EXPORT_SYMBOL 0x4fb3f29b st_lsm6dsx_pm_ops drivers/iio/imu/st_lsm6dsx/st_lsm6dsx +IIO_LSM6DSX EXPORT_SYMBOL 0xcd61ecb4 st_lsm6dsx_probe drivers/iio/imu/st_lsm6dsx/st_lsm6dsx +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x045688dd ms_sensors_read_prom_word drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x2d2f5cd5 ms_sensors_reset drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x2fe2567f ms_sensors_read_temp_and_pressure drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x341542d7 ms_sensors_write_heater drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x38b11d1f ms_sensors_ht_read_humidity drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x42b6a050 ms_sensors_convert_and_read drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0x5dfb32e3 ms_sensors_ht_read_temperature drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0xb64906cf ms_sensors_tp_read_prom drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0xc14115b6 ms_sensors_read_serial drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0xc849ae98 ms_sensors_show_heater drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0xde90adfe ms_sensors_write_resolution drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MEAS_SPEC_SENSORS EXPORT_SYMBOL 0xe9bc39e8 ms_sensors_show_battery_low drivers/iio/common/ms_sensors/ms_sensors_i2c +IIO_MMA7455 EXPORT_SYMBOL_GPL 0x13c30fb0 mma7455_core_remove drivers/iio/accel/mma7455_core +IIO_MMA7455 EXPORT_SYMBOL_GPL 0x84ae0d06 mma7455_core_regmap drivers/iio/accel/mma7455_core +IIO_MMA7455 EXPORT_SYMBOL_GPL 0x94ad8b13 mma7455_core_probe drivers/iio/accel/mma7455_core +IIO_MMA9551 EXPORT_SYMBOL 0x20b47cc6 mma9551_set_device_state drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x3c60ece1 mma9551_write_config_word drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x41ef446c mma9551_read_accel_scale drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x4469f70a mma9551_read_status_byte drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x4a1acabe mma9551_update_config_bits drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x50652ecc mma9551_read_status_words drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x67833d01 mma9551_write_config_byte drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0x82d8a5d0 mma9551_read_config_word drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xa8bf50d8 mma9551_read_version drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xaf357347 mma9551_gpio_config drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xb66d8050 mma9551_read_config_words drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xbcd7fe96 mma9551_sleep drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xc0338d73 mma9551_app_reset drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xcaec84f7 mma9551_set_power_state drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xd506c43d mma9551_read_accel_chan drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xecc9e468 mma9551_write_config_words drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xf56c37b3 mma9551_read_status_word drivers/iio/accel/mma9551_core +IIO_MMA9551 EXPORT_SYMBOL 0xf7cb020b mma9551_read_config_byte drivers/iio/accel/mma9551_core +IIO_MPL115 EXPORT_SYMBOL 0xb9ebe5f3 mpl115_dev_pm_ops drivers/iio/pressure/mpl115 +IIO_MPL115 EXPORT_SYMBOL_GPL 0x188bb384 mpl115_probe drivers/iio/pressure/mpl115 +IIO_MPU6050 EXPORT_SYMBOL_GPL 0x4516bccc inv_mpu_pmops drivers/iio/imu/inv_mpu6050/inv-mpu6050 +IIO_MPU6050 EXPORT_SYMBOL_GPL 0x7849eaed inv_mpu_core_probe drivers/iio/imu/inv_mpu6050/inv-mpu6050 +IIO_MS5611 EXPORT_SYMBOL 0x381b1b54 ms5611_probe drivers/iio/pressure/ms5611_core +IIO_RESCALE EXPORT_SYMBOL_GPL 0x0f97d7d8 rescale_process_scale drivers/iio/afe/iio-rescale +IIO_RESCALE EXPORT_SYMBOL_GPL 0x9af5fe33 rescale_process_offset drivers/iio/afe/iio-rescale +IIO_RM3100 EXPORT_SYMBOL_GPL 0x0a1424e0 rm3100_volatile_table drivers/iio/magnetometer/rm3100-core +IIO_RM3100 EXPORT_SYMBOL_GPL 0x59f50645 rm3100_common_probe drivers/iio/magnetometer/rm3100-core +IIO_RM3100 EXPORT_SYMBOL_GPL 0xaa911f08 rm3100_readable_table drivers/iio/magnetometer/rm3100-core +IIO_RM3100 EXPORT_SYMBOL_GPL 0xcc7209be rm3100_writable_table drivers/iio/magnetometer/rm3100-core +IIO_SPS30 EXPORT_SYMBOL_GPL 0xe36ae731 sps30_probe drivers/iio/chemical/sps30 +IIO_SSP_SENSORS EXPORT_SYMBOL 0x0f710c96 ssp_enable_sensor drivers/iio/common/ssp_sensors/sensorhub +IIO_SSP_SENSORS EXPORT_SYMBOL 0x450a9727 ssp_change_delay drivers/iio/common/ssp_sensors/sensorhub +IIO_SSP_SENSORS EXPORT_SYMBOL 0x4d59eee8 ssp_common_process_data drivers/iio/common/ssp_sensors/ssp_iio +IIO_SSP_SENSORS EXPORT_SYMBOL 0x71652343 ssp_common_buffer_postdisable drivers/iio/common/ssp_sensors/ssp_iio +IIO_SSP_SENSORS EXPORT_SYMBOL 0x82dad0e0 ssp_get_sensor_delay drivers/iio/common/ssp_sensors/sensorhub +IIO_SSP_SENSORS EXPORT_SYMBOL 0xd5df7584 ssp_disable_sensor drivers/iio/common/ssp_sensors/sensorhub +IIO_SSP_SENSORS EXPORT_SYMBOL 0xe0308340 ssp_register_consumer drivers/iio/common/ssp_sensors/sensorhub +IIO_SSP_SENSORS EXPORT_SYMBOL 0xf4a736ae ssp_common_buffer_postenable drivers/iio/common/ssp_sensors/ssp_iio +IIO_ST_SENSORS EXPORT_SYMBOL 0x02dbcfbe st_magn_get_settings drivers/iio/magnetometer/st_magn +IIO_ST_SENSORS EXPORT_SYMBOL 0x074d7047 st_sensors_trigger_handler drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x0c6ebf67 st_sensors_dev_name_probe drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x1024c920 st_sensors_allocate_trigger drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x1243547c st_gyro_common_probe drivers/iio/gyro/st_gyro +IIO_ST_SENSORS EXPORT_SYMBOL 0x1b319b2e st_sensors_spi_configure drivers/iio/common/st_sensors/st_sensors_spi +IIO_ST_SENSORS EXPORT_SYMBOL 0x2612dc0c st_sensors_set_fullscale_by_gain drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x275d2564 st_sensors_debugfs_reg_access drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x395f3b76 st_press_common_probe drivers/iio/pressure/st_pressure +IIO_ST_SENSORS EXPORT_SYMBOL 0x478b848b st_sensors_i2c_configure drivers/iio/common/st_sensors/st_sensors_i2c +IIO_ST_SENSORS EXPORT_SYMBOL 0x485e5dbb st_sensors_read_info_raw drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x4f7d7782 st_sensors_init_sensor drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x616f3681 st_sensors_set_odr drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x69e7ad9b st_sensors_set_enable drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x6bbe02c8 st_sensors_get_settings_index drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x7aef7a92 st_sensors_set_dataready_irq drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0x932f041f st_gyro_get_settings drivers/iio/gyro/st_gyro +IIO_ST_SENSORS EXPORT_SYMBOL 0xa15c1a0c st_sensors_power_enable drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xa23ba5d2 st_sensors_validate_device drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xba5453d2 st_press_get_settings drivers/iio/pressure/st_pressure +IIO_ST_SENSORS EXPORT_SYMBOL 0xbc30799c st_accel_get_settings drivers/iio/accel/st_accel +IIO_ST_SENSORS EXPORT_SYMBOL 0xc1a9e2d8 st_sensors_sysfs_sampling_frequency_avail drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xc2dd6681 st_sensors_set_axis_enable drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xce6eee14 st_sensors_sysfs_scale_avail drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xe7571432 st_accel_common_probe drivers/iio/accel/st_accel +IIO_ST_SENSORS EXPORT_SYMBOL 0xed016a2a st_sensors_verify_id drivers/iio/common/st_sensors/st_sensors +IIO_ST_SENSORS EXPORT_SYMBOL 0xf12cfaea st_magn_common_probe drivers/iio/magnetometer/st_magn +IIO_ST_SENSORS EXPORT_SYMBOL_GPL 0xd38ea710 st_lsm9ds0_probe drivers/iio/imu/st_lsm9ds0/st_lsm9ds0 +IIO_UVIS25 EXPORT_SYMBOL 0x4d0d9a05 st_uvis25_pm_ops drivers/iio/light/st_uvis25_core +IIO_UVIS25 EXPORT_SYMBOL 0xe0e01ce1 st_uvis25_probe drivers/iio/light/st_uvis25_core +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0x013049b4 zpa2326_isreg_readable drivers/iio/pressure/zpa2326 +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0x16a72311 zpa2326_isreg_writeable drivers/iio/pressure/zpa2326 +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0x2d46e8f6 zpa2326_remove drivers/iio/pressure/zpa2326 +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0x47dcff9a zpa2326_pm_ops drivers/iio/pressure/zpa2326 +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0x7801e375 zpa2326_isreg_precious drivers/iio/pressure/zpa2326 +IIO_ZPA2326 EXPORT_SYMBOL_GPL 0xf7d2d719 zpa2326_probe drivers/iio/pressure/zpa2326 +INT340X_THERMAL EXPORT_SYMBOL_GPL 0xd952145c processor_thermal_send_mbox_write_cmd drivers/thermal/intel/int340x_thermal/processor_thermal_mbox +INT340X_THERMAL EXPORT_SYMBOL_GPL 0xda8f2408 processor_thermal_send_mbox_read_cmd drivers/thermal/intel/int340x_thermal/processor_thermal_mbox +INTEL_IPU_BRIDGE EXPORT_SYMBOL_GPL 0xaa29a30a ipu_bridge_init drivers/media/pci/intel/ipu-bridge +INTEL_M10_BMC_CORE EXPORT_SYMBOL_GPL 0x1f399b2a m10bmc_fw_state_set drivers/mfd/intel-m10-bmc-core +INTEL_M10_BMC_CORE EXPORT_SYMBOL_GPL 0x878ea9cf m10bmc_dev_init drivers/mfd/intel-m10-bmc-core +INTEL_M10_BMC_CORE EXPORT_SYMBOL_GPL 0xa5d52e0a m10bmc_dev_groups drivers/mfd/intel-m10-bmc-core +INTEL_M10_BMC_CORE EXPORT_SYMBOL_GPL 0xd67d193f m10bmc_sys_read drivers/mfd/intel-m10-bmc-core +INTEL_M10_BMC_CORE EXPORT_SYMBOL_GPL 0xfa73137f m10bmc_sys_update_bits drivers/mfd/intel-m10-bmc-core +INTEL_PMT EXPORT_SYMBOL_GPL 0x026fd59e intel_pmt_dev_create drivers/platform/x86/intel/pmt/pmt_class +INTEL_PMT EXPORT_SYMBOL_GPL 0x155379c1 intel_pmt_dev_destroy drivers/platform/x86/intel/pmt/pmt_class +INTEL_PMT EXPORT_SYMBOL_GPL 0x7ecbfabf intel_pmt_is_early_client_hw drivers/platform/x86/intel/pmt/pmt_class +INTEL_TCC EXPORT_SYMBOL_GPL 0x1936331f intel_tcc_set_offset vmlinux +INTEL_TCC EXPORT_SYMBOL_GPL 0x8c32aa7b intel_tcc_get_offset vmlinux +INTEL_TCC EXPORT_SYMBOL_GPL 0xa1186518 intel_tcc_get_tjmax vmlinux +INTEL_TCC EXPORT_SYMBOL_GPL 0xcb0091dd intel_tcc_get_temp vmlinux +INTEL_TPMI EXPORT_SYMBOL_GPL 0x193f03cd tpmi_get_resource_count drivers/platform/x86/intel/intel_vsec_tpmi +INTEL_TPMI EXPORT_SYMBOL_GPL 0x44709934 tpmi_get_platform_data drivers/platform/x86/intel/intel_vsec_tpmi +INTEL_TPMI EXPORT_SYMBOL_GPL 0x4b7daf99 tpmi_get_resource_at_index drivers/platform/x86/intel/intel_vsec_tpmi +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0x10c88f12 tpmi_sst_dev_remove drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0x45083054 tpmi_sst_init drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0x81b27427 tpmi_sst_dev_add drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0x914f5550 tpmi_sst_dev_resume drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0x98bbc7d5 tpmi_sst_exit drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_TPMI_SST EXPORT_SYMBOL_GPL 0xbb04f8c0 tpmi_sst_dev_suspend drivers/platform/x86/intel/speed_select_if/isst_tpmi_core +INTEL_UNCORE_FREQUENCY EXPORT_SYMBOL_GPL 0x2992ffc3 uncore_freq_common_init drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common +INTEL_UNCORE_FREQUENCY EXPORT_SYMBOL_GPL 0xb3b982f2 uncore_freq_remove_die_entry drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common +INTEL_UNCORE_FREQUENCY EXPORT_SYMBOL_GPL 0xbf3d935d uncore_freq_common_exit drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common +INTEL_UNCORE_FREQUENCY EXPORT_SYMBOL_GPL 0xd844ca15 uncore_freq_add_entry drivers/platform/x86/intel/uncore-frequency/intel-uncore-frequency-common +INTEL_VSEC EXPORT_SYMBOL_GPL 0x34bc5639 intel_vsec_add_aux drivers/platform/x86/intel/intel_vsec +IOMMUFD EXPORT_SYMBOL_GPL 0x15cd7c84 iommufd_ctx_get drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x264aa70e iommufd_access_attach drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x2d59064c iommufd_device_attach drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x2e2e43b7 iommufd_access_rw drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x44bea531 iommufd_device_detach drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x471dc0ff iommufd_access_unpin_pages drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x4bb8fb96 iommufd_ctx_from_file drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0x7974d7b4 iommufd_access_destroy drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0xa4c11846 iommufd_access_pin_pages drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0xa931519d iommufd_access_create drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0xc832821b iommufd_device_bind drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0xcd0ca6f6 iommufd_ctx_put drivers/iommu/iommufd/iommufd +IOMMUFD EXPORT_SYMBOL_GPL 0xfad49369 iommufd_device_unbind drivers/iommu/iommufd/iommufd +IOMMUFD_VFIO EXPORT_SYMBOL_GPL 0x21d841e8 iommufd_vfio_compat_set_no_iommu drivers/iommu/iommufd/iommufd +IOMMUFD_VFIO EXPORT_SYMBOL_GPL 0xa42aa15a iommufd_vfio_compat_ioas_create drivers/iommu/iommufd/iommufd +IOMMUFD_VFIO EXPORT_SYMBOL_GPL 0xa6d58374 iommufd_vfio_compat_ioas_get_id drivers/iommu/iommufd/iommufd +IWLWIFI EXPORT_SYMBOL_GPL 0x01dc9b19 iwl_fw_dbg_collect drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x025bf108 iwl_acpi_get_tas drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x031a8159 iwl_poll_direct_bit drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x0648fb36 iwl_uefi_get_sgom_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x09dc7cab iwl_acpi_get_lari_config_bitmap drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x0def58e0 iwl_write32 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x0f17e699 iwl_free_fw_paging drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x132247ee iwl_set_bits_mask_prph drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x1332e4de iwl_abort_notification_waits drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x1d9597fe iwl_get_cmd_string drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x20480b61 __iwl_warn drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x250c4480 __iwl_err drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x2710c362 iwl_dump_desc_assert drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x28bea6d9 iwl_fw_dbg_stop_restart_recording drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x32e3b9d2 iwl_init_paging drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x35033c81 iwl_phy_db_free drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x37956b72 rs_pretty_print_rate drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x3fe5ce03 iwl_finish_nic_init drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x45bc5c43 iwl_write8 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x49e0135d iwl_new_rate_from_v1 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x4b1a8799 iwl_sar_select_profile drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5083e1af iwl_fwrt_dump_error_logs drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x55c87fd8 iwl_read_ppag_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x568a4982 __iwl_info drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x58a71dbd iwl_sar_geo_init drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5934655b iwl_sar_geo_support drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x59461807 iwl_sar_get_ewrd_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5988395c iwl_notification_wait_init drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5c23a2d3 iwl_acpi_get_eckv drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5c52e109 iwl_opmode_deregister drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5eea7e86 __iwl_dbg drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x5f9884b5 iwl_phy_db_init drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x62ed580c iwl_fw_dbg_stop_sync drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x72fbc358 iwl_get_shared_mem_conf drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x7320b24a iwl_parse_eeprom_data drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x75173b7e iwl_fw_dbg_error_collect drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x776221bf iwl_send_phy_db_data drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x78971d7e iwl_he_is_sgi drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x7b186f33 iwl_write_direct32 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x7d73a3b9 iwl_fw_dbg_collect_trig drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x811f5c2f iwl_parse_nvm_mcc_info drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x8158742c iwl_dbg_tlv_del_timers drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x828c6838 iwlwifi_mod_params drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x8405ccd1 iwl_force_nmi drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x84bb50e1 iwl_rs_pretty_ant drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x84e6a197 iwl_read_direct32 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x84efc74b iwl_trans_send_cmd drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x874c77de iwl_fw_rate_idx_to_plcp drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x8a0ff169 iwl_sar_get_wgds_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x8dfb974d iwl_read_external_nvm drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x8ea1409e iwl_set_soc_latency drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x9038811a iwl_rfi_guid drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x9350e37a iwl_read_prph_no_grab drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x94f91304 iwl_clear_bits_prph drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x9c088bf7 iwl_acpi_get_dsm_u32 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x9d830089 iwl_opmode_register drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0x9e2d64f0 _iwl_dbg_tlv_time_point drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xa172bed5 iwl_read_eeprom drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xa37f0441 iwl_read32 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xa70c9988 iwl_write_prph_no_grab drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xa8297efd iwl_get_nvm drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xac83b78c iwl_acpi_get_mcc drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xaf9e7bd6 iwl_uefi_get_step_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xb37b318c iwl_rs_pretty_bw drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xb564ee1a iwl_write_direct64 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xb7d5ffb1 iwl_rate_mcs drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xb8fcaefe iwl_acpi_get_ppag_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xbafc8994 iwl_wait_notification drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xbb3c23e2 iwl_acpi_get_dsm_u8 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xbfd7d685 iwl_fw_runtime_suspend drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc0963a67 iwl_parse_nvm_data drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc318f3a3 iwl_fw_dbg_read_d3_debug_data drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc393d9c9 iwl_write64 drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc414a069 iwl_cmd_groups_verify_sorted drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc419825a iwl_fw_start_dbg_conf drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc638cb5e iwl_fw_runtime_resume drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xc6808a0a iwl_configure_rxq drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xcb999ec9 iwl_write_prph64_no_grab drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xce0c6460 iwl_phy_db_set_section drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xd8fcb8e1 iwl_fw_runtime_init drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xd91b01ea iwl_write_prph_delay drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xdd0b2242 iwl_pnvm_load drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xded65e7c iwl_read_prph drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe0eb5838 iwl_init_notification_wait drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe2793431 iwl_parse_mei_nvm_data drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe354d91f iwl_fw_dbg_collect_desc drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe578d5a7 iwl_drv_get_fwname_pre drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe75b7e77 iwl_notification_wait drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe7f264de iwl_acpi_get_pwr_limit drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xe9d9d01a iwl_sar_get_wrds_table drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xea1b26fc iwl_nvm_fixups drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xebeb22e7 iwl_poll_bit drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xf6d0e379 iwl_acpi_get_phy_filters drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xf7c0dbc3 iwl_acpi_is_ppag_approved drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xf8792046 __iwl_crit drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xf88964e4 iwl_remove_notification drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xfb9cab1f iwl_set_bits_prph drivers/net/wireless/intel/iwlwifi/iwlwifi +IWLWIFI EXPORT_SYMBOL_GPL 0xfc1e6f41 iwl_guid drivers/net/wireless/intel/iwlwifi/iwlwifi +LTC2497 EXPORT_SYMBOL 0x53759bd8 ltc2497core_probe drivers/iio/adc/ltc2497-core +LTC2497 EXPORT_SYMBOL 0xd3e4b62e ltc2497core_remove drivers/iio/adc/ltc2497-core +MCB EXPORT_SYMBOL_GPL 0x10e0a22e mcb_get_resource drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x2723db13 __mcb_register_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x2c6bb10c mcb_bus_get drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x2deec184 mcb_bus_add_devices drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x313d5f2b chameleon_parse_cells drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x3ea2c7df mcb_get_irq drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x6d792b12 mcb_alloc_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x769b2c51 mcb_release_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0x77a6fde8 mcb_bus_put drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd2d51be0 mcb_unregister_driver drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd3623e5a mcb_free_dev drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xd6b78154 mcb_device_register drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xdc33f2a9 mcb_alloc_bus drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xeb2c8905 mcb_release_mem drivers/mcb/mcb +MCB EXPORT_SYMBOL_GPL 0xef19c3b9 mcb_request_mem drivers/mcb/mcb +MFD_OCELOT EXPORT_SYMBOL 0x236af733 ocelot_core_init drivers/mfd/ocelot-soc +MFD_OCELOT EXPORT_SYMBOL 0x687c8d5e ocelot_chip_reset drivers/mfd/ocelot-soc +MFD_OCELOT_SPI EXPORT_SYMBOL 0xde35b664 ocelot_spi_init_regmap drivers/mfd/ocelot-soc +NET_MANA EXPORT_SYMBOL 0x09948448 mana_uncfg_vport drivers/net/ethernet/microsoft/mana/mana +NET_MANA EXPORT_SYMBOL 0x289bf5e5 mana_create_wq_obj drivers/net/ethernet/microsoft/mana/mana +NET_MANA EXPORT_SYMBOL 0x339e1528 mana_cfg_vport drivers/net/ethernet/microsoft/mana/mana +NET_MANA EXPORT_SYMBOL 0x75e26706 mana_gd_send_request drivers/net/ethernet/microsoft/mana/mana +NET_MANA EXPORT_SYMBOL 0x9dc2c706 mana_gd_destroy_dma_region drivers/net/ethernet/microsoft/mana/mana +NET_MANA EXPORT_SYMBOL 0xab3abda8 mana_destroy_wq_obj drivers/net/ethernet/microsoft/mana/mana +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0x06ebe7cb nvme_ctrl_from_file vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0x0e597347 nvme_passthru_start vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0x20865368 nvme_execute_rq vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0x3814f3db nvme_command_effects vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0x3dc42dc4 nvme_find_get_ns vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0xeac99ced nvme_passthru_end vmlinux +NVME_TARGET_PASSTHRU EXPORT_SYMBOL_GPL 0xf57e0fe9 nvme_put_ns vmlinux +PECI EXPORT_SYMBOL_GPL 0x00240a16 peci_request_status drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x1110db13 peci_driver_unregister drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x21448f38 peci_xfer_ep_pci_cfg_readw drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x21d99eb7 peci_xfer_get_dib drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x2a729025 peci_xfer_ep_pci_cfg_local_readb drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x3c64b832 peci_request_free drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x3eb338c5 peci_request_data_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x46284c92 peci_xfer_pci_cfg_local_readb drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x6245cc65 peci_xfer_ep_pci_cfg_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x688f4afa peci_xfer_pkg_cfg_readq drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x6e3edffe devm_peci_controller_add drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x8f11feb9 peci_request_alloc drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0x90d5b9f0 peci_xfer_pkg_cfg_readb drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xa6b31b39 peci_request_data_readw drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xa7dae3f7 peci_xfer_ep_mmio64_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xb30c4a40 __peci_driver_register drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xb7f7b968 peci_xfer_ep_pci_cfg_local_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xbb2a0859 peci_xfer_get_temp drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xbc6443a8 peci_xfer_pkg_cfg_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xbdf6a1e4 peci_request_data_readq drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xdd5611b6 peci_xfer_ep_mmio32_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xdffa92af peci_request_dib_read drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xe0a2d27c peci_xfer_pci_cfg_local_readw drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xe538ceac peci_request_temp_read drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xef391ad6 peci_request_data_readb drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xf35f4a34 peci_xfer_pkg_cfg_readw drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xf4f6fa35 peci_xfer_ep_pci_cfg_local_readw drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xfd7246fb peci_xfer_pci_cfg_local_readl drivers/peci/peci +PECI EXPORT_SYMBOL_GPL 0xffc0e528 peci_xfer_ep_pci_cfg_readb drivers/peci/peci +PECI_CPU EXPORT_SYMBOL_GPL 0x5f6a3b10 peci_pci_local_read drivers/peci/peci-cpu +PECI_CPU EXPORT_SYMBOL_GPL 0x67328b59 peci_ep_pci_local_read drivers/peci/peci-cpu +PECI_CPU EXPORT_SYMBOL_GPL 0xabf89d12 peci_temp_read drivers/peci/peci-cpu +PECI_CPU EXPORT_SYMBOL_GPL 0xe713a1c2 peci_mmio_read drivers/peci/peci-cpu +PECI_CPU EXPORT_SYMBOL_GPL 0xf45bf465 peci_pcs_read drivers/peci/peci-cpu +PMBUS EXPORT_SYMBOL_GPL 0x07ef82e7 pmbus_get_debugfs_dir drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x0c3c5627 pmbus_regulator_ops drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x0fa764ae pmbus_do_probe drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x2841621c pmbus_check_byte_register drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x494df2a0 pmbus_unlock drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x4bfc129e pmbus_clear_cache drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x518cebed pmbus_update_byte_data drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x74fc6cea pmbus_set_page drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x7b8f50a6 pmbus_write_byte_data drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x7cfb0f26 pmbus_set_update drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x8ec44435 pmbus_clear_faults drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x903a34cd pmbus_write_word_data drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0x9ea6d146 pmbus_read_word_data drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xadd98cf8 pmbus_get_fan_rate_device drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xaf02d155 pmbus_lock_interruptible drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xafb16b78 pmbus_write_byte drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xbd8521cb pmbus_update_fan drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xca94a372 pmbus_check_word_register drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xcd06b275 pmbus_get_driver_info drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xd4430931 pmbus_get_fan_rate_cached drivers/hwmon/pmbus/pmbus_core +PMBUS EXPORT_SYMBOL_GPL 0xf220a395 pmbus_read_byte_data drivers/hwmon/pmbus/pmbus_core +SEMTECH_PROX EXPORT_SYMBOL_GPL 0x16968281 sx_common_read_event_config drivers/iio/proximity/sx_common +SEMTECH_PROX EXPORT_SYMBOL_GPL 0x214f1910 sx_common_get_raw_register_config drivers/iio/proximity/sx_common +SEMTECH_PROX EXPORT_SYMBOL_GPL 0x63db99f8 sx_common_probe drivers/iio/proximity/sx_common +SEMTECH_PROX EXPORT_SYMBOL_GPL 0x7e654ba0 sx_common_write_event_config drivers/iio/proximity/sx_common +SEMTECH_PROX EXPORT_SYMBOL_GPL 0xa103ce02 sx_common_events drivers/iio/proximity/sx_common +SEMTECH_PROX EXPORT_SYMBOL_GPL 0xbc6971fa sx_common_read_proximity drivers/iio/proximity/sx_common +SERIAL_8250_PCI EXPORT_SYMBOL_GPL 0x4b911c81 serial8250_pci_setup_port vmlinux +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x2e8d0591 dw_spi_set_cs drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x3a5b722f dw_spi_suspend_host drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x4065e9d6 dw_spi_dma_setup_generic drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x4eefa0ee dw_spi_dma_setup_mfld drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x5c206eb7 dw_spi_check_status drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x69039b7f dw_spi_update_config drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x70727319 dw_spi_remove_host drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0x8954446a dw_spi_resume_host drivers/spi/spi-dw +SPI_DW_CORE EXPORT_SYMBOL_GPL 0xc1d8a518 dw_spi_add_host drivers/spi/spi-dw +TEST_FIRMWARE EXPORT_SYMBOL_GPL 0x3dce036c firmware_request_builtin vmlinux +TEST_FIRMWARE EXPORT_SYMBOL_GPL 0x9d8a8803 efi_embedded_fw_list vmlinux +TEST_FIRMWARE EXPORT_SYMBOL_GPL 0x9dd8d0e2 efi_embedded_fw_checked vmlinux +USB_STORAGE EXPORT_SYMBOL_GPL 0x0e8fbd2a usb_stor_Bulk_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x19972660 usb_stor_reset_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x1bc3edc2 usb_stor_sense_invalidCDB drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x31599587 usb_stor_host_template_init drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x50c0eefb usb_stor_probe1 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x564119d4 usb_stor_control_msg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x56b730c3 usb_stor_resume drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x56d88a44 usb_stor_transparent_scsi_command drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x5de43dd9 usb_stor_clear_halt drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x65547ba4 usb_stor_post_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x6a78b304 usb_stor_adjust_quirks drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7530e4fa fill_inquiry_response drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x76ac74d9 usb_stor_suspend drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x7f992174 usb_stor_access_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x82c13e54 usb_stor_CB_transport drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x8c7429de usb_stor_bulk_transfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0x8f4c74fa usb_stor_probe2 drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xa90f7553 usb_stor_pre_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xaa307c5b usb_stor_disconnect drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xbbd7b228 usb_stor_bulk_transfer_sg drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xcfa2f643 usb_stor_set_xfer_buf drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xd12c61e5 usb_stor_CB_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xd6a8df3c usb_stor_bulk_srb drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe35fca49 usb_stor_Bulk_reset drivers/usb/storage/usb-storage +USB_STORAGE EXPORT_SYMBOL_GPL 0xe69f4054 usb_stor_ctrl_transfer drivers/usb/storage/usb-storage --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/amd64/intel-opt.compiler +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/amd64/intel-opt.compiler @@ -0,0 +1 @@ +GCC: (Ubuntu 13.2.0-4ubuntu3) 13.2.0 --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/amd64/intel-opt.modules +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/amd64/intel-opt.modules @@ -0,0 +1,5547 @@ +104-quad-8 +3c509 +3c574_cs +3c589_cs +3c59x +3w-9xxx +3w-sas +3w-xxxx +53c700 +6lowpan +6pack +8021q +8139cp +8139too +8250_dfl +8250_dw +8250_exar +8250_lpss +8250_men_mcb +8250_pci1xxxx +8250_pericom +8255 +8255_pci +8390 +842 +842_compress +842_decompress +88pg86x +88pm800 +88pm800-regulator +88pm805 +88pm80x +88pm80x_onkey +88pm8607 +88pm860x-ts +88pm860x_battery +88pm860x_bl +88pm860x_charger +88pm860x_onkey +9p +9pnet +9pnet_fd +9pnet_rdma +9pnet_virtio +9pnet_xen +BusLogic +a100u2w +a3d +a8293 +aacraid +aat2870-regulator +aat2870_bl +abituguru +abituguru3 +abp060mg +acard-ahci +acbel-fsg032 +acecad +acenic +acer-wireless +acer-wmi +acerhdf +acpi-als +acpi_configfs +acpi_extlog +acpi_ipmi +acpi_pad +acpi_power_meter +acpi_tad +acpi_thermal_rel +acpiphp_ibm +acquirewdt +acrn +act8865-regulator +act_bpf +act_connmark +act_csum +act_ct +act_ctinfo +act_gact +act_gate +act_ipt +act_mirred +act_mpls +act_nat +act_pedit +act_police +act_sample +act_simple +act_skbedit +act_skbmod +act_tunnel_key +act_vlan +ad2s1200 +ad2s1210 +ad2s90 +ad3552r +ad4130 +ad5064 +ad5110 +ad525x_dpot +ad525x_dpot-i2c +ad525x_dpot-spi +ad5272 +ad5360 +ad5380 +ad5398 +ad5421 +ad5446 +ad5449 +ad5504 +ad5592r +ad5592r-base +ad5593r +ad5624r_spi +ad5686 +ad5686-spi +ad5696-i2c +ad5755 +ad5758 +ad5761 +ad5764 +ad5766 +ad5770r +ad5791 +ad5820 +ad5933 +ad7091r-base +ad7091r5 +ad7124 +ad714x +ad714x-i2c +ad714x-spi +ad7150 +ad7192 +ad7266 +ad7280a +ad7291 +ad7292 +ad7293 +ad7298 +ad7303 +ad7314 +ad74115 +ad7414 +ad7418 +ad74413r +ad7476 +ad7606 +ad7606_par +ad7606_spi +ad7746 +ad7766 +ad7768-1 +ad7780 +ad7791 +ad7793 +ad7816 +ad7877 +ad7879 +ad7879-i2c +ad7879-spi +ad7887 +ad7923 +ad7949 +ad799x +ad8366 +ad8801 +ad9523 +ad9832 +ad9834 +ad_sigma_delta +ada4250 +adc-keys +adc128d818 +adcxx +addi_apci_1032 +addi_apci_1500 +addi_apci_1516 +addi_apci_1564 +addi_apci_16xx +addi_apci_2032 +addi_apci_2200 +addi_apci_3120 +addi_apci_3501 +addi_apci_3xxx +addi_watchdog +adf4350 +adf4371 +adf4377 +adf7242 +adfs +adi +adiantum +adin +adin1100 +adin1110 +adis16080 +adis16130 +adis16136 +adis16201 +adis16203 +adis16209 +adis16240 +adis16260 +adis16400 +adis16460 +adis16475 +adis16480 +adis_lib +adjd_s311 +adl_pci6208 +adl_pci7x3x +adl_pci8164 +adm1025 +adm1026 +adm1029 +adm1031 +adm1177 +adm1266 +adm1275 +adm8211 +adm9240 +admv1013 +admv1014 +admv4420 +admv8818 +adp1653 +adp5061 +adp5520-keys +adp5520_bl +adp5588-keys +adp5589-keys +adp8860_bl +adp8870_bl +adrf6780 +ads7828 +ads7846 +ads7871 +adt7310 +adt7316 +adt7316-i2c +adt7316-spi +adt7410 +adt7411 +adt7462 +adt7470 +adt7475 +adt7x10 +adummy +adutux +adux1020 +adv7170 +adv7175 +adv7180 +adv7183 +adv7343 +adv7393 +adv7511-v4l2 +adv7604 +adv7842 +adv_pci1720 +adv_pci1723 +adv_pci1724 +adv_pci1760 +adv_swbutton +advansys +advantech_ec_wdt +advantechwdt +adxl313_core +adxl313_i2c +adxl313_spi +adxl34x +adxl34x-i2c +adxl34x-spi +adxl355_core +adxl355_i2c +adxl355_spi +adxl367 +adxl367_i2c +adxl367_spi +adxl372 +adxl372_i2c +adxl372_spi +adxrs450 +aegis128 +aegis128-aesni +aes_ti +aesni-intel +af9013 +af9033 +af_alg +af_key +af_packet_diag +afe4403 +afe4404 +affs +ah4 +ah6 +aha152x_cs +aha1740 +ahci +ahci_dwc +ahci_platform +aht10 +aic79xx +aic7xxx +aic94xx +aiptek +aircable +airo +airo_cs +airspy +ak7375 +ak881x +ak8974 +ak8975 +al3010 +al3320a +alcor +alcor_pci +algif_aead +algif_hash +algif_rng +algif_skcipher +alienware-wmi +alim1535_wdt +alim7101_wdt +altera-cvp +altera-freeze-bridge +altera-msgdma +altera-pr-ip-core +altera-ps-spi +altera-stapl +altera_jtaguart +altera_ps2 +altera_tse +altera_uart +alx +am2315 +am53c974 +amc6821 +amd +amd-pmc +amd-pmf +amd-rng +amd-uncore +amd-xgbe +amd5536udc_pci +amd64_edac +amd76xrom +amd8111e +amd_freq_sensitivity +amd_hsmp +amd_sfh +amdgpu +amdtee +amdxcp +amilo-rfkill +amlogic-gxl-crypto +amplc_pc236_common +amplc_pci236 +amplc_pci263 +ams-iaq-core +ams369fg06 +amt +analog +analogix-anx78xx +analogix_dp +ansi_cprng +anx7411 +aoe +apanel +apds9300 +apds9802als +apds990x +apds9960 +apple-gmux +apple-mfi-fastcharge +apple_bl +appledisplay +applesmc +applespi +appletalk +appletouch +applicom +aptina-pll +aqc111 +aquacomputer_d5next +aquantia +ar0521 +ar5523 +ar7part +ar9331 +arasan-nand-controller +arc-rawmode +arc-rimi +arc_ps2 +arc_uart +arcfb +arcmsr +arcnet +arcxcnn_bl +aria-aesni-avx-x86_64 +aria-aesni-avx2-x86_64 +aria-gfni-avx512-x86_64 +aria_generic +arizona +arizona-i2c +arizona-spi +ark3116 +arkfb +arp_tables +arpt_mangle +arptable_filter +as102_fe +as370-hwmon +as3711-regulator +as3711_bl +as3935 +as5011 +asb100 +asc7621 +ascot2e +asix +ast +asus-ec-sensors +asus-laptop +asus-nb-wmi +asus-tf103c-dock +asus-wireless +asus-wmi +asus_atk0110 +asus_wmi_sensors +async_memcpy +async_pq +async_raid6_recov +async_tx +async_xor +at24 +at25 +at76c50x-usb +at803x +at86rf230 +atbm8830 +atc260x-core +atc260x-i2c +atc260x-onkey +atc260x-poweroff +atc260x-regulator +aten +ath +ath10k_core +ath10k_pci +ath10k_sdio +ath10k_usb +ath11k +ath11k_ahb +ath11k_pci +ath12k +ath5k +ath6kl_core +ath6kl_sdio +ath6kl_usb +ath9k +ath9k_common +ath9k_htc +ath9k_hw +ath9k_pci_owl_loader +ati_remote +ati_remote2 +atl1 +atl1c +atl1e +atl2 +atlantic +atlas-ezo-sensor +atlas-sensor +atlas_btns +atm +atmel +atmel-ecc +atmel-i2c +atmel-sha204a +atmel_cs +atmel_mxt_ts +atmel_pci +atmtcp +atp +atp870u +atusb +atxp1 +aty128fb +atyfb +au0828 +au8522_common +au8522_decoder +au8522_dig +auo-pixcir-ts +auth_rpcgss +authenc +authencesn +autofs4 +avmfritz +ax25 +ax88179_178a +ax88796b +ax88796c +axi-fan-control +axnet_cs +axp20x +axp20x-i2c +axp20x-pek +axp20x-regulator +axp20x_ac_power +axp20x_adc +axp20x_battery +axp20x_usb_power +axp288_adc +axp288_charger +axp288_fuel_gauge +b2c2-flexcop +b2c2-flexcop-pci +b2c2-flexcop-usb +b43 +b43legacy +b44 +b53_common +b53_mdio +b53_mmap +b53_serdes +b53_spi +b53_srab +ba431-rng +barco-p50-gpio +bareudp +batman-adv +baycom_par +baycom_ser_fdx +baycom_ser_hdx +bcache +bch +bcm-phy-lib +bcm-phy-ptp +bcm-sf2 +bcm3510 +bcm54140 +bcm590xx +bcm590xx-regulator +bcm5974 +bcm7xxx +bcm87xx +bcm_vk +bcma +bcma-hcd +bcmsysport +bd6107 +bd9571mwv +bd9571mwv-regulator +bd99954-charger +bdc +be2iscsi +be2net +befs +bel-pfe +belkin_sa +bfa +bfq +bfs +bh1750 +bh1770glc +bh1780 +binder_linux +binfmt_misc +blake2b_generic +block2mtd +blocklayoutdriver +blowfish-x86_64 +blowfish_common +blowfish_generic +bma150 +bma220_spi +bma400_core +bma400_i2c +bma400_spi +bmc150-accel-core +bmc150-accel-i2c +bmc150-accel-spi +bmc150_magn +bmc150_magn_i2c +bmc150_magn_spi +bme680_core +bme680_i2c +bme680_spi +bmg160_core +bmg160_i2c +bmg160_spi +bmi088-accel-core +bmi088-accel-spi +bmi160_core +bmi160_i2c +bmi160_spi +bmp280 +bmp280-i2c +bmp280-spi +bna +bno055 +bno055_i2c +bno055_ser +bnx2 +bnx2fc +bnx2i +bnx2x +bnxt_en +bnxt_re +bochs +bonding +bpa-rs600 +bpck +bpck6 +bpfilter +bpqether +bq2415x_charger +bq24190_charger +bq24257_charger +bq24735-charger +bq256xx_charger +bq25890_charger +bq27xxx_battery +bq27xxx_battery_hdq +bq27xxx_battery_i2c +br2684 +br_netfilter +brcmfmac +brcmfmac-bca +brcmfmac-cyw +brcmfmac-wcc +brcmsmac +brcmutil +brd +bridge +broadcom +bsd_comp +bt819 +bt856 +bt866 +bt878 +btcoexist +btrfs +bttv +bu21013_ts +bu21029_ts +budget +budget-av +budget-ci +budget-core +budget-patch +c2port-duramar2150 +c67x00 +c_can +c_can_pci +c_can_platform +ca8210 +cachefiles +cadence_wdt +cafe_ccic +cafe_nand +caif +caif_serial +caif_socket +caif_usb +caif_virtio +camellia-aesni-avx-x86_64 +camellia-aesni-avx2 +camellia-x86_64 +camellia_generic +can +can-bcm +can-dev +can-gw +can-isotp +can-j1939 +can-raw +can327 +capmode +capsule-loader +carl9170 +carminefb +cassini +cast5-avx-x86_64 +cast5_generic +cast6-avx-x86_64 +cast6_generic +cast_common +catc +cavium_ptp +cb710 +cb710-mmc +cb_pcidas64 +cb_pcidda +cb_pcimdda +cc10001_adc +cc2520 +cc770 +cc770_isa +cc770_platform +ccm +ccp +ccp-crypto +ccs811 +cdc-acm +cdc-phonet +cdc-wdm +cdc_eem +cdc_ether +cdc_mbim +cdc_ncm +cdc_subset +cdns-csi2rx +cdns-csi2tx +cdns-pltfrm +cdns-usb-common +cdns2-udc-pci +cdns3 +cdns3-pci-wrap +cdnsp-udc-pci +cec +ceph +cfag12864b +cfag12864bfb +cfb +cfg80211 +cfi_cmdset_0001 +cfi_cmdset_0002 +cfi_cmdset_0020 +cfi_probe +cfi_util +ch +ch341 +ch7006 +ch9200 +ch_ipsec +ch_ktls +chacha-x86_64 +chacha20poly1305 +chacha_generic +chaoskey +charlcd +chcr +chipone_icn8505 +chipreg +chnl_net +chromeos_acpi +chromeos_laptop +chromeos_privacy_screen +chromeos_pstore +chromeos_tbmc +ci_hdrc +ci_hdrc_msm +ci_hdrc_pci +ci_hdrc_usb2 +cicada +cifs +cifs_arc4 +cifs_md4 +cio-dac +cirrus +cirrusfb +ck804xrom +classmate-laptop +clip +clk-cdce706 +clk-cs2000-cp +clk-lmk04832 +clk-max9485 +clk-palmas +clk-pwm +clk-si5341 +clk-si5351 +clk-si544 +clk-tps68470 +clk-twl6040 +clk-wm831x +cls_basic +cls_bpf +cls_cgroup +cls_flow +cls_flower +cls_fw +cls_matchall +cls_route +cls_u32 +cm109 +cm32181 +cm3232 +cm3323 +cm3605 +cm36651 +cma3000_d0x +cma3000_d0x_i2c +cmac +cmdlinepart +cnic +cobra +coda +colibri-vf50-ts +com20020 +com20020-pci +com20020_cs +com90io +com90xx +comedi +comedi_8255 +comedi_bond +comedi_example_test +comedi_parport +comedi_pci +comedi_pcmcia +comedi_test +comedi_usb +comm +compal-laptop +contec_pci_dio +cordic +core +coretemp +cortina +counter +cp210x +cpcihp_generic +cpcihp_zt5550 +cpu5wdt +cpuid +cpuidle-haltpoll +cqhci +cr_bllcd +cramfs +crc-itu-t +crc32-pclmul +crc32_generic +crc4 +crc7 +crc8 +crct10dif-pclmul +cros-ec-cec +cros-ec-sensorhub +cros-ec-typec +cros_ec +cros_ec_accel_legacy +cros_ec_baro +cros_ec_chardev +cros_ec_debugfs +cros_ec_dev +cros_ec_i2c +cros_ec_ishtp +cros_ec_keyb +cros_ec_lid_angle +cros_ec_light_prox +cros_ec_lightbar +cros_ec_lpcs +cros_ec_mkbp_proximity +cros_ec_sensors +cros_ec_sensors_core +cros_ec_spi +cros_ec_sysfs +cros_ec_uart +cros_hps_i2c +cros_kbd_led_backlight +cros_peripheral_charger +cros_typec_switch +cros_usbpd-charger +cros_usbpd_logger +cros_usbpd_notify +crvml +cryptd +crypto_engine +crypto_safexcel +crypto_simd +crypto_user +cs3308 +cs5345 +cs53l32a +csiostor +ct82c710 +ctucanfd +ctucanfd_pci +curve25519-generic +curve25519-x86_64 +cuse +cw1200_core +cw1200_wlan_sdio +cw1200_wlan_spi +cw2015_battery +cx18 +cx22700 +cx22702 +cx231xx +cx231xx-dvb +cx2341x +cx24110 +cx24113 +cx24116 +cx24117 +cx24120 +cx24123 +cx25821 +cx25840 +cx82310_eth +cx88-blackbird +cx88-dvb +cx88-vp3054-i2c +cx8800 +cx8802 +cx88xx +cxacru +cxd2099 +cxd2820r +cxd2841er +cxd2880 +cxd2880-spi +cxgb +cxgb3 +cxgb3i +cxgb4 +cxgb4i +cxgb4vf +cxgbit +cxl_acpi +cxl_core +cxl_mem +cxl_pci +cxl_pmem +cxl_pmu +cxl_port +cy8ctma140 +cy8ctmg110_ts +cyapatp +cyber2000fb +cyberjack +cypress_cy7c63 +cypress_firmware +cypress_m8 +cytherm +cyttsp4_core +cyttsp4_i2c +cyttsp4_spi +cyttsp5 +cyttsp_core +cyttsp_i2c +cyttsp_i2c_common +cyttsp_spi +da280 +da311 +da9030_battery +da9034-ts +da903x-regulator +da903x_bl +da9052-battery +da9052-hwmon +da9052-regulator +da9052_bl +da9052_onkey +da9052_tsi +da9052_wdt +da9055-hwmon +da9055-regulator +da9055_onkey +da9055_wdt +da9062-core +da9062-regulator +da9062_wdt +da9063_onkey +da9063_wdt +da9150-charger +da9150-core +da9150-fg +da9150-gpadc +da9210-regulator +da9211-regulator +daqboard2000 +davicom +dax_cxl +dax_hmem +dax_pmem +db9 +dc395x +dca +dccp +dccp_diag +dccp_ipv4 +dccp_ipv6 +dcdbas +ddbridge +ddbridge-dummy-fe +de2104x +defxx +dell-laptop +dell-rbtn +dell-smbios +dell-smm-hwmon +dell-smo8800 +dell-uart-backlight +dell-wmi +dell-wmi-aio +dell-wmi-ddv +dell-wmi-descriptor +dell-wmi-led +dell_rbu +delta-ahe50dc-fan +denali +denali_pci +des3_ede-x86_64 +des_generic +device_dax +dfl +dfl-afu +dfl-emif +dfl-fme +dfl-fme-br +dfl-fme-mgr +dfl-fme-region +dfl-n3000-nios +dfl-pci +dht11 +diag +dib0070 +dib0090 +dib3000mb +dib3000mc +dib7000m +dib7000p +dib8000 +dib9000 +dibx000_common +digi_acceleport +diskonchip +dl2k +dlhl60d +dlink-dir685-touchkeys +dlm +dln2 +dln2-adc +dm-bio-prison +dm-bufio +dm-cache +dm-cache-smq +dm-clone +dm-crypt +dm-delay +dm-ebs +dm-era +dm-flakey +dm-historical-service-time +dm-integrity +dm-io-affinity +dm-log +dm-log-userspace +dm-log-writes +dm-mirror +dm-multipath +dm-persistent-data +dm-queue-length +dm-raid +dm-region-hash +dm-round-robin +dm-service-time +dm-snapshot +dm-switch +dm-thin-pool +dm-unstripe +dm-verity +dm-writecache +dm-zero +dm-zoned +dm1105 +dm9601 +dmard06 +dmard09 +dmard10 +dme1737 +dmfe +dmi-sysfs +dmx3191d +dnet +dp83640 +dp83822 +dp83848 +dp83867 +dp83869 +dp83tc811 +dp83td510 +dpot-dac +dps310 +dps920ab +dptf_pch_fivr +dptf_power +drbd +drivetemp +drm +drm_buddy +drm_display_helper +drm_dma_helper +drm_kms_helper +drm_mipi_dbi +drm_shmem_helper +drm_suballoc_helper +drm_ttm_helper +drm_vram_helper +drm_xen_front +drv260x +drv2665 +drv2667 +drx39xyj +drxd +drxk +ds1621 +ds1682 +ds1803 +ds2482 +ds2490 +ds2760_battery +ds2780_battery +ds2781_battery +ds2782_battery +ds3000 +ds4424 +ds620 +dsa_core +dsbr100 +dst +dst_ca +dstr +dt3000 +dt3155 +dt9812 +dummy +dummy-irq +dummy_stm +dvb-as102 +dvb-bt8xx +dvb-core +dvb-pll +dvb-ttpci +dvb-ttusb-budget +dvb-usb +dvb-usb-a800 +dvb-usb-af9005 +dvb-usb-af9005-remote +dvb-usb-af9015 +dvb-usb-af9035 +dvb-usb-anysee +dvb-usb-au6610 +dvb-usb-az6007 +dvb-usb-az6027 +dvb-usb-ce6230 +dvb-usb-cinergyT2 +dvb-usb-cxusb +dvb-usb-dib0700 +dvb-usb-dibusb-common +dvb-usb-dibusb-mb +dvb-usb-dibusb-mc +dvb-usb-dibusb-mc-common +dvb-usb-digitv +dvb-usb-dtt200u +dvb-usb-dtv5100 +dvb-usb-dvbsky +dvb-usb-dw2102 +dvb-usb-ec168 +dvb-usb-gl861 +dvb-usb-gp8psk +dvb-usb-lmedm04 +dvb-usb-m920x +dvb-usb-mxl111sf +dvb-usb-nova-t-usb2 +dvb-usb-opera +dvb-usb-pctv452e +dvb-usb-rtl28xxu +dvb-usb-technisat-usb2 +dvb-usb-ttusb2 +dvb-usb-umt-010 +dvb-usb-vp702x +dvb-usb-vp7045 +dvb_dummy_fe +dvb_usb_v2 +dw-edma +dw-edma-pcie +dw-i3c-master +dw-xdata-pcie +dw9714 +dw9807-vcm +dw_dmac +dw_dmac_core +dw_dmac_pci +dw_wdt +dwc-xlgmac +dwc2_pci +dwc3 +dwc3-haps +dwc3-pci +dwmac-generic +dwmac-intel +dwmac-loongson +dyna_pci10xx +dynapro +e100 +e1000 +e1000e +e3x0-button +e4000 +e752x_edac +earth-pt1 +earth-pt3 +ebc-c384_wdt +ebt_802_3 +ebt_among +ebt_arp +ebt_arpreply +ebt_dnat +ebt_ip +ebt_ip6 +ebt_limit +ebt_log +ebt_mark +ebt_mark_m +ebt_nflog +ebt_pkttype +ebt_redirect +ebt_snat +ebt_stp +ebt_vlan +ebtable_broute +ebtable_filter +ebtable_nat +ebtables +ec100 +ec_bhf +ec_sys +ecc +ecdh_generic +ecdsa_generic +echainiv +echo +ecrdsa_generic +edac_mce_amd +edt-ft5x06 +ee1004 +eeepc-laptop +eeepc-wmi +eeprom +eeprom_93cx6 +eeprom_93xx46 +eeti_ts +efa +efct +efi-pstore +efi_secret +efi_test +efibc +efs +egalax_ts_serial +ehci-fsl +ehset +einj +ektf2127 +elan_i2c +elo +em28xx +em28xx-dvb +em28xx-rc +em28xx-v4l +em_canid +em_cmp +em_ipset +em_ipt +em_meta +em_nbyte +em_text +em_u32 +emc1403 +emc2103 +emc2305 +emc6w201 +emi26 +emi62 +empeg +ems_pci +ems_pcmcia +ems_usb +emu10k1-gp +ena +enc28j60 +enclosure +encx24j600 +encx24j600-regmap +ene_ir +eni +eni_vdpa +enic +envelope-detector +epat +epia +epic100 +eql +erdma +erofs +esas2r +esb2rom +esd_usb +esp4 +esp4_offload +esp6 +esp6_offload +esp_scsi +essiv +et1011c +et131x +et8ek8 +etas_es58x +ethoc +eurotechwdt +evbug +exar_wdt +exc3000 +exfat +extcon-adc-jack +extcon-axp288 +extcon-fsa9480 +extcon-gpio +extcon-intel-cht-wc +extcon-intel-int3496 +extcon-intel-mrfld +extcon-max14577 +extcon-max3355 +extcon-max77693 +extcon-max77843 +extcon-max8997 +extcon-palmas +extcon-ptn5150 +extcon-rt8973a +extcon-sm5502 +extcon-usb-gpio +extcon-usbc-cros-ec +ezusb +f2fs +f71805f +f71808e_wdt +f71882fg +f75375s +f81232 +f81534 +f81601 +f81604 +fakelb +fam15h_power +fan53555 +farsync +faulty +fb_agm1264k-fl +fb_bd663474 +fb_ddc +fb_hx8340bn +fb_hx8347d +fb_hx8353d +fb_hx8357d +fb_ili9163 +fb_ili9320 +fb_ili9325 +fb_ili9340 +fb_ili9341 +fb_ili9481 +fb_ili9486 +fb_pcd8544 +fb_ra8875 +fb_s6d02a1 +fb_s6d1121 +fb_seps525 +fb_sh1106 +fb_ssd1289 +fb_ssd1305 +fb_ssd1306 +fb_ssd1325 +fb_ssd1331 +fb_ssd1351 +fb_st7735r +fb_st7789v +fb_tinylcd +fb_tls8204 +fb_uc1611 +fb_uc1701 +fb_upd161704 +fbtft +fc0011 +fc0012 +fc0013 +fc2580 +fcoe +fcrypt +fdomain +fdomain_cs +fdomain_pci +fdp +fdp_i2c +fealnx +ff-memless +fieldbus_dev +fintek-cir +firedtv +firewire-core +firewire-net +firewire-ohci +firewire-sbp2 +firmware_attributes_class +fit2 +fit3 +fixed +fjes +floppy +fm10k +fm801-gp +fm_drv +fmvj18x_cs +fnic +forcedeth +fore_200e +fou +fou6 +fpga-bridge +fpga-mgr +fpga-region +freevxfs +friq +frpw +fsa4480 +fscache +fschmd +fsia6b +fsl-mph-dr-of +fsl_linflexuart +fsl_lpuart +fsp-3y +ftdi_sio +ftl +ftrace-direct +ftrace-direct-modify +ftrace-direct-too +ftsteutates +fujitsu-laptop +fujitsu-tablet +fujitsu_ts +funcore +funeth +fusb302 +fxas21002c_core +fxas21002c_i2c +fxas21002c_spi +fxls8962af-core +fxls8962af-i2c +fxls8962af-spi +fxos8700_core +fxos8700_i2c +fxos8700_spi +g450_pll +g760a +g762 +g_acm_ms +g_cdc +g_dbgp +g_ether +g_ffs +g_hid +g_mass_storage +g_ncm +g_nokia +g_printer +g_serial +g_webcam +g_zero +gadgetfs +gamecon +gameport +garmin_gps +garp +gb-bootrom +gb-es2 +gb-firmware +gb-gbphy +gb-gpio +gb-hid +gb-i2c +gb-light +gb-log +gb-loopback +gb-power-supply +gb-pwm +gb-raw +gb-sdio +gb-spi +gb-spilib +gb-uart +gb-usb +gb-vibrator +gdmtty +gdmulte +gen_probe +generic +generic-adc-battery +genet +geneve +genwqe_card +gf2k +gfs2 +ghash-clmulni-intel +gigabyte-wmi +gl518sm +gl520sm +gl620a +gluebi +gm12u320 +gma500_gfx +gnss +gnss-mtk +gnss-serial +gnss-sirf +gnss-ubx +gnss-usb +goku_udc +goldfish_battery +goodix_ts +gp2ap002 +gp2ap020a00f +gp8psk-fe +gpd-pocket-fan +gpio +gpio-104-dio-48e +gpio-104-idi-48 +gpio-104-idio-16 +gpio-adp5520 +gpio-aggregator +gpio-amd-fch +gpio-amd8111 +gpio-amdpt +gpio-arizona +gpio-bd9571mwv +gpio-beeper +gpio-charger +gpio-da9052 +gpio-da9055 +gpio-dln2 +gpio-dwapb +gpio-elkhartlake +gpio-exar +gpio-f7188x +gpio-fxl6408 +gpio-gpio-mm +gpio-i8255 +gpio-ich +gpio-idio-16 +gpio-it87 +gpio-janz-ttl +gpio-kempld +gpio-latch +gpio-lp3943 +gpio-lp873x +gpio-madera +gpio-max3191x +gpio-max7300 +gpio-max7301 +gpio-max730x +gpio-max732x +gpio-mb86s7x +gpio-mc33880 +gpio-menz127 +gpio-ml-ioh +gpio-pca953x +gpio-pcf857x +gpio-pci-idio-16 +gpio-pcie-idio-24 +gpio-pisosr +gpio-rdc321x +gpio-regmap +gpio-regulator +gpio-sbu-mux +gpio-sch +gpio-sch311x +gpio-sim +gpio-siox +gpio-tangier +gpio-tpic2810 +gpio-tps65086 +gpio-tps65912 +gpio-tps68470 +gpio-tqmx86 +gpio-twl4030 +gpio-twl6040 +gpio-vibra +gpio-viperboard +gpio-virtio +gpio-vx855 +gpio-wcove +gpio-winbond +gpio-wm831x +gpio-wm8350 +gpio-wm8994 +gpio-ws16c48 +gpio-xra1403 +gpio_backlight +gpio_decoder +gpio_keys +gpio_keys_polled +gpio_mouse +gpu-sched +gr_udc +grace +gre +greybus +grip +grip_mp +gru +gs1662 +gs_usb +gsc_hpdi +gspca_benq +gspca_conex +gspca_cpia1 +gspca_dtcs033 +gspca_etoms +gspca_finepix +gspca_gl860 +gspca_jeilinj +gspca_jl2005bcd +gspca_kinect +gspca_konica +gspca_m5602 +gspca_main +gspca_mars +gspca_mr97310a +gspca_nw80x +gspca_ov519 +gspca_ov534 +gspca_ov534_9 +gspca_pac207 +gspca_pac7302 +gspca_pac7311 +gspca_se401 +gspca_sn9c2028 +gspca_sn9c20x +gspca_sonixb +gspca_sonixj +gspca_spca1528 +gspca_spca500 +gspca_spca501 +gspca_spca505 +gspca_spca506 +gspca_spca508 +gspca_spca561 +gspca_sq905 +gspca_sq905c +gspca_sq930x +gspca_stk014 +gspca_stk1135 +gspca_stv0680 +gspca_stv06xx +gspca_sunplus +gspca_t613 +gspca_topro +gspca_touptek +gspca_tv8532 +gspca_vc032x +gspca_vicam +gspca_xirlink_cit +gspca_zc3xx +gtp +gud +guillemot +gunze +gve +habanalabs +hackrf +hamachi +hampshire +hangcheck-timer +hanwang +hci +hctr2 +hd3ss3220 +hd44780 +hd44780_common +hdaps +hdc100x +hdlc +hdlc_cisco +hdlc_fr +hdlc_ppp +hdlc_raw +hdlc_raw_eth +hdlc_x25 +hdlcdrv +hdma +hdma_mgmt +hdpvr +he +hecubafb +helene +hellcreek_sw +hexium_gemini +hexium_orion +hfcmulti +hfcpci +hfcsusb +hfi1 +hfs +hfsplus +hgafb +hi311x +hi556 +hi8435 +hi846 +hi847 +hid +hid-a4tech +hid-accutouch +hid-alps +hid-apple +hid-appleir +hid-asus +hid-aureal +hid-axff +hid-belkin +hid-betopff +hid-bigbenff +hid-cherry +hid-chicony +hid-cmedia +hid-corsair +hid-cougar +hid-cp2112 +hid-creative-sb0540 +hid-cypress +hid-dr +hid-elan +hid-elecom +hid-elo +hid-emsff +hid-evision +hid-ezkey +hid-ft260 +hid-gaff +hid-gembird +hid-generic +hid-gfrm +hid-glorious +hid-google-hammer +hid-gt683r +hid-gyration +hid-holtek-kbd +hid-holtek-mouse +hid-holtekff +hid-hyperv +hid-icade +hid-ite +hid-jabra +hid-kensington +hid-keytouch +hid-kye +hid-lcpower +hid-led +hid-lenovo +hid-letsketch +hid-lg-g15 +hid-logitech +hid-logitech-dj +hid-logitech-hidpp +hid-macally +hid-magicmouse +hid-maltron +hid-mcp2221 +hid-megaworld +hid-mf +hid-microsoft +hid-monterey +hid-multitouch +hid-nintendo +hid-nti +hid-ntrig +hid-ortek +hid-penmount +hid-petalynx +hid-picolcd +hid-pl +hid-plantronics +hid-playstation +hid-primax +hid-pxrc +hid-razer +hid-redragon +hid-retrode +hid-rmi +hid-roccat +hid-roccat-arvo +hid-roccat-common +hid-roccat-isku +hid-roccat-kone +hid-roccat-koneplus +hid-roccat-konepure +hid-roccat-kovaplus +hid-roccat-lua +hid-roccat-pyra +hid-roccat-ryos +hid-roccat-savu +hid-saitek +hid-samsung +hid-semitek +hid-sensor-accel-3d +hid-sensor-als +hid-sensor-custom +hid-sensor-custom-intel-hinge +hid-sensor-gyro-3d +hid-sensor-hub +hid-sensor-humidity +hid-sensor-iio-common +hid-sensor-incl-3d +hid-sensor-magn-3d +hid-sensor-press +hid-sensor-prox +hid-sensor-rotation +hid-sensor-temperature +hid-sensor-trigger +hid-sigmamicro +hid-sjoy +hid-sony +hid-speedlink +hid-steam +hid-steelseries +hid-sunplus +hid-thrustmaster +hid-tivo +hid-tmff +hid-topre +hid-topseed +hid-twinhan +hid-u2fzero +hid-uclogic +hid-udraw-ps3 +hid-viewsonic +hid-vivaldi +hid-vivaldi-common +hid-vrc2 +hid-waltop +hid-wiimote +hid-xiaomi +hid-xinmo +hid-zpff +hid-zydacron +hideep +hih6130 +himax_hx83112b +hinic +hmc425a +hmc5843_core +hmc5843_i2c +hmc5843_spi +hmc6352 +hopper +horus3a +hostap +hostap_cs +hostap_pci +hostap_plx +hp-wmi +hp-wmi-sensors +hp03 +hp206c +hp_accel +hpfs +hpilo +hpsa +hptiop +hpwdt +hsi +hsi_char +hso +hsr +ht16k33 +hts221 +hts221_i2c +hts221_spi +htu21 +huawei-wmi +huawei_cdc_ncm +hv_balloon +hv_netvsc +hv_sock +hv_storvsc +hv_utils +hv_vmbus +hwmon-vid +hwpoison-inject +hx711 +hx8357 +hx8357d +hycon-hy46xx +hynitron_cstxxx +hyperbus-core +hyperv-keyboard +hyperv_drm +i10nm_edac +i2c-algo-bit +i2c-algo-pca +i2c-ali1535 +i2c-ali1563 +i2c-ali15x3 +i2c-amd-mp2-pci +i2c-amd-mp2-plat +i2c-amd756 +i2c-amd756-s4882 +i2c-amd8111 +i2c-cbus-gpio +i2c-ccgx-ucsi +i2c-cht-wc +i2c-cp2615 +i2c-cros-ec-tunnel +i2c-designware-pci +i2c-diolan-u2c +i2c-dln2 +i2c-gpio +i2c-hid +i2c-hid-acpi +i2c-hid-of +i2c-i801 +i2c-isch +i2c-ismt +i2c-kempld +i2c-matroxfb +i2c-mchp-pci1xxxx +i2c-mlxcpld +i2c-mux +i2c-mux-gpio +i2c-mux-ltc4306 +i2c-mux-mlxcpld +i2c-mux-pca9541 +i2c-mux-pca954x +i2c-mux-reg +i2c-nforce2 +i2c-nforce2-s4985 +i2c-nvidia-gpu +i2c-ocores +i2c-parport +i2c-pca-platform +i2c-piix4 +i2c-robotfuzz-osif +i2c-scmi +i2c-simtec +i2c-sis5595 +i2c-sis630 +i2c-sis96x +i2c-smbus +i2c-stub +i2c-taos-evm +i2c-tiny-usb +i2c-via +i2c-viapro +i2c-viperboard +i2c-virtio +i2c-xiic +i3000_edac +i3200_edac +i3c +i3c-master-cdns +i40e +i5100_edac +i5400_edac +i5500_temp +i5k_amb +i6300esb +i7300_edac +i740fb +i7core_edac +i82092 +i82975x_edac +i915 +iTCO_vendor_support +iTCO_wdt +iavf +ib700wdt +ib_cm +ib_core +ib_ipoib +ib_iser +ib_isert +ib_mthca +ib_qib +ib_srp +ib_srpt +ib_umad +ib_uverbs +ibm-cffps +ibm_rtl +ibmaem +ibmasm +ibmasr +ibmpex +ice +ichxrom +icp10100 +icp_multi +icplus +ics932s401 +ideapad-laptop +ideapad_slidebar +idma64 +idmouse +idt77252 +idt_89hpesx +idt_gen2 +idt_gen3 +idtcps +idxd +idxd_bus +ie31200_edac +ie6xx_wdt +ieee802154 +ieee802154_6lowpan +ieee802154_socket +ifb +ifcvf +ife +ifi_canfd +iforce +iforce-serio +iforce-usb +igb +igbvf +igc +igen6_edac +igorplugusb +iguanair +iio-mux +iio-rescale +iio-trig-hrtimer +iio-trig-interrupt +iio-trig-loop +iio-trig-sysfs +iio_dummy +iio_hwmon +ila +ili210x +ili9163 +ili9225 +ili922x +ili9320 +ili9341 +ili9486 +ilitek_ts_i2c +img-ascii-lcd +imm +imon +imon_raw +ims-pcu +imx208 +imx214 +imx219 +imx258 +imx274 +imx290 +imx296 +imx319 +imx355 +ina209 +ina238 +ina2xx +ina2xx-adc +ina3221 +industrialio +industrialio-buffer-cb +industrialio-buffer-dma +industrialio-buffer-dmaengine +industrialio-configfs +industrialio-gts-helper +industrialio-hw-consumer +industrialio-sw-device +industrialio-sw-trigger +industrialio-triggered-buffer +industrialio-triggered-event +inet_diag +inexio +inftl +initio +input-leds +inspur-ipsps +int3400_thermal +int3401_thermal +int3402_thermal +int3403_thermal +int3406_thermal +int340x_thermal_zone +int51x1 +intel-cstate +intel-hid +intel-ish-ipc +intel-ishtp +intel-ishtp-hid +intel-ishtp-loader +intel-lpss +intel-lpss-acpi +intel-lpss-pci +intel-m10-bmc-core +intel-m10-bmc-hwmon +intel-m10-bmc-pmci +intel-m10-bmc-sec-update +intel-m10-bmc-spi +intel-qep +intel-rng +intel-rst +intel-smartconnect +intel-uncore-frequency +intel-uncore-frequency-common +intel-uncore-frequency-tpmi +intel-vbtn +intel-wmi-sbl-fw-update +intel-wmi-thunderbolt +intel-xhci-usb-role-switch +intel-xway +intel_atomisp2_pm +intel_bxt_pmic_thermal +intel_bxtwc_tmu +intel_bytcrc_pwrsrc +intel_chtdc_ti_pwrbtn +intel_chtwc_int33fe +intel_crystal_cove_charger +intel_ifs +intel_int0002_vgpio +intel_ips +intel_mrfld_adc +intel_mrfld_pwrbtn +intel_oaktrail +intel_pch_thermal +intel_pmc_bxt +intel_pmc_mux +intel_powerclamp +intel_punit_ipc +intel_qat +intel_quark_i2c_gpio +intel_rapl_common +intel_rapl_msr +intel_rapl_tpmi +intel_sar +intel_scu_ipcutil +intel_scu_pltdrv +intel_sdsi +intel_skl_int3472_discrete +intel_skl_int3472_tps68470 +intel_soc_dts_iosf +intel_soc_dts_thermal +intel_soc_pmic_bxtwc +intel_soc_pmic_chtdc_ti +intel_soc_pmic_mrfld +intel_tcc_cooling +intel_telemetry_core +intel_telemetry_debugfs +intel_telemetry_pltdrv +intel_th +intel_th_acpi +intel_th_gth +intel_th_msu +intel_th_msu_sink +intel_th_pci +intel_th_pti +intel_th_sth +intel_vpu +intel_vr_nor +intel_vsec +intel_vsec_tpmi +intelfb +interact +interrupt-cnt +inv-mpu6050 +inv-mpu6050-i2c +inv-mpu6050-spi +io_edgeport +io_ti +ioatdma +iommu_v2 +iommufd +ionic +iosm +iowarrior +ip5xxx_power +ip6_gre +ip6_tables +ip6_tunnel +ip6_udp_tunnel +ip6_vti +ip6t_NPT +ip6t_REJECT +ip6t_SYNPROXY +ip6t_ah +ip6t_eui64 +ip6t_frag +ip6t_hbh +ip6t_ipv6header +ip6t_mh +ip6t_rpfilter +ip6t_rt +ip6t_srh +ip6table_filter +ip6table_mangle +ip6table_nat +ip6table_raw +ip6table_security +ip_gre +ip_set +ip_set_bitmap_ip +ip_set_bitmap_ipmac +ip_set_bitmap_port +ip_set_hash_ip +ip_set_hash_ipmac +ip_set_hash_ipmark +ip_set_hash_ipport +ip_set_hash_ipportip +ip_set_hash_ipportnet +ip_set_hash_mac +ip_set_hash_net +ip_set_hash_netiface +ip_set_hash_netnet +ip_set_hash_netport +ip_set_hash_netportnet +ip_set_list_set +ip_tables +ip_tunnel +ip_vs +ip_vs_dh +ip_vs_fo +ip_vs_ftp +ip_vs_lblc +ip_vs_lblcr +ip_vs_lc +ip_vs_mh +ip_vs_nq +ip_vs_ovf +ip_vs_pe_sip +ip_vs_rr +ip_vs_sed +ip_vs_sh +ip_vs_twos +ip_vs_wlc +ip_vs_wrr +ip_vti +ipack +ipaq +ipcomp +ipcomp6 +iphase +ipheth +ipip +ipmi_devintf +ipmi_msghandler +ipmi_poweroff +ipmi_si +ipmi_ssif +ipmi_watchdog +ipoctal +ipr +ips +ipt_ECN +ipt_REJECT +ipt_SYNPROXY +ipt_ah +ipt_rpfilter +iptable_filter +iptable_mangle +iptable_nat +iptable_raw +iptable_security +ipu-bridge +ipu3-cio2 +ipu3-imgu +ipvlan +ipvtap +ipw +ipw2100 +ipw2200 +ipwireless +iqs269a +iqs5xx +iqs620at-temp +iqs621-als +iqs624-pos +iqs626a +iqs62x +iqs62x-keys +iqs7222 +ir-imon-decoder +ir-jvc-decoder +ir-kbd-i2c +ir-mce_kbd-decoder +ir-nec-decoder +ir-rc5-decoder +ir-rc6-decoder +ir-rcmm-decoder +ir-sanyo-decoder +ir-sharp-decoder +ir-sony-decoder +ir-usb +ir-xmp-decoder +ir35221 +ir36021 +ir38064 +irdma +irps5401 +irq-madera +irqbypass +isci +iscsi_boot_sysfs +iscsi_ibft +iscsi_target_mod +iscsi_tcp +isdnhdlc +ishtp_eclite +isight_firmware +isl29003 +isl29018 +isl29020 +isl29028 +isl29125 +isl29501 +isl6271a-regulator +isl6405 +isl6421 +isl6423 +isl68137 +isl9305 +isofs +isp116x-hcd +isp1704_charger +isp1760 +isst_if_common +isst_if_mbox_msr +isst_if_mbox_pci +isst_if_mmio +isst_tpmi +isst_tpmi_core +it87 +it8712f_wdt +it87_wdt +it913x +itd1000 +ite-cir +itg3200 +iuu_phoenix +ivtv +ivtvfb +iw_cm +iw_cxgb4 +iwl3945 +iwl4965 +iwldvm +iwlegacy +iwlmvm +iwlwifi +ix2505v +ixgbe +ixgbevf +janz-cmodio +janz-ican3 +jc42 +jedec_probe +jffs2 +jfs +jmb38x_ms +jme +joydev +joydump +jr3_pci +jsa1212 +jsm +k10temp +k8temp +kafs +kalmia +kaweth +kb3886_bl +kbic +kbtab +kcm +kcomedilib +ke_counter +kempld-core +kempld_wdt +keyspan +keyspan_pda +keyspan_remote +keywrap +kfifo_buf +kheaders +kionix-kx022a +kionix-kx022a-i2c +kionix-kx022a-spi +kl5kusb105 +kmem +kmx61 +kobil_sct +ks0108 +ks0127 +ks7010 +ks8842 +ks8851_common +ks8851_par +ks8851_spi +ksmbd +ksz884x +ksz8863_smi +ksz9477_i2c +ksz_spi +ksz_switch +ktti +ktz8866 +kvaser_pci +kvaser_pciefd +kvaser_usb +kvm +kvm-amd +kvm-intel +kvmgt +kxcjk-1013 +kxsd9 +kxsd9-i2c +kxsd9-spi +kxtj9 +kyber-iosched +kyrofb +l1oip +l2tp_core +l2tp_debugfs +l2tp_eth +l2tp_ip +l2tp_ip6 +l2tp_netlink +l2tp_ppp +l440gx +l4f00242t03 +l64781 +lan743x +lan78xx +lan9303-core +lan9303_i2c +lan9303_mdio +lanai +lantiq +lantiq_gswip +lapb +lapbether +lattice-ecp3-config +lattice-sysconfig +lattice-sysconfig-spi +lcd +lcd2s +ldusb +lec +led-class-flash +led-class-multicolor +leds-88pm860x +leds-adp5520 +leds-apu +leds-as3645a +leds-aw200xx +leds-bd2606mvv +leds-bd2802 +leds-blinkm +leds-cht-wcove +leds-da903x +leds-da9052 +leds-dac124s085 +leds-gpio +leds-is31fl319x +leds-lm3530 +leds-lm3532 +leds-lm3533 +leds-lm355x +leds-lm3601x +leds-lm36274 +leds-lm3642 +leds-lp3944 +leds-lp3952 +leds-lp8788 +leds-lt3593 +leds-max8997 +leds-mc13783 +leds-menf21bmc +leds-mlxcpld +leds-mlxreg +leds-mt6323 +leds-mt6370-flash +leds-mt6370-rgb +leds-nic78bx +leds-pca9532 +leds-pca955x +leds-pca963x +leds-pwm +leds-pwm-multicolor +leds-regulator +leds-sgm3140 +leds-ss4200 +leds-tca6507 +leds-ti-lmu-common +leds-tlc591xx +leds-tps6105x +leds-wm831x-status +leds-wm8350 +ledtrig-activity +ledtrig-audio +ledtrig-backlight +ledtrig-camera +ledtrig-default-on +ledtrig-heartbeat +ledtrig-netdev +ledtrig-oneshot +ledtrig-pattern +ledtrig-timer +ledtrig-transient +ledtrig-tty +ledtrig-usbport +legousbtower +lenovo-ymc +lenovo-yogabook +lg-laptop +lg-vl600 +lg2160 +lgdt3305 +lgdt3306a +lgdt330x +lgs8gl5 +lgs8gxx +lib80211 +lib80211_crypt_ccmp +lib80211_crypt_tkip +lib80211_crypt_wep +libahci +libahci_platform +libarc4 +libceph +libchacha +libchacha20poly1305 +libcomposite +libcrc32c +libcurve25519 +libcurve25519-generic +libcxgb +libcxgbi +libdes +libertas +libertas_cs +libertas_sdio +libertas_spi +libertas_tf +libertas_tf_usb +libfc +libfcoe +libipw +libiscsi +libiscsi_tcp +libpoly1305 +libsas +libwx +lightning +line-display +lineage-pem +linear +liquidio +liquidio-core +liquidio_vf +lis3lv02d +lis3lv02d_i2c +lkkbd +ll_temac +llc +llc2 +lm25066 +lm3533-als +lm3533-core +lm3533-ctrlbank +lm3533_bl +lm3560 +lm3630a_bl +lm3639_bl +lm363x-regulator +lm3646 +lm63 +lm70 +lm73 +lm75 +lm77 +lm78 +lm80 +lm83 +lm8323 +lm8333 +lm85 +lm87 +lm90 +lm92 +lm93 +lm95234 +lm95241 +lm95245 +lmp91000 +lms283gf05 +lms501kf03 +lnbh25 +lnbh29 +lnbp21 +lnbp22 +lockd +lp +lp3943 +lp3971 +lp3972 +lp855x_bl +lp8727_charger +lp872x +lp873x +lp8755 +lp8788-buck +lp8788-charger +lp8788-ldo +lp8788_adc +lp8788_bl +lpc_ich +lpc_sch +lpddr_cmds +lpfc +lru_cache +lrw +lt3651-charger +lt7182s +ltc1660 +ltc2471 +ltc2485 +ltc2496 +ltc2497 +ltc2497-core +ltc2632 +ltc2688 +ltc2941-battery-gauge +ltc2945 +ltc2947-core +ltc2947-i2c +ltc2947-spi +ltc2978 +ltc2983 +ltc2990 +ltc2992 +ltc3589 +ltc3676 +ltc3815 +ltc4151 +ltc4162-l-charger +ltc4215 +ltc4222 +ltc4245 +ltc4260 +ltc4261 +ltr501 +ltrf216a +ltv350qv +lv0104cs +lv5207lp +lvstest +lxt +lz4 +lz4_compress +lz4hc +lz4hc_compress +m2m-deinterlace +m52790 +m62332 +m88ds3103 +m88rs2000 +m88rs6000t +mISDN_core +mISDN_dsp +mISDNinfineon +mISDNipac +mISDNisar +m_can +m_can_pci +m_can_platform +mac-celtic +mac-centeuro +mac-croatian +mac-cyrillic +mac-gaelic +mac-greek +mac-iceland +mac-inuit +mac-roman +mac-romanian +mac-turkish +mac80211 +mac80211_hwsim +mac802154 +mac802154_hwsim +mac_hid +macb +macb_pci +machxo2-spi +machzwd +macmodes +macsec +macvlan +macvtap +madera +madera-i2c +madera-spi +mag3110 +magellan +mailbox-altera +mana +mana_ib +mantis +mantis_core +map_absent +map_funcs +map_ram +map_rom +marvell +marvell-88x2222 +marvell10g +matrix-keymap +matrix_keypad +matrox_w1 +matroxfb_DAC1064 +matroxfb_Ti3026 +matroxfb_accel +matroxfb_base +matroxfb_crtc2 +matroxfb_g450 +matroxfb_maven +matroxfb_misc +max1027 +max11100 +max1111 +max1118 +max11205 +max11410 +max11801_ts +max1241 +max127 +max1363 +max14577-regulator +max14577_charger +max15301 +max1586 +max16064 +max16065 +max1619 +max16601 +max1668 +max17040_battery +max17042_battery +max1721x_battery +max197 +max20086-regulator +max20411-regulator +max20730 +max20751 +max2165 +max2175 +max30100 +max30102 +max30208 +max3100 +max31722 +max31730 +max31760 +max31785 +max31790 +max31827 +max31856 +max31865 +max3420_udc +max3421-hcd +max34440 +max44000 +max44009 +max517 +max5432 +max5481 +max5487 +max5522 +max5821 +max63xx_wdt +max6620 +max6621 +max6639 +max6650 +max6697 +max6875 +max7359_keypad +max77541 +max77541-adc +max77541-regulator +max77693-haptic +max77693-regulator +max77693_charger +max77826-regulator +max77976_charger +max8649 +max8660 +max8688 +max8893 +max8903_charger +max8907 +max8907-regulator +max8925-regulator +max8925_bl +max8925_onkey +max8925_power +max8952 +max8997-regulator +max8997_charger +max8997_haptic +max8998 +max8998_charger +max9271 +max9611 +maxim_thermocouple +mb1232 +mb862xxfb +mb86a16 +mb86a20s +mc +mc13783-adc +mc13783-pwrbutton +mc13783-regulator +mc13783_ts +mc13892-regulator +mc13xxx-core +mc13xxx-i2c +mc13xxx-regulator-core +mc13xxx-spi +mc3230 +mc34vr500 +mc44s803 +mcam-core +mcb +mcb-lpc +mcb-pci +mcba_usb +mce-inject +mceusb +mchp23k256 +mchp48l640 +mchp_pci1xxxx_gp +mchp_pci1xxxx_gpio +mcp251x +mcp251xfd +mcp3021 +mcp320x +mcp3422 +mcp3911 +mcp4018 +mcp41010 +mcp4131 +mcp4531 +mcp4725 +mcp4922 +mcr20a +mcs5000_ts +mcs7830 +mcs_touchkey +mct_u232 +mctp-serial +md-cluster +md4 +mdc800 +mdev +mdio +mdio-bcm-unimac +mdio-bitbang +mdio-cavium +mdio-gpio +mdio-i2c +mdio-mscc-miim +mdio-mvusb +mdio-regmap +mdio-thunder +me_daq +mediatek-ge +megaraid +megaraid_mbox +megaraid_mm +megaraid_sas +mei +mei-gsc +mei-me +mei-txe +mei_gsc_proxy +mei_hdcp +mei_phy +mei_pxp +mei_wdt +melfas_mip4 +memory-notifier-error-inject +memstick +men_z135_uart +men_z188_adc +mena21_wdt +menf21bmc +menf21bmc_hwmon +menf21bmc_wdt +menz69_wdt +meraki-mx100 +metro-usb +metronomefb +mf6x4 +mgag200 +mhi +mhi_ep +mhi_net +mhi_pci_generic +mhi_wwan_ctrl +mhi_wwan_mbim +mi0283qt +michael_mic +micrel +microchip +microchip-spi +microchip_t1 +microchip_t1s +microread +microread_i2c +microread_mei +microtek +mii +minix +mip6 +mipi-i3c-hci +mite +mkiss +ml86v7667 +mlx-platform +mlx4_core +mlx4_en +mlx4_ib +mlx5-vfio-pci +mlx5_core +mlx5_ib +mlx5_vdpa +mlx90614 +mlx90632 +mlx_wdt +mlxfw +mlxreg-fan +mlxreg-hotplug +mlxreg-io +mlxreg-lc +mlxsw_core +mlxsw_i2c +mlxsw_minimal +mlxsw_pci +mlxsw_spectrum +mma7455_core +mma7455_i2c +mma7455_spi +mma7660 +mma8450 +mma8452 +mma9551 +mma9551_core +mma9553 +mmc35240 +mmc_block +mmc_spi +mms114 +mn88443x +mn88472 +mn88473 +mos7720 +mos7840 +most_cdev +most_core +most_i2c +most_net +most_usb +most_video +motorcomm +moxa +mp2629 +mp2629_adc +mp2629_charger +mp2888 +mp2975 +mp5023 +mp8859 +mpi3mr +mpl115 +mpl115_i2c +mpl115_spi +mpl3115 +mpls_gso +mpls_iptunnel +mpls_router +mpoa +mpq7932 +mpr121_touchkey +mprls0025pa +mpt3sas +mptbase +mptcp_diag +mptctl +mptfc +mptlan +mptsas +mptscsih +mptspi +mpu3050 +mr75203 +mrf24j40 +mrp +ms5611_core +ms5611_i2c +ms5611_spi +ms5637 +ms_block +ms_sensors_i2c +msa311 +mscc +mscc_felix_dsa_lib +mscc_ocelot_ext +mscc_ocelot_switch_lib +mscc_seville +msdos +mse102x +msg2638 +msi-ec +msi-laptop +msi-wmi +msi001 +msi2500 +msp3400 +mspro_block +msr +mt2060 +mt2063 +mt20xx +mt2131 +mt2266 +mt312 +mt352 +mt6311-regulator +mt6315-regulator +mt6323-regulator +mt6331-regulator +mt6332-regulator +mt6357-regulator +mt6358-regulator +mt6359-regulator +mt6360-core +mt6360-regulator +mt6360_charger +mt6370 +mt6370-adc +mt6370-backlight +mt6370-charger +mt6370-regulator +mt6397 +mt6397-regulator +mt7530 +mt7530-mdio +mt7530-mmio +mt76 +mt76-connac-lib +mt76-sdio +mt76-usb +mt7601u +mt7603e +mt7615-common +mt7615e +mt7663-usb-sdio-common +mt7663s +mt7663u +mt76x0-common +mt76x02-lib +mt76x02-usb +mt76x0e +mt76x0u +mt76x2-common +mt76x2e +mt76x2u +mt7915e +mt7921-common +mt7921e +mt7921s +mt7921u +mt7996e +mt9m001 +mt9m111 +mt9p031 +mt9t112 +mt9v011 +mt9v032 +mt9v111 +mtd +mtd_blkdevs +mtd_dataflash +mtdblock +mtdblock_ro +mtdoops +mtdpstore +mtdram +mtdswap +mtip32xx +mtk-pmic-keys +mtk-sd +mtk_t7xx +mtouch +multipath +musb_hdrc +mux-adg792a +mux-adgs1408 +mux-core +mux-gpio +mv88e6060 +mv88e6xxx +mv_u3d_core +mv_udc +mvmdio +mvsas +mvumi +mwave +mwifiex +mwifiex_pcie +mwifiex_sdio +mwifiex_usb +mwl8k +mxb +mxc4005 +mxc6255 +mxic_nand +mxl-gpy +mxl111sf-demod +mxl111sf-tuner +mxl301rf +mxl5005s +mxl5007t +mxl5xx +mxl692 +mxm-wmi +mxser +mxuport +myrb +myri10ge +myrs +n411 +n5pf +n_gsm +n_hdlc +nand +nandcore +nandsim +national +natsemi +nau7802 +navman +nb7vpq904m +nbd +nci +nci_spi +nci_uart +ncn26000 +nct6683 +nct6775 +nct6775-core +nct6775-i2c +nct7802 +nct7904 +nd_btt +nd_pmem +nd_virtio +ne2k-pci +neofb +net1080 +net2272 +net2280 +netconsole +netdevsim +netfs +netjet +netlink_diag +netrom +nettel +netup-unidvb +netxen_nic +newtonkbd +nf_conncount +nf_conntrack +nf_conntrack_amanda +nf_conntrack_bridge +nf_conntrack_broadcast +nf_conntrack_ftp +nf_conntrack_h323 +nf_conntrack_irc +nf_conntrack_netbios_ns +nf_conntrack_netlink +nf_conntrack_pptp +nf_conntrack_sane +nf_conntrack_sip +nf_conntrack_snmp +nf_conntrack_tftp +nf_defrag_ipv4 +nf_defrag_ipv6 +nf_dup_ipv4 +nf_dup_ipv6 +nf_dup_netdev +nf_flow_table +nf_flow_table_inet +nf_log_syslog +nf_nat +nf_nat_amanda +nf_nat_ftp +nf_nat_h323 +nf_nat_irc +nf_nat_pptp +nf_nat_sip +nf_nat_snmp_basic +nf_nat_tftp +nf_reject_ipv4 +nf_reject_ipv6 +nf_socket_ipv4 +nf_socket_ipv6 +nf_synproxy_core +nf_tables +nf_tproxy_ipv4 +nf_tproxy_ipv6 +nfc +nfc_digital +nfcmrvl +nfcmrvl_i2c +nfcmrvl_spi +nfcmrvl_uart +nfcmrvl_usb +nfcsim +nfit +nfnetlink +nfnetlink_acct +nfnetlink_cthelper +nfnetlink_cttimeout +nfnetlink_hook +nfnetlink_log +nfnetlink_osf +nfnetlink_queue +nfp +nfs +nfs_acl +nfs_layout_flexfiles +nfs_layout_nfsv41_files +nfsd +nfsv2 +nfsv3 +nfsv4 +nft_chain_nat +nft_compat +nft_connlimit +nft_ct +nft_dup_ipv4 +nft_dup_ipv6 +nft_dup_netdev +nft_fib +nft_fib_inet +nft_fib_ipv4 +nft_fib_ipv6 +nft_fib_netdev +nft_flow_offload +nft_fwd_netdev +nft_hash +nft_limit +nft_log +nft_masq +nft_meta_bridge +nft_nat +nft_numgen +nft_osf +nft_queue +nft_quota +nft_redir +nft_reject +nft_reject_bridge +nft_reject_inet +nft_reject_ipv4 +nft_reject_ipv6 +nft_reject_netdev +nft_socket +nft_synproxy +nft_tproxy +nft_tunnel +nft_xfrm +nftl +ngbe +ngene +nhc_dest +nhc_fragment +nhc_hop +nhc_ipv6 +nhc_mobility +nhc_routing +nhc_udp +nhpoly1305 +nhpoly1305-avx2 +nhpoly1305-sse2 +ni903x_wdt +ni_6527 +ni_65xx +ni_660x +ni_670x +ni_daq_700 +ni_daq_dio24 +ni_mio_cs +ni_pcidio +ni_pcimio +ni_routes_test +ni_routing +ni_tio +ni_tiocmd +ni_usb6501 +nic7018_wdt +nicpf +nicstar +nicvf +nilfs2 +nitro_enclaves +niu +nixge +nlmon +nls_ascii +nls_cp1250 +nls_cp1251 +nls_cp1255 +nls_cp737 +nls_cp775 +nls_cp850 +nls_cp852 +nls_cp855 +nls_cp857 +nls_cp860 +nls_cp861 +nls_cp862 +nls_cp863 +nls_cp864 +nls_cp865 +nls_cp866 +nls_cp869 +nls_cp874 +nls_cp932 +nls_cp936 +nls_cp949 +nls_cp950 +nls_euc-jp +nls_iso8859-1 +nls_iso8859-13 +nls_iso8859-14 +nls_iso8859-15 +nls_iso8859-2 +nls_iso8859-3 +nls_iso8859-4 +nls_iso8859-5 +nls_iso8859-6 +nls_iso8859-7 +nls_iso8859-9 +nls_koi8-r +nls_koi8-ru +nls_koi8-u +nls_utf8 +nmclan_cs +noa1305 +nosy +notifier-error-inject +nouveau +novatek-nvt-ts +nozomi +npcm750-pwm-fan +ns558 +ns83820 +nsh +ntb +ntb_hw_epf +ntb_hw_idt +ntb_hw_intel +ntb_hw_switchtec +ntb_netdev +ntb_perf +ntb_pingpong +ntb_tool +ntb_transport +ntc_thermistor +ntfs +ntfs3 +null_blk +nuvoton-cir +nv_tco +nvidia-wmi-ec-backlight +nvidiafb +nvme-fabrics +nvme-fc +nvme-loop +nvme-rdma +nvme-tcp +nvmem-rave-sp-eeprom +nvmem-rmem +nvmem_qcom-spmi-sdam +nvmet +nvmet-fc +nvmet-rdma +nvmet-tcp +nvram +nvsw-sn2201 +nxp-c45-tja11xx +nxp-cbtx +nxp-nci +nxp-nci_i2c +nxp-tja11xx +nxt200x +nxt6000 +nzxt-kraken2 +nzxt-smart2 +objagg +occ-hwmon-common +occ-p8-hwmon +ocelot-soc +ocfb +ocfs2 +ocfs2_dlm +ocfs2_dlmfs +ocfs2_nodemanager +ocfs2_stack_o2cb +ocfs2_stack_user +ocfs2_stackglue +ocrdma +octeon_ep +of_mmc_spi +of_xilinx_wdt +ofb +og01a1b +omfs +omninet +on20 +on26 +onenand +onie-tlv +opa_vnic +opencores-kbd +openvswitch +opt3001 +opt4001 +opticon +option +or51132 +or51211 +orangefs +orinoco +orinoco_cs +orinoco_nortel +orinoco_plx +orinoco_tmd +orinoco_usb +oti6858 +otm3225a +ov01a10 +ov08d10 +ov08x40 +ov13858 +ov13b10 +ov2640 +ov2659 +ov2680 +ov2685 +ov2740 +ov4689 +ov5647 +ov5648 +ov5670 +ov5675 +ov5693 +ov5695 +ov6650 +ov7251 +ov7640 +ov7670 +ov772x +ov7740 +ov8856 +ov8858 +ov8865 +ov9640 +ov9650 +overlay +oxp-sensors +oxu210hp-hcd +p4-clockmod +p54common +p54pci +p54spi +p54usb +p8022 +pa12203001 +padlock-aes +padlock-sha +palmas-pwrbutton +palmas-regulator +palmas_gpadc +panasonic-laptop +pandora_bl +panel +panel-auo-a030jtn01 +panel-mipi-dbi +panel-orisetech-ota5601a +panel-raspberrypi-touchscreen +panel-widechips-ws2401 +parkbd +parman +parport +parport_cs +parport_pc +parport_serial +pata_acpi +pata_ali +pata_amd +pata_artop +pata_atiixp +pata_atp867x +pata_cmd640 +pata_cmd64x +pata_cypress +pata_efar +pata_hpt366 +pata_hpt37x +pata_hpt3x2n +pata_hpt3x3 +pata_it8213 +pata_it821x +pata_jmicron +pata_legacy +pata_marvell +pata_mpiix +pata_netcell +pata_ninja32 +pata_ns87410 +pata_ns87415 +pata_oldpiix +pata_opti +pata_optidma +pata_parport +pata_pcmcia +pata_pdc2027x +pata_pdc202xx_old +pata_piccolo +pata_radisys +pata_rdc +pata_rz1000 +pata_sch +pata_serverworks +pata_sil680 +pata_sl82c105 +pata_triflex +pata_via +pc300too +pc87360 +pc87413_wdt +pc87427 +pca9450-regulator +pcap-regulator +pcap_keys +pcap_ts +pcbc +pcengines-apuv2 +pcf50633 +pcf50633-adc +pcf50633-backlight +pcf50633-charger +pcf50633-gpio +pcf50633-input +pcf50633-regulator +pcf8574_keypad +pcf8591 +pch_udc +pci +pci-epf-mhi +pci-epf-ntb +pci-epf-vntb +pci-hyperv +pci-hyperv-intf +pci-pf-stub +pci-stub +pci200syn +pcips2 +pcmcia +pcmcia_core +pcmcia_rsrc +pcmciamtd +pcnet32 +pcnet_cs +pcrypt +pcs-lynx +pcs-mtk-lynxi +pcs_xpcs +pcspkr +pcwd_pci +pcwd_usb +pd6729 +pdc_adma +pds_core +pds_vdpa +peak_pci +peak_pciefd +peak_pcmcia +peak_usb +peci +peci-cpu +pegasus +pegasus_notetaker +penmount +pfr_telemetry +pfr_update +phantom +phonet +phram +phy-bcm-kona-usb2 +phy-can-transceiver +phy-cpcap-usb +phy-exynos-usb2 +phy-generic +phy-gpio-vbus-usb +phy-intel-lgm-emmc +phy-isp1301 +phy-lgm-usb +phy-pxa-28nm-hsic +phy-pxa-28nm-usb2 +phy-qcom-usb-hs +phy-qcom-usb-hsic +phy-tahvo +phy-tusb1210 +phylink +physmap +pi3usb30532 +pi433 +pim4328 +pinctrl-alderlake +pinctrl-broxton +pinctrl-cannonlake +pinctrl-cedarfork +pinctrl-cy8c95x0 +pinctrl-da9062 +pinctrl-denverton +pinctrl-elkhartlake +pinctrl-emmitsburg +pinctrl-geminilake +pinctrl-icelake +pinctrl-jasperlake +pinctrl-lakefield +pinctrl-lewisburg +pinctrl-lynxpoint +pinctrl-madera +pinctrl-mcp23s08 +pinctrl-mcp23s08_i2c +pinctrl-mcp23s08_spi +pinctrl-meteorlake +pinctrl-sunrisepoint +pinctrl-tigerlake +pinephone-keyboard +ping +pixcir_i2c_ts +pkcs7_test_key +pkcs8_key_parser +pktgen +pl2303 +plat-ram +plat_nand +platform_lcd +platform_profile +plfxlc +pli1209bc +plip +plusb +pluto2 +plx_dma +plx_pci +pm-notifier-error-inject +pm2fb +pm3fb +pm6764tr +pm80xx +pmbus +pmbus_core +pmc551 +pmcraid +pms7003 +pmt_class +pmt_crashlog +pmt_telemetry +pn532_uart +pn533 +pn533_i2c +pn533_usb +pn544 +pn544_i2c +pn544_mei +pn_pep +pnd2_edac +poly1305-x86_64 +poly1305_generic +polynomial +polyval-clmulni +polyval-generic +port100 +powermate +powr1220 +ppa +ppdev +ppp_async +ppp_deflate +ppp_mppe +ppp_synctty +pppoatm +pppoe +pppox +pps-gpio +pps-ldisc +pps_parport +pptp +prestera +prestera_pci +pretimeout_panic +prism2_usb +processor_thermal_device +processor_thermal_device_pci +processor_thermal_device_pci_legacy +processor_thermal_mbox +processor_thermal_rapl +processor_thermal_rfim +ps2-gpio +ps2mult +psample +pse_regulator +psmouse +psnap +pstore_blk +pstore_zone +psxpad-spi +ptdma +ptp_clockmatrix +ptp_dfl_tod +ptp_idt82p33 +ptp_ines +ptp_kvm +ptp_vmw +pulse8-cec +pulsedlight-lidar-lite-v2 +punit_atom_debug +pv88060-regulator +pv88080-regulator +pv88090-regulator +pvcalls-front +pvpanic +pvpanic-mmio +pvpanic-pci +pvrusb2 +pwc +pwm-beeper +pwm-clk +pwm-cros-ec +pwm-dwc +pwm-iqs620a +pwm-lp3943 +pwm-pca9685 +pwm-regulator +pwm-twl +pwm-twl-led +pwm-vibra +pwm_bl +pxa27x_udc +pxe1610 +pxrc +q54sj108a2 +qaic +qat_4xxx +qat_c3xxx +qat_c3xxxvf +qat_c62x +qat_c62xvf +qat_dh895xcc +qat_dh895xccvf +qca8k +qcaux +qcom-emac +qcom-spmi-adc5 +qcom-spmi-iadc +qcom-spmi-vadc +qcom-vadc-common +qcom-wled +qcom_glink +qcom_glink_rpm +qcom_spmi-regulator +qcserial +qed +qede +qedf +qedi +qedr +qemu_fw_cfg +qinfo_probe +qla1280 +qla2xxx +qla3xxx +qla4xxx +qlcnic +qlge +qlogic_cs +qlogicfas408 +qm1d1b0004 +qm1d1c0042 +qmi_helpers +qmi_wwan +qnx4 +qnx6 +qrtr +qrtr-mhi +qrtr-smd +qrtr-tun +qsemi +qt1010 +qt1050 +qt1070 +qt2160 +qtnfmac +qtnfmac_pcie +quatech2 +quatech_daqp_cs +quota_tree +quota_v1 +quota_v2 +qwiic-joystick +qxl +r592 +r6040 +r8152 +r8153_ecm +r8169 +r8192e_pci +r8192u_usb +r820t +r852 +r8712u +r8723bs +r8a66597-hcd +r8a66597-udc +raa215300 +radeon +radeonfb +radio-keene +radio-ma901 +radio-maxiradio +radio-mr800 +radio-platform-si4713 +radio-raremono +radio-shark +radio-si470x-common +radio-si470x-i2c +radio-si470x-usb +radio-tea5764 +radio-usb-si4713 +radio-wl1273 +raid0 +raid1 +raid10 +raid456 +raid6_pq +raid_class +rainshadow-cec +ramoops +rapl +rave-sp +rave-sp-backlight +rave-sp-pwrbutton +rave-sp-wdt +raw_diag +raw_gadget +ray_cs +raydium_i2c_ts +rbd +rc-adstech-dvb-t-pci +rc-alink-dtu-m +rc-anysee +rc-apac-viewcomp +rc-astrometa-t2hybrid +rc-asus-pc39 +rc-asus-ps3-100 +rc-ati-tv-wonder-hd-600 +rc-ati-x10 +rc-avermedia +rc-avermedia-a16d +rc-avermedia-cardbus +rc-avermedia-dvbt +rc-avermedia-m135a +rc-avermedia-m733a-rm-k6 +rc-avermedia-rm-ks +rc-avertv-303 +rc-azurewave-ad-tu700 +rc-beelink-gs1 +rc-beelink-mxiii +rc-behold +rc-behold-columbus +rc-budget-ci-old +rc-cinergy +rc-cinergy-1400 +rc-core +rc-ct-90405 +rc-d680-dmb +rc-delock-61959 +rc-dib0700-nec +rc-dib0700-rc5 +rc-digitalnow-tinytwin +rc-digittrade +rc-dm1105-nec +rc-dntv-live-dvb-t +rc-dntv-live-dvbt-pro +rc-dreambox +rc-dtt200u +rc-dvbsky +rc-dvico-mce +rc-dvico-portable +rc-em-terratec +rc-encore-enltv +rc-encore-enltv-fm53 +rc-encore-enltv2 +rc-evga-indtube +rc-eztv +rc-flydvb +rc-flyvideo +rc-fusionhdtv-mce +rc-gadmei-rm008z +rc-geekbox +rc-genius-tvgo-a11mce +rc-gotview7135 +rc-hauppauge +rc-hisi-poplar +rc-hisi-tv-demo +rc-imon-mce +rc-imon-pad +rc-imon-rsc +rc-iodata-bctv7e +rc-it913x-v1 +rc-it913x-v2 +rc-kaiomy +rc-khadas +rc-khamsin +rc-kworld-315u +rc-kworld-pc150u +rc-kworld-plus-tv-analog +rc-leadtek-y04g0051 +rc-lme2510 +rc-loopback +rc-manli +rc-mecool-kii-pro +rc-mecool-kiii-pro +rc-medion-x10 +rc-medion-x10-digitainer +rc-medion-x10-or2x +rc-minix-neo +rc-msi-digivox-ii +rc-msi-digivox-iii +rc-msi-tvanywhere +rc-msi-tvanywhere-plus +rc-nebula +rc-nec-terratec-cinergy-xs +rc-norwood +rc-npgtech +rc-odroid +rc-pctv-sedna +rc-pine64 +rc-pinnacle-color +rc-pinnacle-grey +rc-pinnacle-pctv-hd +rc-pixelview +rc-pixelview-002t +rc-pixelview-mk12 +rc-pixelview-new +rc-powercolor-real-angel +rc-proteus-2309 +rc-purpletv +rc-pv951 +rc-rc6-mce +rc-real-audio-220-32-keys +rc-reddo +rc-snapstream-firefly +rc-streamzap +rc-su3000 +rc-tanix-tx3mini +rc-tanix-tx5max +rc-tbs-nec +rc-technisat-ts35 +rc-technisat-usb2 +rc-terratec-cinergy-c-pci +rc-terratec-cinergy-s2-hd +rc-terratec-cinergy-xs +rc-terratec-slim +rc-terratec-slim-2 +rc-tevii-nec +rc-tivo +rc-total-media-in-hand +rc-total-media-in-hand-02 +rc-trekstor +rc-tt-1500 +rc-twinhan-dtv-cab-ci +rc-twinhan1027 +rc-vega-s9x +rc-videomate-m1f +rc-videomate-s350 +rc-videomate-tv-pvr +rc-videostrong-kii-pro +rc-wetek-hub +rc-wetek-play2 +rc-winfast +rc-winfast-usbii-deluxe +rc-x96max +rc-xbox-360 +rc-xbox-dvd +rc-zx-irdec +rc5t583-regulator +rdacm21 +rdc321x-southbridge +rdma_cm +rdma_rxe +rdma_ucm +rdmavt +rds +rds_rdma +rds_tcp +realtek +redboot +redrat3 +reed_solomon +regmap-i3c +regmap-sccb +regmap-slimbus +regmap-spi-avmm +regmap-spmi +regmap-w1 +regulator-haptic +reiserfs +repaper +reset-ti-syscon +reset-tps380x +resistive-adc-touch +retu-mfd +retu-pwrbutton +retu_wdt +rfc1051 +rfc1201 +rfd77402 +rfd_ftl +rfkill-gpio +rio-scan +rio_cm +rio_mport_cdev +rionet +rivafb +rj54n1cb0c +rm3100-core +rm3100-i2c +rm3100-spi +rmd160 +rmi_core +rmi_i2c +rmi_smbus +rmi_spi +rmnet +rnbd-client +rnbd-server +rndis_host +rndis_wlan +rockchip +rocker +rohm-bu27008 +rohm-bu27034 +rohm_bu21023 +romfs +rose +rotary_encoder +rp2 +rpcrdma +rpcsec_gss_krb5 +rpmsg_char +rpmsg_core +rpmsg_ctrl +rpmsg_ns +rpmsg_tty +rpmsg_wwan_ctrl +rpr0521 +rsi_91x +rsi_sdio +rsi_usb +rt1719 +rt2400pci +rt2500pci +rt2500usb +rt2800lib +rt2800mmio +rt2800pci +rt2800usb +rt2x00lib +rt2x00mmio +rt2x00pci +rt2x00usb +rt4803 +rt4831 +rt4831-backlight +rt4831-regulator +rt5033 +rt5033-regulator +rt5033_battery +rt5033_charger +rt5120 +rt5120-pwrkey +rt5120-regulator +rt5190a-regulator +rt5739 +rt5759-regulator +rt6160-regulator +rt6190-regulator +rt61pci +rt6245-regulator +rt73usb +rt9455_charger +rt9467-charger +rt9471 +rtc-88pm80x +rtc-88pm860x +rtc-ab-b5ze-s3 +rtc-ab-eoz9 +rtc-abx80x +rtc-bq32k +rtc-bq4802 +rtc-cros-ec +rtc-da9052 +rtc-da9055 +rtc-da9063 +rtc-ds1286 +rtc-ds1302 +rtc-ds1305 +rtc-ds1307 +rtc-ds1343 +rtc-ds1347 +rtc-ds1374 +rtc-ds1390 +rtc-ds1511 +rtc-ds1553 +rtc-ds1672 +rtc-ds1685 +rtc-ds1742 +rtc-ds2404 +rtc-ds3232 +rtc-em3027 +rtc-fm3130 +rtc-ftrtc010 +rtc-goldfish +rtc-hid-sensor-time +rtc-isl12022 +rtc-isl1208 +rtc-lp8788 +rtc-m41t80 +rtc-m41t93 +rtc-m41t94 +rtc-m48t35 +rtc-m48t59 +rtc-m48t86 +rtc-max6900 +rtc-max6902 +rtc-max6916 +rtc-max8907 +rtc-max8925 +rtc-max8997 +rtc-max8998 +rtc-mc13xxx +rtc-mcp795 +rtc-msm6242 +rtc-mt6397 +rtc-palmas +rtc-pcap +rtc-pcf2123 +rtc-pcf2127 +rtc-pcf50633 +rtc-pcf85063 +rtc-pcf8523 +rtc-pcf85363 +rtc-pcf8563 +rtc-pcf8583 +rtc-r9701 +rtc-rc5t583 +rtc-rp5c01 +rtc-rs5c348 +rtc-rs5c372 +rtc-rv3028 +rtc-rv3029c2 +rtc-rv3032 +rtc-rv8803 +rtc-rx4581 +rtc-rx6110 +rtc-rx8010 +rtc-rx8025 +rtc-rx8581 +rtc-s35390a +rtc-sd3078 +rtc-stk17ta8 +rtc-tps6586x +rtc-tps65910 +rtc-wilco-ec +rtc-wm831x +rtc-wm8350 +rtc-x1205 +rtl2830 +rtl2832 +rtl2832_sdr +rtl8150 +rtl8187 +rtl8188ee +rtl818x_pci +rtl8192c-common +rtl8192ce +rtl8192cu +rtl8192de +rtl8192ee +rtl8192se +rtl8365mb +rtl8366 +rtl8723-common +rtl8723ae +rtl8723be +rtl8821ae +rtl8xxxu +rtl_pci +rtl_usb +rtllib +rtllib_crypt_ccmp +rtllib_crypt_tkip +rtllib_crypt_wep +rtlwifi +rtq2134-regulator +rtq6056 +rtq6752-regulator +rtrs-client +rtrs-core +rtrs-server +rts5208 +rtsx_pci +rtsx_pci_ms +rtsx_pci_sdmmc +rtsx_usb +rtsx_usb_ms +rtsx_usb_sdmmc +rtw88_8723d +rtw88_8723de +rtw88_8723ds +rtw88_8723du +rtw88_8821c +rtw88_8821ce +rtw88_8821cs +rtw88_8821cu +rtw88_8822b +rtw88_8822be +rtw88_8822bs +rtw88_8822bu +rtw88_8822c +rtw88_8822ce +rtw88_8822cs +rtw88_8822cu +rtw88_core +rtw88_pci +rtw88_sdio +rtw88_usb +rtw89_8851b +rtw89_8851be +rtw89_8852a +rtw89_8852ae +rtw89_8852b +rtw89_8852be +rtw89_8852c +rtw89_8852ce +rtw89_core +rtw89_pci +rx51_battery +rxperf +rxrpc +s1d13xxxfb +s2255drv +s2io +s3fb +s3fwrn5 +s3fwrn5_i2c +s5c73m3 +s5h1409 +s5h1411 +s5h1420 +s5h1432 +s5k5baf +s5k6a3 +s626 +s6sy761 +s921 +saa6588 +saa6752hs +saa7110 +saa7115 +saa7127 +saa7134 +saa7134-dvb +saa7134-empress +saa7146 +saa7146_vv +saa7164 +saa717x +saa7185 +saa7706h +safe_serial +sample-trace-array +samsung-keypad +samsung-laptop +samsung-q10 +samsung-sxgbe +sata_dwc_460ex +sata_inic162x +sata_mv +sata_nv +sata_promise +sata_qstor +sata_sil +sata_sil24 +sata_sis +sata_svw +sata_sx4 +sata_uli +sata_via +sata_vsc +savagefb +sb1000 +sb_edac +sbc60xxwdt +sbc_epx_c3 +sbc_fitpc2_wdt +sbc_gxx +sbp_target +sbrmi +sbs +sbs-battery +sbs-charger +sbs-manager +sbshc +sbtsi_temp +sc1200wdt +sc16is7xx +sc92031 +sca3000 +sca3300 +scb2_flash +scd4x +sch311x_wdt +sch5627 +sch5636 +sch56xx-common +sch_cake +sch_cbs +sch_choke +sch_codel +sch_drr +sch_etf +sch_ets +sch_fq +sch_fq_codel +sch_fq_pie +sch_gred +sch_hfsc +sch_hhf +sch_htb +sch_ingress +sch_mqprio +sch_mqprio_lib +sch_multiq +sch_netem +sch_pie +sch_plug +sch_prio +sch_qfq +sch_red +sch_sfb +sch_sfq +sch_skbprio +sch_taprio +sch_tbf +sch_teql +scsi_debug +scsi_dh_alua +scsi_dh_emc +scsi_dh_hp_sw +scsi_dh_rdac +scsi_transport_fc +scsi_transport_iscsi +scsi_transport_sas +scsi_transport_spi +scsi_transport_srp +sctp +sctp_diag +sd_adc_modulator +sdhci +sdhci-acpi +sdhci-pci +sdhci-pltfm +sdhci-xenon-driver +sdhci_f_sdh30 +sdio_uart +sdricoh_cs +seco-cec +sensehat-joystick +sensorhub +serial-multi-instantiate +serial_cs +serial_ir +serio_raw +sermouse +serpent-avx-x86_64 +serpent-avx2 +serpent-sse2-x86_64 +serpent_generic +serport +ses +sev-guest +sf-pdma +sfc +sfc-falcon +sfc-siena +sfp +sgi_w1 +sgp30 +sgp40 +sha1-ssse3 +sha256-ssse3 +shark2 +sht15 +sht21 +sht3x +sht4x +shtc1 +si1133 +si1145 +si2157 +si2165 +si2168 +si21xx +si4713 +si476x-core +si7005 +si7020 +sidewinder +sierra +sierra_net +sil164 +silead +sim710 +simatic-ipc +simatic-ipc-leds +simatic-ipc-leds-gpio-apollolake +simatic-ipc-leds-gpio-core +simatic-ipc-leds-gpio-f7188x +simatic-ipc-wdt +simple-mfd-i2c +simpledrm +simplefb +siox-bus-gpio +siox-core +sis-agp +sis190 +sis5595 +sis900 +sis_i2c +sisfb +sisusbvga +sit +siw +sja1000 +sja1000_isa +sja1000_platform +sja1105 +skfp +skge +skx_edac +sky2 +sky81452 +sky81452-backlight +sky81452-regulator +sl28vpd +sl811-hcd +sl811_cs +slcan +slg51000-regulator +slicoss +slim-qcom-ctrl +slimbus +slip +slram +sm2_generic +sm3 +sm3-avx-x86_64 +sm3_generic +sm4 +sm4-aesni-avx-x86_64 +sm4-aesni-avx2-x86_64 +sm4_generic +sm501 +sm501fb +sm712fb +sm750fb +sm_common +sm_ftl +smartpqi +smb347-charger +smc +smc91c92_cs +smc_diag +smipcie +smm665 +smpro-core +smpro-errmon +smpro-hwmon +smpro-misc +smsc +smsc37b787_wdt +smsc47b397 +smsc47m1 +smsc47m192 +smsc75xx +smsc911x +smsc9420 +smsc95xx +smscufx +smsdvb +smsmdtv +smssdio +smsusb +snet_vdpa +snic +snps_udc_core +soc_button_array +softdog +softing +softing_cs +solos-pci +sony-btf-mpx +sony-laptop +soundcore +soundwire-bus +sp2 +sp5100_tco +sp8870 +sp887x +spaceball +spaceorb +sparse-keymap +spcp8x5 +spectrum_cs +speedfax +speedstep-lib +speedtch +spi-altera-core +spi-altera-dfl +spi-altera-platform +spi-amd +spi-axi-spi-engine +spi-bitbang +spi-butterfly +spi-cadence +spi-dln2 +spi-dw +spi-dw-mmio +spi-dw-pci +spi-gpio +spi-lantiq-ssc +spi-lm70llp +spi-loopback-test +spi-microchip-core +spi-microchip-core-qspi +spi-mux +spi-mxic +spi-nor +spi-oc-tiny +spi-pci1xxxx +spi-pxa2xx-pci +spi-pxa2xx-platform +spi-sc18is602 +spi-sifive +spi-slave-system-control +spi-slave-time +spi-tle62x0 +spi-xcomm +spi-zynqmp-gqspi +spi_ks8995 +spidev +spinand +spl +spmi +sprd_serial +sps30 +sps30_i2c +sps30_serial +sr9700 +sr9800 +srf04 +srf08 +ssb +ssb-hcd +ssd1307fb +ssd130x +ssd130x-i2c +ssd130x-spi +ssfdc +ssp_accel_sensor +ssp_gyro_sensor +ssp_iio +sst25l +sstfb +ssu100 +st +st-mipid02 +st-nci +st-nci_i2c +st-nci_spi +st1232 +st21nfca_hci +st21nfca_i2c +st7586 +st7735r +st95hf +st_accel +st_accel_i2c +st_accel_spi +st_drv +st_gyro +st_gyro_i2c +st_gyro_spi +st_lsm6dsx +st_lsm6dsx_i2c +st_lsm6dsx_i3c +st_lsm6dsx_spi +st_lsm9ds0 +st_lsm9ds0_i2c +st_lsm9ds0_spi +st_magn +st_magn_i2c +st_magn_spi +st_pressure +st_pressure_i2c +st_pressure_spi +st_sensors +st_sensors_i2c +st_sensors_spi +st_uvis25_core +st_uvis25_i2c +st_uvis25_spi +starfire +stb0899 +stb6000 +stb6100 +ste10Xp +stex +stinger +stk1160 +stk3310 +stk8312 +stk8ba50 +stm_console +stm_core +stm_ftrace +stm_heartbeat +stm_p_basic +stm_p_sys-t +stmfts +stmmac +stmmac-pci +stmmac-platform +stowaway +stp +stpddc60 +streamzap +streebog_generic +stts751 +stv0288 +stv0297 +stv0299 +stv0367 +stv0900 +stv090x +stv0910 +stv6110 +stv6110x +stv6111 +stx104 +sundance +sungem +sungem_phy +sunhme +suni +sunkbd +sunrise_co2 +sunrpc +sur40 +surface3_spi +svc-i3c-master +svgalib +switchtec +sx8654 +sx9310 +sx9324 +sx9360 +sx9500 +sx_common +sy7636a-hwmon +sy7636a-regulator +sym53c500_cs +sym53c8xx +symbolserial +synaptics_i2c +synaptics_usb +synclink_gt +system76_acpi +sysv +t5403 +tag_ar9331 +tag_brcm +tag_dsa +tag_gswip +tag_hellcreek +tag_ksz +tag_lan9303 +tag_mtk +tag_none +tag_ocelot +tag_ocelot_8021q +tag_qca +tag_rtl4_a +tag_rtl8_4 +tag_rzn1_a5psw +tag_sja1105 +tag_trailer +tag_xrs700x +tap +target_core_file +target_core_iblock +target_core_mod +target_core_pscsi +target_core_user +tc-dwc-g210 +tc-dwc-g210-pci +tc358743 +tc358746 +tc654 +tc74 +tc90522 +tca6416-keypad +tca8418_keypad +tcan4x5x +tcm_fc +tcm_loop +tcm_qla2xxx +tcm_remote +tcm_usb_gadget +tcp_bbr +tcp_bic +tcp_cdg +tcp_dctcp +tcp_diag +tcp_highspeed +tcp_htcp +tcp_hybla +tcp_illinois +tcp_lp +tcp_nv +tcp_scalable +tcp_vegas +tcp_veno +tcp_westwood +tcp_yeah +tcpci +tcpci_mt6370 +tcpci_rt1711h +tcpm +tcrypt +tcs3414 +tcs3472 +tda10021 +tda10023 +tda10048 +tda1004x +tda10071 +tda10086 +tda18212 +tda18218 +tda18250 +tda18271 +tda18271c2dd +tda38640 +tda665x +tda7432 +tda8083 +tda8261 +tda826x +tda827x +tda8290 +tda9840 +tda9887 +tda9950 +tda998x +tdfxfb +tdo24m +tdx-guest +tea575x +tea5761 +tea5767 +tea6415c +tea6420 +team +team_mode_activebackup +team_mode_broadcast +team_mode_loadbalance +team_mode_random +team_mode_roundrobin +tee +tef6862 +tehuti +teranetics +test_blackhole_dev +test_bpf +test_power +tg3 +thermal-generic-adc +think-lmi +thinkpad_acpi +thmc50 +ths7303 +ths8200 +thunder_bgx +thunder_xcv +thunderbolt +thunderbolt_net +ti-adc081c +ti-adc0832 +ti-adc084s021 +ti-adc108s102 +ti-adc12138 +ti-adc128s052 +ti-adc161s626 +ti-ads1015 +ti-ads1100 +ti-ads124s08 +ti-ads131e08 +ti-ads7924 +ti-ads7950 +ti-ads8344 +ti-ads8688 +ti-dac082s085 +ti-dac5571 +ti-dac7311 +ti-dac7612 +ti-lmp92064 +ti-lmu +ti-tlc4541 +ti-tsc2046 +ti_am335x_adc +ti_am335x_tsc +ti_am335x_tscadc +ti_usb_3410_5052 +tifm_7xx1 +tifm_core +tifm_ms +tifm_sd +timeriomem-rng +tipc +tlan +tlclk +tls +tlv320aic23b +tm2-touchkey +tmag5273 +tmdc +tmp006 +tmp007 +tmp102 +tmp103 +tmp108 +tmp117 +tmp401 +tmp421 +tmp464 +tmp513 +topstar-laptop +toshiba_acpi +toshiba_bluetooth +toshiba_haps +toshsd +touchit213 +touchright +touchwin +tpci200 +tpl0102 +tpm_atmel +tpm_i2c_atmel +tpm_i2c_infineon +tpm_i2c_nuvoton +tpm_infineon +tpm_nsc +tpm_st33zp24 +tpm_st33zp24_i2c +tpm_st33zp24_spi +tpm_tis_i2c +tpm_tis_i2c_cr50 +tpm_tis_spi +tpm_vtpm_proxy +tps23861 +tps40422 +tps51632-regulator +tps53679 +tps546d24 +tps6105x +tps6105x-regulator +tps62360-regulator +tps65010 +tps65023-regulator +tps6507x +tps6507x-regulator +tps6507x-ts +tps65086 +tps65086-regulator +tps65090-charger +tps65090-regulator +tps65132-regulator +tps6524x-regulator +tps6586x-regulator +tps65910-regulator +tps65912-regulator +tps6594-core +tps6594-esm +tps6594-i2c +tps6594-pfsm +tps6594-spi +tps6598x +tps68470-regulator +tqmx86 +tqmx86_wdt +trace-printk +trancevibrator +trf7970a +tridentfb +ts2020 +ts_bm +ts_fsm +ts_kmp +tsc2004 +tsc2005 +tsc2007 +tsc200x-core +tsc40 +tsi721_mport +tsl2550 +tsl2563 +tsl2583 +tsl2591 +tsl2772 +tsl4531 +tsnep +tsys01 +tsys02d +ttm +ttpci-eeprom +ttusb_dec +ttusbdecfe +ttusbir +ttynull +tua6100 +tua9001 +tulip +tuner +tuner-simple +tuner-types +tunnel4 +tunnel6 +turbografx +tvaudio +tveeprom +tvp514x +tvp5150 +tvp7002 +tw2804 +tw5864 +tw68 +tw9903 +tw9906 +tw9910 +twidjoy +twl-regulator +twl4030-madc +twl4030-pwrbutton +twl4030-vibra +twl4030_charger +twl4030_keypad +twl4030_madc_battery +twl4030_wdt +twl6030-gpadc +twl6030-regulator +twl6040-vibra +twofish-avx-x86_64 +twofish-x86_64 +twofish-x86_64-3way +twofish_common +twofish_generic +txgbe +typec +typec_displayport +typec_nvidia +typec_ucsi +typhoon +uPD60620 +u_ether +u_serial +uacce +uartlite +uas +ubi +ubifs +ublk_drv +ubuntu-host +ucan +ucd9000 +ucd9200 +ucsi_acpi +ucsi_ccg +ucsi_stm32g0 +uda1342 +udc-core +udf +udl +udlfb +udp_diag +udp_tunnel +ueagle-atm +ufs +ufshcd-core +ufshcd-dwc +ufshcd-pci +ufshcd-pltfrm +ug3105_battery +uhid +uio +uio_aec +uio_cif +uio_dfl +uio_dmem_genirq +uio_hv_generic +uio_mf624 +uio_netx +uio_pci_generic +uio_pdrv_genirq +uio_pruss +uio_sercos3 +uleds +uli526x +ulpi +ums-alauda +ums-cypress +ums-datafab +ums-eneub6250 +ums-freecom +ums-isd200 +ums-jumpshot +ums-karma +ums-onetouch +ums-realtek +ums-sddr09 +ums-sddr55 +ums-usbat +unix_diag +upd64031a +upd64083 +upd78f0730 +us5182d +usb-conn-gpio +usb-serial-simple +usb-storage +usb251xb +usb3503 +usb4604 +usb8xxx +usb_8dev +usb_debug +usb_f_acm +usb_f_ecm +usb_f_ecm_subset +usb_f_eem +usb_f_fs +usb_f_hid +usb_f_mass_storage +usb_f_ncm +usb_f_obex +usb_f_phonet +usb_f_printer +usb_f_rndis +usb_f_serial +usb_f_ss_lb +usb_f_tcm +usb_f_uvc +usb_wwan +usbatm +usbdux +usbduxfast +usbduxsigma +usbhid +usbip-core +usbip-host +usbip-vudc +usbkbd +usblcd +usblp +usbmon +usbmouse +usbnet +usbserial +usbsevseg +usbtest +usbtmc +usbtouchscreen +usdhi6rol0 +userio +userspace-consumer +ushc +usnic_verbs +uss720 +uv_mmtimer +uv_sysfs +uvc +uvcvideo +uvesafb +v4l2-async +v4l2-dv-timings +v4l2-flash-led-class +v4l2-fwnode +v4l2-mem2mem +v4l2-tpg +v4l2loopback +vboxguest +vboxsf +vboxvideo +vcan +vcnl3020 +vcnl4000 +vcnl4035 +vdpa +vdpa_sim +vdpa_sim_blk +vdpa_sim_net +vduse +veml6030 +veml6070 +ves1820 +ves1x93 +veth +vf610_adc +vf610_dac +vfio +vfio-pci +vfio-pci-core +vfio_iommu_type1 +vga16fb +vgastate +vgem +vgg2432a4 +vhci-hcd +vhost +vhost_iotlb +vhost_net +vhost_scsi +vhost_vdpa +vhost_vsock +via-camera +via-cputemp +via-rhine +via-rng +via-sdmmc +via-velocity +via686a +via_wdt +viafb +vicodec +video +video-i2c +videobuf-core +videobuf-dma-sg +videobuf2-common +videobuf2-dma-contig +videobuf2-dma-sg +videobuf2-dvb +videobuf2-memops +videobuf2-v4l2 +videobuf2-vmalloc +videodev +vim2m +vimc +viperboard +viperboard_adc +virt_wifi +virtio-gpu +virtio-rng +virtio_crypto +virtio_dma_buf +virtio_input +virtio_mem +virtio_pmem +virtio_rpmsg_bus +virtio_vdpa +virtiofs +virtual +virtual_ncidev +visl +visor +vitesse +vitesse-vsc73xx-core +vitesse-vsc73xx-platform +vitesse-vsc73xx-spi +vivid +vkms +vl53l0x-i2c +vl6180 +vmac +vmd +vme_fake +vme_tsi148 +vme_user +vmk80xx +vmlfb +vmw_balloon +vmw_pvrdma +vmw_pvscsi +vmw_vmci +vmw_vsock_virtio_transport +vmw_vsock_virtio_transport_common +vmw_vsock_vmci_transport +vmwgfx +vmxnet3 +vp27smpx +vp_vdpa +vport-geneve +vport-gre +vport-vxlan +vpx3220 +vrf +vringh +vsock +vsock_diag +vsock_loopback +vsockmon +vsxxxaa +vt1211 +vt6655_stage +vt6656_stage +vt8231 +vt8623fb +vub300 +vx855 +vxcan +vxlan +vz89x +w1-gpio +w1_ds2405 +w1_ds2406 +w1_ds2408 +w1_ds2413 +w1_ds2423 +w1_ds2430 +w1_ds2431 +w1_ds2433 +w1_ds2438 +w1_ds250x +w1_ds2780 +w1_ds2781 +w1_ds2805 +w1_ds28e04 +w1_ds28e17 +w1_smem +w1_therm +w5100 +w5100-spi +w5300 +w6692 +w83627ehf +w83627hf +w83627hf_wdt +w83773g +w83781d +w83791d +w83792d +w83793 +w83795 +w83877f_wdt +w83977f_wdt +w83l785ts +w83l786ng +wacom +wacom_i2c +wacom_serial4 +wacom_w8001 +wafer5823wdt +walkera0701 +wanxl +warrior +wbsd +wcd934x +wcn36xx +wd719x +wdat_wdt +wdt87xx_i2c +wdt_pci +wfx +whiteheat +wil6210 +wilco-charger +wilco_ec +wilco_ec_debugfs +wilco_ec_events +wilco_ec_telem +winbond-840 +winbond-cir +winmate-fm07-keys +wire +wireguard +wireless-hotkey +wishbone-serial +wl1251 +wl1251_sdio +wl1251_spi +wl1273-core +wl12xx +wl18xx +wl3501_cs +wlcore +wlcore_sdio +wm831x-dcdc +wm831x-hwmon +wm831x-isink +wm831x-ldo +wm831x-on +wm831x-ts +wm831x_backup +wm831x_bl +wm831x_power +wm831x_wdt +wm8350-hwmon +wm8350-regulator +wm8350_power +wm8350_wdt +wm8400-regulator +wm8739 +wm8775 +wm8994 +wm8994-regulator +wmi +wmi-bmof +wp512 +wpcm450-soc +wusb3801 +wwan +wwan_hwsim +x25 +x38_edac +x86-android-tablets +x86_pkg_temp_thermal +x9250 +x_tables +xbox_remote +xc2028 +xc4000 +xc5000 +xcbc +xctr +xdma +xdpe12284 +xdpe152c4 +xen-blkback +xen-evtchn +xen-front-pgdir-shbuf +xen-gntalloc +xen-gntdev +xen-hcd +xen-netback +xen-pciback +xen-pcifront +xen-privcmd +xen-scsiback +xen-scsifront +xen-tpmfront +xen_wdt +xenfs +xfrm4_tunnel +xfrm6_tunnel +xfrm_algo +xfrm_compat +xfrm_interface +xfrm_ipcomp +xfrm_user +xfs +xgene-hwmon +xhci-pci +xhci-pci-renesas +xhci-plat-hcd +xiaomi-wmi +xilinx-pr-decoupler +xilinx-spi +xilinx-xadc +xilinx_emac +xilinx_emaclite +xilinx_gmii2rgmii +xilinx_sdfec +xillybus_class +xillybus_core +xillybus_pcie +xillyusb +xiphera-trng +xirc2ps_cs +xircom_cb +xlnx_vcu +xor +xp +xpad +xpc +xpnet +xr_serial +xrs700x +xrs700x_i2c +xrs700x_mdio +xsens_mt +xsk_diag +xt_AUDIT +xt_CHECKSUM +xt_CLASSIFY +xt_CONNSECMARK +xt_CT +xt_DSCP +xt_HL +xt_HMARK +xt_IDLETIMER +xt_LED +xt_LOG +xt_MASQUERADE +xt_NETMAP +xt_NFLOG +xt_NFQUEUE +xt_RATEEST +xt_REDIRECT +xt_SECMARK +xt_TCPMSS +xt_TCPOPTSTRIP +xt_TEE +xt_TPROXY +xt_TRACE +xt_addrtype +xt_bpf +xt_cgroup +xt_cluster +xt_comment +xt_connbytes +xt_connlabel +xt_connlimit +xt_connmark +xt_conntrack +xt_cpu +xt_dccp +xt_devgroup +xt_dscp +xt_ecn +xt_esp +xt_hashlimit +xt_helper +xt_hl +xt_ipcomp +xt_iprange +xt_ipvs +xt_l2tp +xt_length +xt_limit +xt_mac +xt_mark +xt_multiport +xt_nat +xt_nfacct +xt_osf +xt_owner +xt_physdev +xt_pkttype +xt_policy +xt_quota +xt_rateest +xt_realm +xt_recent +xt_sctp +xt_set +xt_socket +xt_state +xt_statistic +xt_string +xt_tcpmss +xt_tcpudp +xt_time +xt_u32 +xtkbd +xusbatm +xxhash_generic +xz_dec_test +yam +yamaha-yas530 +yealink +yellowfin +yenta_socket +yurex +z3fold +zaurus +zd1201 +zd1211rw +zd1301 +zd1301_demod +zet6223 +zforce_ts +zfs +zhenhua +ziirave_wdt +zl10036 +zl10039 +zl10353 +zl6100 +zonefs +zopt2201 +zpa2326 +zpa2326_i2c +zpa2326_spi +zram +zstd --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/amd64/intel-opt.modules.builtin +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/amd64/intel-opt.modules.builtin @@ -0,0 +1,288 @@ +8250 +8250_base +8250_mid +8250_pci +8250_rt288x +ac +acpi-cpufreq +acpi_dbg +acpi_mdio +aead +aes_generic +af_packet +agpgart +akcipher +amd64-agp +asiliantfb +asn1_decoder +asn1_encoder +ata_generic +ata_piix +atkbd +backlight +battery +bcm84881 +binfmt_script +bitrev +bsg +button +cbc +cdrom +cfbcopyarea +cfbfillrect +cfbimgblt +charger-manager +cn +configfs +cpufreq_conservative +cpufreq_ondemand +cpufreq_performance +cpufreq_powersave +cpufreq_userspace +crc-ccitt +crc-t10dif +crc16 +crc32 +crc32c-intel +crc32c_generic +crc64 +crc64-rocksoft +crc64_rocksoft_generic +crct10dif_common +crct10dif_generic +crypto +crypto_acompress +crypto_algapi +crypto_hash +crypto_null +cryptomgr +ctr +cts +da9063 +dax +deflate +dh_generic +digsig +dm-mod +dns_resolver +drbg +drm_mipi_dsi +drm_panel_orientation_quirks +drop_monitor +dwc2 +ecb +ecryptfs +edac_core +edd +efivarfs +ehci-hcd +ehci-pci +ehci-platform +elants_i2c +encrypted-keys +evdev +exportfs +ext4 +extcon-core +failover +fan +fat +fb +fb_sys_fops +fbdev +fddi +firmware_class +fixed_phy +font +fuse +fwnode_mdio +gcm +geniv +gf128mul +ghash-generic +ghes_edac +glob +governor_passive +governor_performance +governor_powersave +governor_simpleondemand +governor_userspace +gpio-crystalcove +gpio-generic +grant-dma-ops +hed +hid_bpf +hmac +hsu_dma +hwmon +i2c-core +i2c-designware-core +i2c-designware-platform +i2c-dev +i8042 +imsttfb +input-core +intel-agp +intel-gtt +intel-uncore +intel_pmc_core +intel_pmc_core_pltdrv +iosf_mbi +iova +ipv6 +jbd2 +jitterentropy_rng +kdf_sp800108 +kgdboc +kpp +led-class +libaes +libata +libcryptoutils +libnvdimm +libphy +libps2 +libsha1 +libsha256 +linear_ranges +loop +lz4_decompress +lzo +lzo-rle +lzo_compress +lzo_decompress +max14577 +max310x +max77693 +mbcache +md-mod +md5 +mdio_devres +mfd-core +mmc_core +mousedev +mpi +mq-deadline +n_null +nd_e820 +net_failover +nls_base +nls_cp437 +nvme +nvme-common +nvme-core +ohci-hcd +ohci-pci +ohci-platform +oid_registry +palmas +pata_sis +pcc-cpufreq +pinctrl-cherryview +pinctrl-intel +pkcs7_message +powernow-k8 +ppp_generic +pps_core +pretimeout_noop +processor +pstore +ptp +public_key +pwm-lpss +pwm-lpss-pci +pwm-lpss-platform +rapidio +rational +regmap-i2c +regmap-mmio +regmap-spi +rfkill +rng +rng-core +roles +rsa_generic +rtc-cmos +sccnxp +scsi_common +scsi_mod +sd_mod +selftests +seqiv +serdev +serial_base +serial_mctrl_gpio +serio +sg +sha1_generic +sha256_generic +sha3_generic +sha512-ssse3 +sha512_generic +sig +skcipher +slhc +speedstep-centrino +squashfs +sr_mod +syscopyarea +sysfillrect +sysimgblt +t10-pi +tcp_cubic +thermal +tpm +tpm_crb +tpm_tis +tpm_tis_core +tps65912-core +tps65912-i2c +tps65912-spi +trusted +ttyprintk +tun +ucs2_string +uhci-hcd +uinput +unix +usb-common +usbcore +utf8data +vesafb +vfat +vgacon +via-agp +virt-dma +virtio +virtio-iommu +virtio_balloon +virtio_blk +virtio_console +virtio_mmio +virtio_net +virtio_pci +virtio_pci_legacy_dev +virtio_pci_modern_dev +virtio_ring +virtio_scsi +vivaldi-fmap +vmgenid +watchdog +wwnr +x509_key_parser +xen-acpi-processor +xen-blkfront +xen-netfront +xenbus +xenbus_probe_frontend +xhci-hcd +xts +xxhash +xz_dec +zbud +zlib_deflate +zlib_inflate +zsmalloc +zstd_common +zstd_compress +zstd_decompress --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/amd64/intel-opt.retpoline +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/amd64/intel-opt.retpoline @@ -0,0 +1 @@ +# retpoline v1.0 --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/fwinfo +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/fwinfo @@ -0,0 +1,1977 @@ +firmware: 3826.arm +firmware: 3826.eeprom +firmware: 3com/typhoon.bin +firmware: RTL8192E/boot.img +firmware: RTL8192E/data.img +firmware: RTL8192E/main.img +firmware: RTL8192U/boot.img +firmware: RTL8192U/data.img +firmware: RTL8192U/main.img +firmware: acenic/tg1.bin +firmware: acenic/tg2.bin +firmware: adaptec/starfire_rx.bin +firmware: adaptec/starfire_tx.bin +firmware: adf7242_firmware.bin +firmware: advansys/3550.bin +firmware: advansys/38C0800.bin +firmware: advansys/38C1600.bin +firmware: advansys/mcode.bin +firmware: agere_ap_fw.bin +firmware: agere_sta_fw.bin +firmware: aic94xx-seq.fw +firmware: amd/amd_sev_fam17h_model0xh.sbin +firmware: amd/amd_sev_fam17h_model3xh.sbin +firmware: amd/amd_sev_fam19h_model0xh.sbin +firmware: amd/amd_sev_fam19h_model1xh.sbin +firmware: amdgpu/aldebaran_cap.bin +firmware: amdgpu/aldebaran_mec.bin +firmware: amdgpu/aldebaran_mec2.bin +firmware: amdgpu/aldebaran_rlc.bin +firmware: amdgpu/aldebaran_sdma.bin +firmware: amdgpu/aldebaran_sjt_mec.bin +firmware: amdgpu/aldebaran_sjt_mec2.bin +firmware: amdgpu/aldebaran_smc.bin +firmware: amdgpu/aldebaran_sos.bin +firmware: amdgpu/aldebaran_ta.bin +firmware: amdgpu/aldebaran_vcn.bin +firmware: amdgpu/arcturus_asd.bin +firmware: amdgpu/arcturus_gpu_info.bin +firmware: amdgpu/arcturus_mec.bin +firmware: amdgpu/arcturus_rlc.bin +firmware: amdgpu/arcturus_sdma.bin +firmware: amdgpu/arcturus_smc.bin +firmware: amdgpu/arcturus_sos.bin +firmware: amdgpu/arcturus_ta.bin +firmware: amdgpu/arcturus_vcn.bin +firmware: amdgpu/banks_k_2_smc.bin +firmware: amdgpu/beige_goby_ce.bin +firmware: amdgpu/beige_goby_dmcub.bin +firmware: amdgpu/beige_goby_me.bin +firmware: amdgpu/beige_goby_mec.bin +firmware: amdgpu/beige_goby_mec2.bin +firmware: amdgpu/beige_goby_pfp.bin +firmware: amdgpu/beige_goby_rlc.bin +firmware: amdgpu/beige_goby_sdma.bin +firmware: amdgpu/beige_goby_smc.bin +firmware: amdgpu/beige_goby_sos.bin +firmware: amdgpu/beige_goby_ta.bin +firmware: amdgpu/beige_goby_vcn.bin +firmware: amdgpu/bonaire_ce.bin +firmware: amdgpu/bonaire_k_smc.bin +firmware: amdgpu/bonaire_mc.bin +firmware: amdgpu/bonaire_me.bin +firmware: amdgpu/bonaire_mec.bin +firmware: amdgpu/bonaire_pfp.bin +firmware: amdgpu/bonaire_rlc.bin +firmware: amdgpu/bonaire_sdma.bin +firmware: amdgpu/bonaire_sdma1.bin +firmware: amdgpu/bonaire_smc.bin +firmware: amdgpu/bonaire_uvd.bin +firmware: amdgpu/bonaire_vce.bin +firmware: amdgpu/carrizo_ce.bin +firmware: amdgpu/carrizo_me.bin +firmware: amdgpu/carrizo_mec.bin +firmware: amdgpu/carrizo_mec2.bin +firmware: amdgpu/carrizo_pfp.bin +firmware: amdgpu/carrizo_rlc.bin +firmware: amdgpu/carrizo_sdma.bin +firmware: amdgpu/carrizo_sdma1.bin +firmware: amdgpu/carrizo_uvd.bin +firmware: amdgpu/carrizo_vce.bin +firmware: amdgpu/cyan_skillfish2_ce.bin +firmware: amdgpu/cyan_skillfish2_me.bin +firmware: amdgpu/cyan_skillfish2_mec.bin +firmware: amdgpu/cyan_skillfish2_mec2.bin +firmware: amdgpu/cyan_skillfish2_pfp.bin +firmware: amdgpu/cyan_skillfish2_rlc.bin +firmware: amdgpu/cyan_skillfish2_sdma.bin +firmware: amdgpu/cyan_skillfish2_sdma1.bin +firmware: amdgpu/dcn_3_1_4_dmcub.bin +firmware: amdgpu/dcn_3_1_5_dmcub.bin +firmware: amdgpu/dcn_3_1_6_dmcub.bin +firmware: amdgpu/dcn_3_2_0_dmcub.bin +firmware: amdgpu/dcn_3_2_1_dmcub.bin +firmware: amdgpu/dimgrey_cavefish_ce.bin +firmware: amdgpu/dimgrey_cavefish_dmcub.bin +firmware: amdgpu/dimgrey_cavefish_me.bin +firmware: amdgpu/dimgrey_cavefish_mec.bin +firmware: amdgpu/dimgrey_cavefish_mec2.bin +firmware: amdgpu/dimgrey_cavefish_pfp.bin +firmware: amdgpu/dimgrey_cavefish_rlc.bin +firmware: amdgpu/dimgrey_cavefish_sdma.bin +firmware: amdgpu/dimgrey_cavefish_smc.bin +firmware: amdgpu/dimgrey_cavefish_sos.bin +firmware: amdgpu/dimgrey_cavefish_ta.bin +firmware: amdgpu/dimgrey_cavefish_vcn.bin +firmware: amdgpu/fiji_ce.bin +firmware: amdgpu/fiji_me.bin +firmware: amdgpu/fiji_mec.bin +firmware: amdgpu/fiji_mec2.bin +firmware: amdgpu/fiji_pfp.bin +firmware: amdgpu/fiji_rlc.bin +firmware: amdgpu/fiji_sdma.bin +firmware: amdgpu/fiji_sdma1.bin +firmware: amdgpu/fiji_smc.bin +firmware: amdgpu/fiji_uvd.bin +firmware: amdgpu/fiji_vce.bin +firmware: amdgpu/gc_10_3_6_ce.bin +firmware: amdgpu/gc_10_3_6_me.bin +firmware: amdgpu/gc_10_3_6_mec.bin +firmware: amdgpu/gc_10_3_6_mec2.bin +firmware: amdgpu/gc_10_3_6_pfp.bin +firmware: amdgpu/gc_10_3_6_rlc.bin +firmware: amdgpu/gc_10_3_7_ce.bin +firmware: amdgpu/gc_10_3_7_me.bin +firmware: amdgpu/gc_10_3_7_mec.bin +firmware: amdgpu/gc_10_3_7_mec2.bin +firmware: amdgpu/gc_10_3_7_pfp.bin +firmware: amdgpu/gc_10_3_7_rlc.bin +firmware: amdgpu/gc_11_0_0_imu.bin +firmware: amdgpu/gc_11_0_0_me.bin +firmware: amdgpu/gc_11_0_0_mec.bin +firmware: amdgpu/gc_11_0_0_mes.bin +firmware: amdgpu/gc_11_0_0_mes1.bin +firmware: amdgpu/gc_11_0_0_mes_2.bin +firmware: amdgpu/gc_11_0_0_pfp.bin +firmware: amdgpu/gc_11_0_0_rlc.bin +firmware: amdgpu/gc_11_0_0_toc.bin +firmware: amdgpu/gc_11_0_1_imu.bin +firmware: amdgpu/gc_11_0_1_me.bin +firmware: amdgpu/gc_11_0_1_mec.bin +firmware: amdgpu/gc_11_0_1_mes.bin +firmware: amdgpu/gc_11_0_1_mes1.bin +firmware: amdgpu/gc_11_0_1_mes_2.bin +firmware: amdgpu/gc_11_0_1_pfp.bin +firmware: amdgpu/gc_11_0_1_rlc.bin +firmware: amdgpu/gc_11_0_2_imu.bin +firmware: amdgpu/gc_11_0_2_me.bin +firmware: amdgpu/gc_11_0_2_mec.bin +firmware: amdgpu/gc_11_0_2_mes.bin +firmware: amdgpu/gc_11_0_2_mes1.bin +firmware: amdgpu/gc_11_0_2_mes_2.bin +firmware: amdgpu/gc_11_0_2_pfp.bin +firmware: amdgpu/gc_11_0_2_rlc.bin +firmware: amdgpu/gc_11_0_3_imu.bin +firmware: amdgpu/gc_11_0_3_me.bin +firmware: amdgpu/gc_11_0_3_mec.bin +firmware: amdgpu/gc_11_0_3_mes.bin +firmware: amdgpu/gc_11_0_3_mes1.bin +firmware: amdgpu/gc_11_0_3_mes_2.bin +firmware: amdgpu/gc_11_0_3_pfp.bin +firmware: amdgpu/gc_11_0_3_rlc.bin +firmware: amdgpu/gc_11_0_4_imu.bin +firmware: amdgpu/gc_11_0_4_me.bin +firmware: amdgpu/gc_11_0_4_mec.bin +firmware: amdgpu/gc_11_0_4_mes.bin +firmware: amdgpu/gc_11_0_4_mes1.bin +firmware: amdgpu/gc_11_0_4_mes_2.bin +firmware: amdgpu/gc_11_0_4_pfp.bin +firmware: amdgpu/gc_11_0_4_rlc.bin +firmware: amdgpu/gc_9_4_3_mec.bin +firmware: amdgpu/gc_9_4_3_rlc.bin +firmware: amdgpu/green_sardine_asd.bin +firmware: amdgpu/green_sardine_ce.bin +firmware: amdgpu/green_sardine_dmcub.bin +firmware: amdgpu/green_sardine_me.bin +firmware: amdgpu/green_sardine_mec.bin +firmware: amdgpu/green_sardine_mec2.bin +firmware: amdgpu/green_sardine_pfp.bin +firmware: amdgpu/green_sardine_rlc.bin +firmware: amdgpu/green_sardine_sdma.bin +firmware: amdgpu/green_sardine_ta.bin +firmware: amdgpu/green_sardine_vcn.bin +firmware: amdgpu/hainan_ce.bin +firmware: amdgpu/hainan_k_smc.bin +firmware: amdgpu/hainan_mc.bin +firmware: amdgpu/hainan_me.bin +firmware: amdgpu/hainan_pfp.bin +firmware: amdgpu/hainan_rlc.bin +firmware: amdgpu/hainan_smc.bin +firmware: amdgpu/hawaii_ce.bin +firmware: amdgpu/hawaii_k_smc.bin +firmware: amdgpu/hawaii_mc.bin +firmware: amdgpu/hawaii_me.bin +firmware: amdgpu/hawaii_mec.bin +firmware: amdgpu/hawaii_pfp.bin +firmware: amdgpu/hawaii_rlc.bin +firmware: amdgpu/hawaii_sdma.bin +firmware: amdgpu/hawaii_sdma1.bin +firmware: amdgpu/hawaii_smc.bin +firmware: amdgpu/hawaii_uvd.bin +firmware: amdgpu/hawaii_vce.bin +firmware: amdgpu/ip_discovery.bin +firmware: amdgpu/kabini_ce.bin +firmware: amdgpu/kabini_me.bin +firmware: amdgpu/kabini_mec.bin +firmware: amdgpu/kabini_pfp.bin +firmware: amdgpu/kabini_rlc.bin +firmware: amdgpu/kabini_sdma.bin +firmware: amdgpu/kabini_sdma1.bin +firmware: amdgpu/kabini_uvd.bin +firmware: amdgpu/kabini_vce.bin +firmware: amdgpu/kaveri_ce.bin +firmware: amdgpu/kaveri_me.bin +firmware: amdgpu/kaveri_mec.bin +firmware: amdgpu/kaveri_mec2.bin +firmware: amdgpu/kaveri_pfp.bin +firmware: amdgpu/kaveri_rlc.bin +firmware: amdgpu/kaveri_sdma.bin +firmware: amdgpu/kaveri_sdma1.bin +firmware: amdgpu/kaveri_uvd.bin +firmware: amdgpu/kaveri_vce.bin +firmware: amdgpu/mullins_ce.bin +firmware: amdgpu/mullins_me.bin +firmware: amdgpu/mullins_mec.bin +firmware: amdgpu/mullins_pfp.bin +firmware: amdgpu/mullins_rlc.bin +firmware: amdgpu/mullins_sdma.bin +firmware: amdgpu/mullins_sdma1.bin +firmware: amdgpu/mullins_uvd.bin +firmware: amdgpu/mullins_vce.bin +firmware: amdgpu/navi10_asd.bin +firmware: amdgpu/navi10_ce.bin +firmware: amdgpu/navi10_me.bin +firmware: amdgpu/navi10_mec.bin +firmware: amdgpu/navi10_mec2.bin +firmware: amdgpu/navi10_mes.bin +firmware: amdgpu/navi10_pfp.bin +firmware: amdgpu/navi10_rlc.bin +firmware: amdgpu/navi10_sdma.bin +firmware: amdgpu/navi10_sdma1.bin +firmware: amdgpu/navi10_smc.bin +firmware: amdgpu/navi10_sos.bin +firmware: amdgpu/navi10_ta.bin +firmware: amdgpu/navi10_vcn.bin +firmware: amdgpu/navi12_asd.bin +firmware: amdgpu/navi12_cap.bin +firmware: amdgpu/navi12_ce.bin +firmware: amdgpu/navi12_dmcu.bin +firmware: amdgpu/navi12_gpu_info.bin +firmware: amdgpu/navi12_me.bin +firmware: amdgpu/navi12_mec.bin +firmware: amdgpu/navi12_mec2.bin +firmware: amdgpu/navi12_pfp.bin +firmware: amdgpu/navi12_rlc.bin +firmware: amdgpu/navi12_sdma.bin +firmware: amdgpu/navi12_sdma1.bin +firmware: amdgpu/navi12_smc.bin +firmware: amdgpu/navi12_sos.bin +firmware: amdgpu/navi12_ta.bin +firmware: amdgpu/navi12_vcn.bin +firmware: amdgpu/navi14_asd.bin +firmware: amdgpu/navi14_ce.bin +firmware: amdgpu/navi14_ce_wks.bin +firmware: amdgpu/navi14_me.bin +firmware: amdgpu/navi14_me_wks.bin +firmware: amdgpu/navi14_mec.bin +firmware: amdgpu/navi14_mec2.bin +firmware: amdgpu/navi14_mec2_wks.bin +firmware: amdgpu/navi14_mec_wks.bin +firmware: amdgpu/navi14_pfp.bin +firmware: amdgpu/navi14_pfp_wks.bin +firmware: amdgpu/navi14_rlc.bin +firmware: amdgpu/navi14_sdma.bin +firmware: amdgpu/navi14_sdma1.bin +firmware: amdgpu/navi14_smc.bin +firmware: amdgpu/navi14_sos.bin +firmware: amdgpu/navi14_ta.bin +firmware: amdgpu/navi14_vcn.bin +firmware: amdgpu/navy_flounder_ce.bin +firmware: amdgpu/navy_flounder_dmcub.bin +firmware: amdgpu/navy_flounder_me.bin +firmware: amdgpu/navy_flounder_mec.bin +firmware: amdgpu/navy_flounder_mec2.bin +firmware: amdgpu/navy_flounder_pfp.bin +firmware: amdgpu/navy_flounder_rlc.bin +firmware: amdgpu/navy_flounder_sdma.bin +firmware: amdgpu/navy_flounder_smc.bin +firmware: amdgpu/navy_flounder_sos.bin +firmware: amdgpu/navy_flounder_ta.bin +firmware: amdgpu/navy_flounder_vcn.bin +firmware: amdgpu/oland_ce.bin +firmware: amdgpu/oland_k_smc.bin +firmware: amdgpu/oland_mc.bin +firmware: amdgpu/oland_me.bin +firmware: amdgpu/oland_pfp.bin +firmware: amdgpu/oland_rlc.bin +firmware: amdgpu/oland_smc.bin +firmware: amdgpu/oland_uvd.bin +firmware: amdgpu/picasso_asd.bin +firmware: amdgpu/picasso_ce.bin +firmware: amdgpu/picasso_gpu_info.bin +firmware: amdgpu/picasso_me.bin +firmware: amdgpu/picasso_mec.bin +firmware: amdgpu/picasso_mec2.bin +firmware: amdgpu/picasso_pfp.bin +firmware: amdgpu/picasso_rlc.bin +firmware: amdgpu/picasso_rlc_am4.bin +firmware: amdgpu/picasso_sdma.bin +firmware: amdgpu/picasso_ta.bin +firmware: amdgpu/picasso_vcn.bin +firmware: amdgpu/pitcairn_ce.bin +firmware: amdgpu/pitcairn_k_smc.bin +firmware: amdgpu/pitcairn_mc.bin +firmware: amdgpu/pitcairn_me.bin +firmware: amdgpu/pitcairn_pfp.bin +firmware: amdgpu/pitcairn_rlc.bin +firmware: amdgpu/pitcairn_smc.bin +firmware: amdgpu/pitcairn_uvd.bin +firmware: amdgpu/polaris10_ce.bin +firmware: amdgpu/polaris10_ce_2.bin +firmware: amdgpu/polaris10_k2_smc.bin +firmware: amdgpu/polaris10_k_mc.bin +firmware: amdgpu/polaris10_k_smc.bin +firmware: amdgpu/polaris10_mc.bin +firmware: amdgpu/polaris10_me.bin +firmware: amdgpu/polaris10_me_2.bin +firmware: amdgpu/polaris10_mec.bin +firmware: amdgpu/polaris10_mec2.bin +firmware: amdgpu/polaris10_mec2_2.bin +firmware: amdgpu/polaris10_mec_2.bin +firmware: amdgpu/polaris10_pfp.bin +firmware: amdgpu/polaris10_pfp_2.bin +firmware: amdgpu/polaris10_rlc.bin +firmware: amdgpu/polaris10_sdma.bin +firmware: amdgpu/polaris10_sdma1.bin +firmware: amdgpu/polaris10_smc.bin +firmware: amdgpu/polaris10_smc_sk.bin +firmware: amdgpu/polaris10_uvd.bin +firmware: amdgpu/polaris10_vce.bin +firmware: amdgpu/polaris11_ce.bin +firmware: amdgpu/polaris11_ce_2.bin +firmware: amdgpu/polaris11_k2_smc.bin +firmware: amdgpu/polaris11_k_mc.bin +firmware: amdgpu/polaris11_k_smc.bin +firmware: amdgpu/polaris11_mc.bin +firmware: amdgpu/polaris11_me.bin +firmware: amdgpu/polaris11_me_2.bin +firmware: amdgpu/polaris11_mec.bin +firmware: amdgpu/polaris11_mec2.bin +firmware: amdgpu/polaris11_mec2_2.bin +firmware: amdgpu/polaris11_mec_2.bin +firmware: amdgpu/polaris11_pfp.bin +firmware: amdgpu/polaris11_pfp_2.bin +firmware: amdgpu/polaris11_rlc.bin +firmware: amdgpu/polaris11_sdma.bin +firmware: amdgpu/polaris11_sdma1.bin +firmware: amdgpu/polaris11_smc.bin +firmware: amdgpu/polaris11_smc_sk.bin +firmware: amdgpu/polaris11_uvd.bin +firmware: amdgpu/polaris11_vce.bin +firmware: amdgpu/polaris12_32_mc.bin +firmware: amdgpu/polaris12_ce.bin +firmware: amdgpu/polaris12_ce_2.bin +firmware: amdgpu/polaris12_k_mc.bin +firmware: amdgpu/polaris12_k_smc.bin +firmware: amdgpu/polaris12_mc.bin +firmware: amdgpu/polaris12_me.bin +firmware: amdgpu/polaris12_me_2.bin +firmware: amdgpu/polaris12_mec.bin +firmware: amdgpu/polaris12_mec2.bin +firmware: amdgpu/polaris12_mec2_2.bin +firmware: amdgpu/polaris12_mec_2.bin +firmware: amdgpu/polaris12_pfp.bin +firmware: amdgpu/polaris12_pfp_2.bin +firmware: amdgpu/polaris12_rlc.bin +firmware: amdgpu/polaris12_sdma.bin +firmware: amdgpu/polaris12_sdma1.bin +firmware: amdgpu/polaris12_smc.bin +firmware: amdgpu/polaris12_uvd.bin +firmware: amdgpu/polaris12_vce.bin +firmware: amdgpu/psp_13_0_0_sos.bin +firmware: amdgpu/psp_13_0_0_ta.bin +firmware: amdgpu/psp_13_0_10_sos.bin +firmware: amdgpu/psp_13_0_10_ta.bin +firmware: amdgpu/psp_13_0_11_ta.bin +firmware: amdgpu/psp_13_0_11_toc.bin +firmware: amdgpu/psp_13_0_4_ta.bin +firmware: amdgpu/psp_13_0_4_toc.bin +firmware: amdgpu/psp_13_0_5_ta.bin +firmware: amdgpu/psp_13_0_5_toc.bin +firmware: amdgpu/psp_13_0_6_sos.bin +firmware: amdgpu/psp_13_0_6_ta.bin +firmware: amdgpu/psp_13_0_7_sos.bin +firmware: amdgpu/psp_13_0_7_ta.bin +firmware: amdgpu/psp_13_0_8_ta.bin +firmware: amdgpu/psp_13_0_8_toc.bin +firmware: amdgpu/raven2_asd.bin +firmware: amdgpu/raven2_ce.bin +firmware: amdgpu/raven2_gpu_info.bin +firmware: amdgpu/raven2_me.bin +firmware: amdgpu/raven2_mec.bin +firmware: amdgpu/raven2_mec2.bin +firmware: amdgpu/raven2_pfp.bin +firmware: amdgpu/raven2_rlc.bin +firmware: amdgpu/raven2_sdma.bin +firmware: amdgpu/raven2_ta.bin +firmware: amdgpu/raven2_vcn.bin +firmware: amdgpu/raven_asd.bin +firmware: amdgpu/raven_ce.bin +firmware: amdgpu/raven_dmcu.bin +firmware: amdgpu/raven_gpu_info.bin +firmware: amdgpu/raven_kicker_rlc.bin +firmware: amdgpu/raven_me.bin +firmware: amdgpu/raven_mec.bin +firmware: amdgpu/raven_mec2.bin +firmware: amdgpu/raven_pfp.bin +firmware: amdgpu/raven_rlc.bin +firmware: amdgpu/raven_sdma.bin +firmware: amdgpu/raven_ta.bin +firmware: amdgpu/raven_vcn.bin +firmware: amdgpu/renoir_asd.bin +firmware: amdgpu/renoir_ce.bin +firmware: amdgpu/renoir_dmcub.bin +firmware: amdgpu/renoir_me.bin +firmware: amdgpu/renoir_mec.bin +firmware: amdgpu/renoir_pfp.bin +firmware: amdgpu/renoir_rlc.bin +firmware: amdgpu/renoir_sdma.bin +firmware: amdgpu/renoir_ta.bin +firmware: amdgpu/renoir_vcn.bin +firmware: amdgpu/sdma_4_4_2.bin +firmware: amdgpu/sdma_5_2_6.bin +firmware: amdgpu/sdma_5_2_7.bin +firmware: amdgpu/sdma_6_0_0.bin +firmware: amdgpu/sdma_6_0_1.bin +firmware: amdgpu/sdma_6_0_2.bin +firmware: amdgpu/sdma_6_0_3.bin +firmware: amdgpu/si58_mc.bin +firmware: amdgpu/sienna_cichlid_cap.bin +firmware: amdgpu/sienna_cichlid_ce.bin +firmware: amdgpu/sienna_cichlid_dmcub.bin +firmware: amdgpu/sienna_cichlid_me.bin +firmware: amdgpu/sienna_cichlid_mec.bin +firmware: amdgpu/sienna_cichlid_mec2.bin +firmware: amdgpu/sienna_cichlid_mes.bin +firmware: amdgpu/sienna_cichlid_mes1.bin +firmware: amdgpu/sienna_cichlid_pfp.bin +firmware: amdgpu/sienna_cichlid_rlc.bin +firmware: amdgpu/sienna_cichlid_sdma.bin +firmware: amdgpu/sienna_cichlid_smc.bin +firmware: amdgpu/sienna_cichlid_sos.bin +firmware: amdgpu/sienna_cichlid_ta.bin +firmware: amdgpu/sienna_cichlid_vcn.bin +firmware: amdgpu/smu_13_0_0.bin +firmware: amdgpu/smu_13_0_10.bin +firmware: amdgpu/smu_13_0_7.bin +firmware: amdgpu/stoney_ce.bin +firmware: amdgpu/stoney_me.bin +firmware: amdgpu/stoney_mec.bin +firmware: amdgpu/stoney_pfp.bin +firmware: amdgpu/stoney_rlc.bin +firmware: amdgpu/stoney_sdma.bin +firmware: amdgpu/stoney_uvd.bin +firmware: amdgpu/stoney_vce.bin +firmware: amdgpu/tahiti_ce.bin +firmware: amdgpu/tahiti_mc.bin +firmware: amdgpu/tahiti_me.bin +firmware: amdgpu/tahiti_pfp.bin +firmware: amdgpu/tahiti_rlc.bin +firmware: amdgpu/tahiti_smc.bin +firmware: amdgpu/tahiti_uvd.bin +firmware: amdgpu/tonga_ce.bin +firmware: amdgpu/tonga_k_smc.bin +firmware: amdgpu/tonga_mc.bin +firmware: amdgpu/tonga_me.bin +firmware: amdgpu/tonga_mec.bin +firmware: amdgpu/tonga_mec2.bin +firmware: amdgpu/tonga_pfp.bin +firmware: amdgpu/tonga_rlc.bin +firmware: amdgpu/tonga_sdma.bin +firmware: amdgpu/tonga_sdma1.bin +firmware: amdgpu/tonga_smc.bin +firmware: amdgpu/tonga_uvd.bin +firmware: amdgpu/tonga_vce.bin +firmware: amdgpu/topaz_ce.bin +firmware: amdgpu/topaz_k_smc.bin +firmware: amdgpu/topaz_mc.bin +firmware: amdgpu/topaz_me.bin +firmware: amdgpu/topaz_mec.bin +firmware: amdgpu/topaz_pfp.bin +firmware: amdgpu/topaz_rlc.bin +firmware: amdgpu/topaz_sdma.bin +firmware: amdgpu/topaz_sdma1.bin +firmware: amdgpu/topaz_smc.bin +firmware: amdgpu/vangogh_asd.bin +firmware: amdgpu/vangogh_ce.bin +firmware: amdgpu/vangogh_dmcub.bin +firmware: amdgpu/vangogh_me.bin +firmware: amdgpu/vangogh_mec.bin +firmware: amdgpu/vangogh_mec2.bin +firmware: amdgpu/vangogh_pfp.bin +firmware: amdgpu/vangogh_rlc.bin +firmware: amdgpu/vangogh_sdma.bin +firmware: amdgpu/vangogh_toc.bin +firmware: amdgpu/vangogh_vcn.bin +firmware: amdgpu/vcn_3_1_2.bin +firmware: amdgpu/vcn_4_0_0.bin +firmware: amdgpu/vcn_4_0_2.bin +firmware: amdgpu/vcn_4_0_3.bin +firmware: amdgpu/vcn_4_0_4.bin +firmware: amdgpu/vega10_acg_smc.bin +firmware: amdgpu/vega10_asd.bin +firmware: amdgpu/vega10_cap.bin +firmware: amdgpu/vega10_ce.bin +firmware: amdgpu/vega10_gpu_info.bin +firmware: amdgpu/vega10_me.bin +firmware: amdgpu/vega10_mec.bin +firmware: amdgpu/vega10_mec2.bin +firmware: amdgpu/vega10_pfp.bin +firmware: amdgpu/vega10_rlc.bin +firmware: amdgpu/vega10_sdma.bin +firmware: amdgpu/vega10_sdma1.bin +firmware: amdgpu/vega10_smc.bin +firmware: amdgpu/vega10_sos.bin +firmware: amdgpu/vega10_uvd.bin +firmware: amdgpu/vega10_vce.bin +firmware: amdgpu/vega12_asd.bin +firmware: amdgpu/vega12_ce.bin +firmware: amdgpu/vega12_gpu_info.bin +firmware: amdgpu/vega12_me.bin +firmware: amdgpu/vega12_mec.bin +firmware: amdgpu/vega12_mec2.bin +firmware: amdgpu/vega12_pfp.bin +firmware: amdgpu/vega12_rlc.bin +firmware: amdgpu/vega12_sdma.bin +firmware: amdgpu/vega12_sdma1.bin +firmware: amdgpu/vega12_smc.bin +firmware: amdgpu/vega12_sos.bin +firmware: amdgpu/vega12_uvd.bin +firmware: amdgpu/vega12_vce.bin +firmware: amdgpu/vega20_asd.bin +firmware: amdgpu/vega20_ce.bin +firmware: amdgpu/vega20_me.bin +firmware: amdgpu/vega20_mec.bin +firmware: amdgpu/vega20_mec2.bin +firmware: amdgpu/vega20_pfp.bin +firmware: amdgpu/vega20_rlc.bin +firmware: amdgpu/vega20_sdma.bin +firmware: amdgpu/vega20_sdma1.bin +firmware: amdgpu/vega20_smc.bin +firmware: amdgpu/vega20_sos.bin +firmware: amdgpu/vega20_ta.bin +firmware: amdgpu/vega20_uvd.bin +firmware: amdgpu/vega20_vce.bin +firmware: amdgpu/vegam_ce.bin +firmware: amdgpu/vegam_me.bin +firmware: amdgpu/vegam_mec.bin +firmware: amdgpu/vegam_mec2.bin +firmware: amdgpu/vegam_pfp.bin +firmware: amdgpu/vegam_rlc.bin +firmware: amdgpu/vegam_sdma.bin +firmware: amdgpu/vegam_sdma1.bin +firmware: amdgpu/vegam_smc.bin +firmware: amdgpu/vegam_uvd.bin +firmware: amdgpu/vegam_vce.bin +firmware: amdgpu/verde_ce.bin +firmware: amdgpu/verde_k_smc.bin +firmware: amdgpu/verde_mc.bin +firmware: amdgpu/verde_me.bin +firmware: amdgpu/verde_pfp.bin +firmware: amdgpu/verde_rlc.bin +firmware: amdgpu/verde_smc.bin +firmware: amdgpu/verde_uvd.bin +firmware: amdgpu/yellow_carp_ce.bin +firmware: amdgpu/yellow_carp_dmcub.bin +firmware: amdgpu/yellow_carp_me.bin +firmware: amdgpu/yellow_carp_mec.bin +firmware: amdgpu/yellow_carp_mec2.bin +firmware: amdgpu/yellow_carp_pfp.bin +firmware: amdgpu/yellow_carp_rlc.bin +firmware: amdgpu/yellow_carp_sdma.bin +firmware: amdgpu/yellow_carp_ta.bin +firmware: amdgpu/yellow_carp_toc.bin +firmware: amdgpu/yellow_carp_vcn.bin +firmware: ar5523.bin +firmware: ast_dp501_fw.bin +firmware: ath10k/QCA6174/hw2.1/board-2.bin +firmware: ath10k/QCA6174/hw2.1/board.bin +firmware: ath10k/QCA6174/hw2.1/firmware-4.bin +firmware: ath10k/QCA6174/hw2.1/firmware-5.bin +firmware: ath10k/QCA6174/hw3.0/board-2.bin +firmware: ath10k/QCA6174/hw3.0/board.bin +firmware: ath10k/QCA6174/hw3.0/firmware-4.bin +firmware: ath10k/QCA6174/hw3.0/firmware-5.bin +firmware: ath10k/QCA6174/hw3.0/firmware-6.bin +firmware: ath10k/QCA9377/hw1.0/board.bin +firmware: ath10k/QCA9377/hw1.0/firmware-5.bin +firmware: ath10k/QCA9377/hw1.0/firmware-6.bin +firmware: ath10k/QCA9887/hw1.0/board-2.bin +firmware: ath10k/QCA9887/hw1.0/board.bin +firmware: ath10k/QCA9887/hw1.0/firmware-5.bin +firmware: ath10k/QCA988X/hw2.0/board-2.bin +firmware: ath10k/QCA988X/hw2.0/board.bin +firmware: ath10k/QCA988X/hw2.0/firmware-2.bin +firmware: ath10k/QCA988X/hw2.0/firmware-3.bin +firmware: ath10k/QCA988X/hw2.0/firmware-4.bin +firmware: ath10k/QCA988X/hw2.0/firmware-5.bin +firmware: ath11k/QCA6390/hw2.0/* +firmware: ath11k/QCN9074/hw1.0/* +firmware: ath11k/WCN6855/hw2.0/* +firmware: ath11k/WCN6855/hw2.1/* +firmware: ath6k/AR6003/hw2.0/athwlan.bin.z77 +firmware: ath6k/AR6003/hw2.0/bdata.SD31.bin +firmware: ath6k/AR6003/hw2.0/bdata.bin +firmware: ath6k/AR6003/hw2.0/data.patch.bin +firmware: ath6k/AR6003/hw2.0/otp.bin.z77 +firmware: ath6k/AR6003/hw2.1.1/athwlan.bin +firmware: ath6k/AR6003/hw2.1.1/bdata.SD31.bin +firmware: ath6k/AR6003/hw2.1.1/bdata.bin +firmware: ath6k/AR6003/hw2.1.1/data.patch.bin +firmware: ath6k/AR6003/hw2.1.1/otp.bin +firmware: ath6k/AR6004/hw1.0/bdata.DB132.bin +firmware: ath6k/AR6004/hw1.0/bdata.bin +firmware: ath6k/AR6004/hw1.0/fw.ram.bin +firmware: ath6k/AR6004/hw1.1/bdata.DB132.bin +firmware: ath6k/AR6004/hw1.1/bdata.bin +firmware: ath6k/AR6004/hw1.1/fw.ram.bin +firmware: ath6k/AR6004/hw1.2/bdata.bin +firmware: ath6k/AR6004/hw1.2/fw.ram.bin +firmware: ath6k/AR6004/hw1.3/bdata.bin +firmware: ath6k/AR6004/hw1.3/fw.ram.bin +firmware: ath9k_htc/htc_7010-1.4.0.fw +firmware: ath9k_htc/htc_9271-1.4.0.fw +firmware: atmel_at76c502-wpa.bin +firmware: atmel_at76c502.bin +firmware: atmel_at76c502_3com-wpa.bin +firmware: atmel_at76c502_3com.bin +firmware: atmel_at76c502d-wpa.bin +firmware: atmel_at76c502d.bin +firmware: atmel_at76c502e-wpa.bin +firmware: atmel_at76c502e.bin +firmware: atmel_at76c503-i3861.bin +firmware: atmel_at76c503-i3863.bin +firmware: atmel_at76c503-rfmd-acc.bin +firmware: atmel_at76c503-rfmd.bin +firmware: atmel_at76c504-wpa.bin +firmware: atmel_at76c504.bin +firmware: atmel_at76c504_2958-wpa.bin +firmware: atmel_at76c504_2958.bin +firmware: atmel_at76c504a_2958-wpa.bin +firmware: atmel_at76c504a_2958.bin +firmware: atmel_at76c505-rfmd.bin +firmware: atmel_at76c505-rfmd2958.bin +firmware: atmel_at76c505a-rfmd2958.bin +firmware: atmel_at76c505amx-rfmd.bin +firmware: atmel_at76c506-wpa.bin +firmware: atmel_at76c506.bin +firmware: atsc_denver.inp +firmware: av7110/bootcode.bin +firmware: b43/ucode11.fw +firmware: b43/ucode13.fw +firmware: b43/ucode14.fw +firmware: b43/ucode15.fw +firmware: b43/ucode16_lp.fw +firmware: b43/ucode16_mimo.fw +firmware: b43/ucode24_lcn.fw +firmware: b43/ucode25_lcn.fw +firmware: b43/ucode25_mimo.fw +firmware: b43/ucode26_mimo.fw +firmware: b43/ucode29_mimo.fw +firmware: b43/ucode30_mimo.fw +firmware: b43/ucode33_lcn40.fw +firmware: b43/ucode40.fw +firmware: b43/ucode42.fw +firmware: b43/ucode5.fw +firmware: b43/ucode9.fw +firmware: b43legacy/ucode2.fw +firmware: b43legacy/ucode4.fw +firmware: bnx2/bnx2-mips-06-6.2.3.fw +firmware: bnx2/bnx2-mips-09-6.2.1b.fw +firmware: bnx2/bnx2-rv2p-06-6.0.15.fw +firmware: bnx2/bnx2-rv2p-09-6.0.17.fw +firmware: bnx2/bnx2-rv2p-09ax-6.0.17.fw +firmware: bnx2x/bnx2x-e1-7.13.15.0.fw +firmware: bnx2x/bnx2x-e1-7.13.21.0.fw +firmware: bnx2x/bnx2x-e1h-7.13.15.0.fw +firmware: bnx2x/bnx2x-e1h-7.13.21.0.fw +firmware: bnx2x/bnx2x-e2-7.13.15.0.fw +firmware: bnx2x/bnx2x-e2-7.13.21.0.fw +firmware: brcm/bcm43xx-0.fw +firmware: brcm/bcm43xx_hdr-0.fw +firmware: brcm/brcmfmac*-pcie.*.bin +firmware: brcm/brcmfmac*-pcie.*.clm_blob +firmware: brcm/brcmfmac*-pcie.*.txcap_blob +firmware: brcm/brcmfmac*-pcie.*.txt +firmware: brcm/brcmfmac*-pcie.txt +firmware: brcm/brcmfmac*-sdio.*.bin +firmware: brcm/brcmfmac*-sdio.*.txt +firmware: brcm/brcmfmac43012-sdio.bin +firmware: brcm/brcmfmac43012-sdio.clm_blob +firmware: brcm/brcmfmac43143-sdio.bin +firmware: brcm/brcmfmac43143.bin +firmware: brcm/brcmfmac43236b.bin +firmware: brcm/brcmfmac43241b0-sdio.bin +firmware: brcm/brcmfmac43241b4-sdio.bin +firmware: brcm/brcmfmac43241b5-sdio.bin +firmware: brcm/brcmfmac43242a.bin +firmware: brcm/brcmfmac4329-sdio.bin +firmware: brcm/brcmfmac4330-sdio.bin +firmware: brcm/brcmfmac4334-sdio.bin +firmware: brcm/brcmfmac43340-sdio.bin +firmware: brcm/brcmfmac4335-sdio.bin +firmware: brcm/brcmfmac43362-sdio.bin +firmware: brcm/brcmfmac4339-sdio.bin +firmware: brcm/brcmfmac43430-sdio.bin +firmware: brcm/brcmfmac43430-sdio.clm_blob +firmware: brcm/brcmfmac43430a0-sdio.bin +firmware: brcm/brcmfmac43430b0-sdio.bin +firmware: brcm/brcmfmac43439-sdio.bin +firmware: brcm/brcmfmac43439-sdio.clm_blob +firmware: brcm/brcmfmac43455-sdio.bin +firmware: brcm/brcmfmac43455-sdio.clm_blob +firmware: brcm/brcmfmac43456-sdio.bin +firmware: brcm/brcmfmac4350-pcie.bin +firmware: brcm/brcmfmac4350c2-pcie.bin +firmware: brcm/brcmfmac4354-sdio.bin +firmware: brcm/brcmfmac4354-sdio.clm_blob +firmware: brcm/brcmfmac4355-pcie.bin +firmware: brcm/brcmfmac4355-pcie.clm_blob +firmware: brcm/brcmfmac4355c1-pcie.bin +firmware: brcm/brcmfmac4355c1-pcie.clm_blob +firmware: brcm/brcmfmac4356-pcie.bin +firmware: brcm/brcmfmac4356-pcie.clm_blob +firmware: brcm/brcmfmac4356-sdio.bin +firmware: brcm/brcmfmac4356-sdio.clm_blob +firmware: brcm/brcmfmac43569.bin +firmware: brcm/brcmfmac43570-pcie.bin +firmware: brcm/brcmfmac43570-pcie.clm_blob +firmware: brcm/brcmfmac4358-pcie.bin +firmware: brcm/brcmfmac4359-pcie.bin +firmware: brcm/brcmfmac4359-sdio.bin +firmware: brcm/brcmfmac4359c-pcie.bin +firmware: brcm/brcmfmac43602-pcie.bin +firmware: brcm/brcmfmac4364b2-pcie.bin +firmware: brcm/brcmfmac4364b2-pcie.clm_blob +firmware: brcm/brcmfmac4364b3-pcie.bin +firmware: brcm/brcmfmac4364b3-pcie.clm_blob +firmware: brcm/brcmfmac4365b-pcie.bin +firmware: brcm/brcmfmac4365c-pcie.bin +firmware: brcm/brcmfmac4366b-pcie.bin +firmware: brcm/brcmfmac4366c-pcie.bin +firmware: brcm/brcmfmac4371-pcie.bin +firmware: brcm/brcmfmac4373-sdio.bin +firmware: brcm/brcmfmac4373-sdio.clm_blob +firmware: brcm/brcmfmac4373.bin +firmware: brcm/brcmfmac43752-sdio.bin +firmware: brcm/brcmfmac43752-sdio.clm_blob +firmware: brcm/brcmfmac4377b3-pcie.bin +firmware: brcm/brcmfmac4377b3-pcie.clm_blob +firmware: brcm/brcmfmac4378b1-pcie.bin +firmware: brcm/brcmfmac4378b1-pcie.clm_blob +firmware: brcm/brcmfmac4378b3-pcie.bin +firmware: brcm/brcmfmac4378b3-pcie.clm_blob +firmware: brcm/brcmfmac4387c2-pcie.bin +firmware: brcm/brcmfmac4387c2-pcie.clm_blob +firmware: c218tunx.cod +firmware: c320tunx.cod +firmware: carl9170-1.fw +firmware: cavium/cnn55xx_se.fw +firmware: cbfw-3.2.5.1.bin +firmware: cis/3CCFEM556.cis +firmware: cis/3CXEM556.cis +firmware: cis/COMpad2.cis +firmware: cis/COMpad4.cis +firmware: cis/DP83903.cis +firmware: cis/LA-PCM.cis +firmware: cis/MT5634ZLX.cis +firmware: cis/NE2K.cis +firmware: cis/PCMLM28.cis +firmware: cis/PE-200.cis +firmware: cis/PE520.cis +firmware: cis/RS-COM-2P.cis +firmware: cis/SW_555_SER.cis +firmware: cis/SW_7xx_SER.cis +firmware: cis/SW_8xx_SER.cis +firmware: cis/tamarack.cis +firmware: cmmb_ming_app.inp +firmware: cmmb_vega_12mhz.inp +firmware: cmmb_venice_12mhz.inp +firmware: comedi/jr3pci.idm +firmware: cp204unx.cod +firmware: ct2fw-3.2.5.1.bin +firmware: ctfw-3.2.5.1.bin +firmware: cxgb3/ael2005_opt_edc.bin +firmware: cxgb3/ael2005_twx_edc.bin +firmware: cxgb3/ael2020_twx_edc.bin +firmware: cxgb3/t3b_psram-1.1.0.bin +firmware: cxgb3/t3c_psram-1.1.0.bin +firmware: cxgb3/t3fw-7.12.0.bin +firmware: cxgb4/t4fw.bin +firmware: cxgb4/t5fw.bin +firmware: cxgb4/t6fw.bin +firmware: daqboard2000_firmware.bin +firmware: dvb-cx18-mpc718-mt352.fw +firmware: dvb-demod-m88ds3103.fw +firmware: dvb-demod-m88ds3103b.fw +firmware: dvb-demod-m88rs6000.fw +firmware: dvb-demod-mn88472-02.fw +firmware: dvb-demod-mn88473-01.fw +firmware: dvb-demod-mxl692.fw +firmware: dvb-demod-si2165.fw +firmware: dvb-demod-si2168-a20-01.fw +firmware: dvb-demod-si2168-a30-01.fw +firmware: dvb-demod-si2168-b40-01.fw +firmware: dvb-demod-si2168-d60-01.fw +firmware: dvb-fe-af9013.fw +firmware: dvb-fe-cx24117.fw +firmware: dvb-fe-drxj-mc-1.0.8.fw +firmware: dvb-fe-ds3000.fw +firmware: dvb-fe-tda10071.fw +firmware: dvb-fe-xc4000-1.4.1.fw +firmware: dvb-fe-xc4000-1.4.fw +firmware: dvb-fe-xc5000-1.6.114.fw +firmware: dvb-fe-xc5000c-4.1.30.7.fw +firmware: dvb-tuner-si2141-a10-01.fw +firmware: dvb-tuner-si2157-a30-01.fw +firmware: dvb-tuner-si2158-a20-01.fw +firmware: dvb-usb-af9015.fw +firmware: dvb-usb-af9035-02.fw +firmware: dvb-usb-dib0700-1.20.fw +firmware: dvb-usb-dw2101.fw +firmware: dvb-usb-dw2102.fw +firmware: dvb-usb-dw2104.fw +firmware: dvb-usb-dw3101.fw +firmware: dvb-usb-ec168.fw +firmware: dvb-usb-it9135-01.fw +firmware: dvb-usb-it9135-02.fw +firmware: dvb-usb-it9303-01.fw +firmware: dvb-usb-lme2510-lg.fw +firmware: dvb-usb-lme2510-s0194.fw +firmware: dvb-usb-lme2510c-lg.fw +firmware: dvb-usb-lme2510c-rs2000.fw +firmware: dvb-usb-lme2510c-s0194.fw +firmware: dvb-usb-lme2510c-s7395.fw +firmware: dvb-usb-p1100.fw +firmware: dvb-usb-p7500.fw +firmware: dvb-usb-s630.fw +firmware: dvb-usb-s660.fw +firmware: dvb-usb-terratec-h7-az6007.fw +firmware: dvb_driver_si2141_rom60.fw +firmware: dvb_driver_si2141_rom61.fw +firmware: dvb_driver_si2146_rom11.fw +firmware: dvb_driver_si2147_rom50.fw +firmware: dvb_driver_si2148_rom32.fw +firmware: dvb_driver_si2148_rom33.fw +firmware: dvb_driver_si2157_rom50.fw +firmware: dvb_driver_si2158_rom51.fw +firmware: dvb_driver_si2177_rom50.fw +firmware: dvb_driver_si2178_rom50.fw +firmware: dvb_nova_12mhz.inp +firmware: dvb_nova_12mhz_b0.inp +firmware: dvb_rio.inp +firmware: dvbh_rio.inp +firmware: e100/d101m_ucode.bin +firmware: e100/d101s_ucode.bin +firmware: e100/d102e_ucode.bin +firmware: edgeport/boot.fw +firmware: edgeport/boot2.fw +firmware: edgeport/down.fw +firmware: edgeport/down2.fw +firmware: edgeport/down3.bin +firmware: emi26/bitstream.fw +firmware: emi26/firmware.fw +firmware: emi26/loader.fw +firmware: emi62/bitstream.fw +firmware: emi62/loader.fw +firmware: emi62/spdif.fw +firmware: ene-ub6250/ms_init.bin +firmware: ene-ub6250/ms_rdwr.bin +firmware: ene-ub6250/msp_rdwr.bin +firmware: ene-ub6250/sd_init1.bin +firmware: ene-ub6250/sd_init2.bin +firmware: ene-ub6250/sd_rdwr.bin +firmware: f2255usb.bin +firmware: fm_radio.inp +firmware: fm_radio_rio.inp +firmware: fw.ram.bin +firmware: hfi1_dc8051.fw +firmware: hfi1_fabric.fw +firmware: hfi1_pcie.fw +firmware: hfi1_sbus.fw +firmware: i915/adlp_dmc.bin +firmware: i915/adlp_dmc_ver2_16.bin +firmware: i915/adlp_guc_69.0.3.bin +firmware: i915/adlp_guc_70.1.1.bin +firmware: i915/adlp_guc_70.bin +firmware: i915/adls_dmc_ver2_01.bin +firmware: i915/bxt_dmc_ver1_07.bin +firmware: i915/bxt_guc_70.1.1.bin +firmware: i915/bxt_huc_2.0.0.bin +firmware: i915/cml_guc_70.1.1.bin +firmware: i915/cml_huc_4.0.0.bin +firmware: i915/dg1_dmc_ver2_02.bin +firmware: i915/dg1_guc_70.bin +firmware: i915/dg1_huc.bin +firmware: i915/dg2_dmc_ver2_08.bin +firmware: i915/dg2_guc_70.bin +firmware: i915/dg2_huc_gsc.bin +firmware: i915/ehl_guc_70.1.1.bin +firmware: i915/ehl_huc_9.0.0.bin +firmware: i915/glk_dmc_ver1_04.bin +firmware: i915/glk_guc_70.1.1.bin +firmware: i915/glk_huc_4.0.0.bin +firmware: i915/icl_dmc_ver1_09.bin +firmware: i915/icl_guc_70.1.1.bin +firmware: i915/icl_huc_9.0.0.bin +firmware: i915/kbl_dmc_ver1_04.bin +firmware: i915/kbl_guc_70.1.1.bin +firmware: i915/kbl_huc_4.0.0.bin +firmware: i915/mtl_dmc.bin +firmware: i915/mtl_guc_70.bin +firmware: i915/mtl_huc_gsc.bin +firmware: i915/rkl_dmc_ver2_03.bin +firmware: i915/skl_dmc_ver1_27.bin +firmware: i915/skl_guc_70.1.1.bin +firmware: i915/skl_huc_2.0.0.bin +firmware: i915/tgl_dmc_ver2_12.bin +firmware: i915/tgl_guc_69.0.3.bin +firmware: i915/tgl_guc_70.1.1.bin +firmware: i915/tgl_guc_70.bin +firmware: i915/tgl_huc.bin +firmware: i915/tgl_huc_7.9.3.bin +firmware: idt82p33xxx.bin +firmware: ifpp.bin +firmware: inside-secure/eip197_minifw/ifpp.bin +firmware: inside-secure/eip197_minifw/ipue.bin +firmware: inside-secure/eip197b/ifpp.bin +firmware: inside-secure/eip197b/ipue.bin +firmware: inside-secure/eip197d/ifpp.bin +firmware: inside-secure/eip197d/ipue.bin +firmware: intel/ice/ddp/ice.pkg +firmware: ipue.bin +firmware: ipw2100-1.3-i.fw +firmware: ipw2100-1.3-p.fw +firmware: ipw2100-1.3.fw +firmware: ipw2200-bss.fw +firmware: ipw2200-ibss.fw +firmware: ipw2200-sniffer.fw +firmware: isci/isci_firmware.bin +firmware: isdbt_nova_12mhz.inp +firmware: isdbt_nova_12mhz_b0.inp +firmware: isdbt_pele.inp +firmware: isdbt_rio.inp +firmware: isdn/ISAR.BIN +firmware: isight.fw +firmware: isl3886pci +firmware: isl3886usb +firmware: isl3887usb +firmware: iwlwifi-100-5.ucode +firmware: iwlwifi-1000-5.ucode +firmware: iwlwifi-105-6.ucode +firmware: iwlwifi-135-6.ucode +firmware: iwlwifi-2000-6.ucode +firmware: iwlwifi-2030-6.ucode +firmware: iwlwifi-3160-17.ucode +firmware: iwlwifi-3168-29.ucode +firmware: iwlwifi-3945-2.ucode +firmware: iwlwifi-4965-2.ucode +firmware: iwlwifi-5000-5.ucode +firmware: iwlwifi-5150-2.ucode +firmware: iwlwifi-6000-6.ucode +firmware: iwlwifi-6000g2a-6.ucode +firmware: iwlwifi-6000g2b-6.ucode +firmware: iwlwifi-6050-5.ucode +firmware: iwlwifi-7260-17.ucode +firmware: iwlwifi-7265-17.ucode +firmware: iwlwifi-7265D-29.ucode +firmware: iwlwifi-8000C-36.ucode +firmware: iwlwifi-8265-36.ucode +firmware: iwlwifi-9000-pu-b0-jf-b0-46.ucode +firmware: iwlwifi-9260-th-b0-jf-b0-46.ucode +firmware: iwlwifi-Qu-b0-hr-b0-77.ucode +firmware: iwlwifi-Qu-b0-jf-b0-77.ucode +firmware: iwlwifi-Qu-c0-hr-b0-77.ucode +firmware: iwlwifi-QuZ-a0-hr-b0-77.ucode +firmware: iwlwifi-QuZ-a0-jf-b0-77.ucode +firmware: iwlwifi-bz-a0-fm-b0-83.ucode +firmware: iwlwifi-bz-a0-fm-c0-83.ucode +firmware: iwlwifi-bz-a0-fm4-b0-83.ucode +firmware: iwlwifi-bz-a0-gf-a0-83.ucode +firmware: iwlwifi-bz-a0-gf4-a0-83.ucode +firmware: iwlwifi-bz-a0-hr-b0-83.ucode +firmware: iwlwifi-cc-a0-77.ucode +firmware: iwlwifi-gl-b0-fm-b0-83.ucode +firmware: iwlwifi-gl-c0-fm-c0-83.ucode +firmware: iwlwifi-ma-a0-gf-a0-83.ucode +firmware: iwlwifi-ma-a0-gf4-a0-83.ucode +firmware: iwlwifi-ma-a0-hr-b0-83.ucode +firmware: iwlwifi-ma-a0-mr-a0-83.ucode +firmware: iwlwifi-ma-b0-gf-a0-83.ucode +firmware: iwlwifi-ma-b0-gf4-a0-83.ucode +firmware: iwlwifi-ma-b0-hr-b0-83.ucode +firmware: iwlwifi-ma-b0-mr-a0-83.ucode +firmware: iwlwifi-sc-a0-fm-b0-83.ucode +firmware: iwlwifi-sc-a0-fm-c0-83.ucode +firmware: iwlwifi-sc-a0-gf-a0-83.ucode +firmware: iwlwifi-sc-a0-gf4-a0-83.ucode +firmware: iwlwifi-sc-a0-hr-b0-83.ucode +firmware: iwlwifi-sc-a0-wh-a0-83.ucode +firmware: iwlwifi-so-a0-gf-a0-83.ucode +firmware: iwlwifi-so-a0-hr-b0-83.ucode +firmware: iwlwifi-so-a0-jf-b0-83.ucode +firmware: iwlwifi-ty-a0-gf-a0-83.ucode +firmware: kaweth/new_code.bin +firmware: kaweth/new_code_fix.bin +firmware: kaweth/trigger_code.bin +firmware: kaweth/trigger_code_fix.bin +firmware: keyspan/mpr.fw +firmware: keyspan/usa18x.fw +firmware: keyspan/usa19.fw +firmware: keyspan/usa19qi.fw +firmware: keyspan/usa19qw.fw +firmware: keyspan/usa19w.fw +firmware: keyspan/usa28.fw +firmware: keyspan/usa28x.fw +firmware: keyspan/usa28xa.fw +firmware: keyspan/usa28xb.fw +firmware: keyspan/usa49w.fw +firmware: keyspan/usa49wlc.fw +firmware: keyspan_pda/keyspan_pda.fw +firmware: keyspan_pda/xircom_pgs.fw +firmware: ks7010sd.rom +firmware: lantiq/xrx200_phy11g_a14.bin +firmware: lantiq/xrx200_phy11g_a22.bin +firmware: lantiq/xrx200_phy22f_a14.bin +firmware: lantiq/xrx200_phy22f_a22.bin +firmware: lantiq/xrx300_phy11g_a21.bin +firmware: lantiq/xrx300_phy22f_a21.bin +firmware: lattice-ecp3.bit +firmware: lbtf_usb.bin +firmware: lgs8g75.fw +firmware: libertas/cf8305.bin +firmware: libertas/cf8381.bin +firmware: libertas/cf8381_helper.bin +firmware: libertas/cf8385.bin +firmware: libertas/cf8385_helper.bin +firmware: libertas/gspi8385.bin +firmware: libertas/gspi8385_helper.bin +firmware: libertas/gspi8385_hlp.bin +firmware: libertas/gspi8686.bin +firmware: libertas/gspi8686_hlp.bin +firmware: libertas/gspi8686_v9.bin +firmware: libertas/gspi8686_v9_helper.bin +firmware: libertas/gspi8688.bin +firmware: libertas/gspi8688_helper.bin +firmware: libertas/sd8385.bin +firmware: libertas/sd8385_helper.bin +firmware: libertas/sd8686_v8.bin +firmware: libertas/sd8686_v8_helper.bin +firmware: libertas/sd8686_v9.bin +firmware: libertas/sd8686_v9_helper.bin +firmware: libertas/sd8688.bin +firmware: libertas/sd8688_helper.bin +firmware: libertas/usb8388.bin +firmware: libertas/usb8388_v5.bin +firmware: libertas/usb8388_v9.bin +firmware: libertas/usb8682.bin +firmware: libertas_cs.fw +firmware: libertas_cs_helper.fw +firmware: liquidio/lio_210nv_nic.bin +firmware: liquidio/lio_210sv_nic.bin +firmware: liquidio/lio_23xx_nic.bin +firmware: liquidio/lio_410nv_nic.bin +firmware: me2600_firmware.bin +firmware: mediatek/WIFI_MT7922_patch_mcu_1_1_hdr.bin +firmware: mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin +firmware: mediatek/WIFI_RAM_CODE_MT7922_1.bin +firmware: mediatek/WIFI_RAM_CODE_MT7961_1.bin +firmware: mediatek/mt7610e.bin +firmware: mediatek/mt7610u.bin +firmware: mediatek/mt7615_cr4.bin +firmware: mediatek/mt7615_n9.bin +firmware: mediatek/mt7615_rom_patch.bin +firmware: mediatek/mt7650e.bin +firmware: mediatek/mt7663_n9_rebb.bin +firmware: mediatek/mt7663_n9_v3.bin +firmware: mediatek/mt7663pr2h.bin +firmware: mediatek/mt7663pr2h_rebb.bin +firmware: mediatek/mt7915_rom_patch.bin +firmware: mediatek/mt7915_wa.bin +firmware: mediatek/mt7915_wm.bin +firmware: mediatek/mt7916_rom_patch.bin +firmware: mediatek/mt7916_wa.bin +firmware: mediatek/mt7916_wm.bin +firmware: mediatek/mt7996/mt7996_rom_patch.bin +firmware: mediatek/mt7996/mt7996_wa.bin +firmware: mediatek/mt7996/mt7996_wm.bin +firmware: mellanox/lc_ini_bundle_2010_1006.bin +firmware: mellanox/mlxsw_spectrum-13.2010.1006.mfa2 +firmware: mellanox/mlxsw_spectrum2-29.2010.1006.mfa2 +firmware: mellanox/mlxsw_spectrum3-30.2010.1006.mfa2 +firmware: metronome.wbf +firmware: microchip/mscc_vsc8574_revb_int8051_29e8.bin +firmware: microchip/mscc_vsc8584_revb_int8051_fb48.bin +firmware: moxa/moxa-1110.fw +firmware: moxa/moxa-1130.fw +firmware: moxa/moxa-1131.fw +firmware: moxa/moxa-1150.fw +firmware: moxa/moxa-1151.fw +firmware: mrvl/sd8786_uapsta.bin +firmware: mrvl/sd8787_uapsta.bin +firmware: mrvl/sd8797_uapsta.bin +firmware: mrvl/sd8887_uapsta.bin +firmware: mrvl/sd8897_uapsta.bin +firmware: mrvl/sd8987_uapsta.bin +firmware: mrvl/sdiouart8997_combo_v4.bin +firmware: mrvl/sdiouartiw416_combo_v0.bin +firmware: mrvl/sdsd8977_combo_v2.bin +firmware: mrvl/sdsd8997_combo_v4.bin +firmware: mrvl/usb8766_uapsta.bin +firmware: mrvl/usb8797_uapsta.bin +firmware: mrvl/usb8801_uapsta.bin +firmware: mrvl/usbusb8997_combo_v4.bin +firmware: mt7601u.bin +firmware: mt7603_e1.bin +firmware: mt7603_e2.bin +firmware: mt7628_e1.bin +firmware: mt7628_e2.bin +firmware: mt7662.bin +firmware: mt7662_rom_patch.bin +firmware: mts_cdma.fw +firmware: mts_edge.fw +firmware: mts_gsm.fw +firmware: mts_mt9234mu.fw +firmware: mts_mt9234zba.fw +firmware: mwl8k/fmimage_8363.fw +firmware: mwl8k/fmimage_8366.fw +firmware: mwl8k/fmimage_8366_ap-3.fw +firmware: mwl8k/fmimage_8687.fw +firmware: mwl8k/helper_8363.fw +firmware: mwl8k/helper_8366.fw +firmware: mwl8k/helper_8687.fw +firmware: myri10ge_eth_z8e.dat +firmware: myri10ge_ethp_z8e.dat +firmware: myri10ge_rss_eth_z8e.dat +firmware: myri10ge_rss_ethp_z8e.dat +firmware: netronome/nic_AMDA0058-0011_2x40.nffw +firmware: netronome/nic_AMDA0058-0012_2x40.nffw +firmware: netronome/nic_AMDA0081-0001_1x40.nffw +firmware: netronome/nic_AMDA0081-0001_4x10.nffw +firmware: netronome/nic_AMDA0096-0001_2x10.nffw +firmware: netronome/nic_AMDA0097-0001_2x40.nffw +firmware: netronome/nic_AMDA0097-0001_4x10_1x40.nffw +firmware: netronome/nic_AMDA0097-0001_8x10.nffw +firmware: netronome/nic_AMDA0099-0001_1x10_1x25.nffw +firmware: netronome/nic_AMDA0099-0001_2x10.nffw +firmware: netronome/nic_AMDA0099-0001_2x25.nffw +firmware: ni6534a.bin +firmware: niscrb01.bin +firmware: niscrb02.bin +firmware: nvidia/ga102/acr/ucode_ahesasc.bin +firmware: nvidia/ga102/acr/ucode_asb.bin +firmware: nvidia/ga102/acr/ucode_unload.bin +firmware: nvidia/ga102/gr/NET_img.bin +firmware: nvidia/ga102/gr/fecs_bl.bin +firmware: nvidia/ga102/gr/fecs_sig.bin +firmware: nvidia/ga102/gr/gpccs_bl.bin +firmware: nvidia/ga102/gr/gpccs_sig.bin +firmware: nvidia/ga102/nvdec/scrubber.bin +firmware: nvidia/ga102/sec2/desc.bin +firmware: nvidia/ga102/sec2/hs_bl_sig.bin +firmware: nvidia/ga102/sec2/image.bin +firmware: nvidia/ga102/sec2/sig.bin +firmware: nvidia/ga103/acr/ucode_ahesasc.bin +firmware: nvidia/ga103/acr/ucode_asb.bin +firmware: nvidia/ga103/acr/ucode_unload.bin +firmware: nvidia/ga103/gr/NET_img.bin +firmware: nvidia/ga103/gr/fecs_bl.bin +firmware: nvidia/ga103/gr/fecs_sig.bin +firmware: nvidia/ga103/gr/gpccs_bl.bin +firmware: nvidia/ga103/gr/gpccs_sig.bin +firmware: nvidia/ga103/nvdec/scrubber.bin +firmware: nvidia/ga103/sec2/desc.bin +firmware: nvidia/ga103/sec2/hs_bl_sig.bin +firmware: nvidia/ga103/sec2/image.bin +firmware: nvidia/ga103/sec2/sig.bin +firmware: nvidia/ga104/acr/ucode_ahesasc.bin +firmware: nvidia/ga104/acr/ucode_asb.bin +firmware: nvidia/ga104/acr/ucode_unload.bin +firmware: nvidia/ga104/gr/NET_img.bin +firmware: nvidia/ga104/gr/fecs_bl.bin +firmware: nvidia/ga104/gr/fecs_sig.bin +firmware: nvidia/ga104/gr/gpccs_bl.bin +firmware: nvidia/ga104/gr/gpccs_sig.bin +firmware: nvidia/ga104/nvdec/scrubber.bin +firmware: nvidia/ga104/sec2/desc.bin +firmware: nvidia/ga104/sec2/hs_bl_sig.bin +firmware: nvidia/ga104/sec2/image.bin +firmware: nvidia/ga104/sec2/sig.bin +firmware: nvidia/ga106/acr/ucode_ahesasc.bin +firmware: nvidia/ga106/acr/ucode_asb.bin +firmware: nvidia/ga106/acr/ucode_unload.bin +firmware: nvidia/ga106/gr/NET_img.bin +firmware: nvidia/ga106/gr/fecs_bl.bin +firmware: nvidia/ga106/gr/fecs_sig.bin +firmware: nvidia/ga106/gr/gpccs_bl.bin +firmware: nvidia/ga106/gr/gpccs_sig.bin +firmware: nvidia/ga106/nvdec/scrubber.bin +firmware: nvidia/ga106/sec2/desc.bin +firmware: nvidia/ga106/sec2/hs_bl_sig.bin +firmware: nvidia/ga106/sec2/image.bin +firmware: nvidia/ga106/sec2/sig.bin +firmware: nvidia/ga107/acr/ucode_ahesasc.bin +firmware: nvidia/ga107/acr/ucode_asb.bin +firmware: nvidia/ga107/acr/ucode_unload.bin +firmware: nvidia/ga107/gr/NET_img.bin +firmware: nvidia/ga107/gr/fecs_bl.bin +firmware: nvidia/ga107/gr/fecs_sig.bin +firmware: nvidia/ga107/gr/gpccs_bl.bin +firmware: nvidia/ga107/gr/gpccs_sig.bin +firmware: nvidia/ga107/nvdec/scrubber.bin +firmware: nvidia/ga107/sec2/desc.bin +firmware: nvidia/ga107/sec2/hs_bl_sig.bin +firmware: nvidia/ga107/sec2/image.bin +firmware: nvidia/ga107/sec2/sig.bin +firmware: nvidia/gm200/acr/bl.bin +firmware: nvidia/gm200/acr/ucode_load.bin +firmware: nvidia/gm200/acr/ucode_unload.bin +firmware: nvidia/gm200/gr/fecs_bl.bin +firmware: nvidia/gm200/gr/fecs_data.bin +firmware: nvidia/gm200/gr/fecs_inst.bin +firmware: nvidia/gm200/gr/fecs_sig.bin +firmware: nvidia/gm200/gr/gpccs_bl.bin +firmware: nvidia/gm200/gr/gpccs_data.bin +firmware: nvidia/gm200/gr/gpccs_inst.bin +firmware: nvidia/gm200/gr/gpccs_sig.bin +firmware: nvidia/gm200/gr/sw_bundle_init.bin +firmware: nvidia/gm200/gr/sw_ctx.bin +firmware: nvidia/gm200/gr/sw_method_init.bin +firmware: nvidia/gm200/gr/sw_nonctx.bin +firmware: nvidia/gm204/acr/bl.bin +firmware: nvidia/gm204/acr/ucode_load.bin +firmware: nvidia/gm204/acr/ucode_unload.bin +firmware: nvidia/gm204/gr/fecs_bl.bin +firmware: nvidia/gm204/gr/fecs_data.bin +firmware: nvidia/gm204/gr/fecs_inst.bin +firmware: nvidia/gm204/gr/fecs_sig.bin +firmware: nvidia/gm204/gr/gpccs_bl.bin +firmware: nvidia/gm204/gr/gpccs_data.bin +firmware: nvidia/gm204/gr/gpccs_inst.bin +firmware: nvidia/gm204/gr/gpccs_sig.bin +firmware: nvidia/gm204/gr/sw_bundle_init.bin +firmware: nvidia/gm204/gr/sw_ctx.bin +firmware: nvidia/gm204/gr/sw_method_init.bin +firmware: nvidia/gm204/gr/sw_nonctx.bin +firmware: nvidia/gm206/acr/bl.bin +firmware: nvidia/gm206/acr/ucode_load.bin +firmware: nvidia/gm206/acr/ucode_unload.bin +firmware: nvidia/gm206/gr/fecs_bl.bin +firmware: nvidia/gm206/gr/fecs_data.bin +firmware: nvidia/gm206/gr/fecs_inst.bin +firmware: nvidia/gm206/gr/fecs_sig.bin +firmware: nvidia/gm206/gr/gpccs_bl.bin +firmware: nvidia/gm206/gr/gpccs_data.bin +firmware: nvidia/gm206/gr/gpccs_inst.bin +firmware: nvidia/gm206/gr/gpccs_sig.bin +firmware: nvidia/gm206/gr/sw_bundle_init.bin +firmware: nvidia/gm206/gr/sw_ctx.bin +firmware: nvidia/gm206/gr/sw_method_init.bin +firmware: nvidia/gm206/gr/sw_nonctx.bin +firmware: nvidia/gp100/acr/bl.bin +firmware: nvidia/gp100/acr/ucode_load.bin +firmware: nvidia/gp100/acr/ucode_unload.bin +firmware: nvidia/gp100/gr/fecs_bl.bin +firmware: nvidia/gp100/gr/fecs_data.bin +firmware: nvidia/gp100/gr/fecs_inst.bin +firmware: nvidia/gp100/gr/fecs_sig.bin +firmware: nvidia/gp100/gr/gpccs_bl.bin +firmware: nvidia/gp100/gr/gpccs_data.bin +firmware: nvidia/gp100/gr/gpccs_inst.bin +firmware: nvidia/gp100/gr/gpccs_sig.bin +firmware: nvidia/gp100/gr/sw_bundle_init.bin +firmware: nvidia/gp100/gr/sw_ctx.bin +firmware: nvidia/gp100/gr/sw_method_init.bin +firmware: nvidia/gp100/gr/sw_nonctx.bin +firmware: nvidia/gp102/acr/bl.bin +firmware: nvidia/gp102/acr/ucode_load.bin +firmware: nvidia/gp102/acr/ucode_unload.bin +firmware: nvidia/gp102/acr/unload_bl.bin +firmware: nvidia/gp102/gr/fecs_bl.bin +firmware: nvidia/gp102/gr/fecs_data.bin +firmware: nvidia/gp102/gr/fecs_inst.bin +firmware: nvidia/gp102/gr/fecs_sig.bin +firmware: nvidia/gp102/gr/gpccs_bl.bin +firmware: nvidia/gp102/gr/gpccs_data.bin +firmware: nvidia/gp102/gr/gpccs_inst.bin +firmware: nvidia/gp102/gr/gpccs_sig.bin +firmware: nvidia/gp102/gr/sw_bundle_init.bin +firmware: nvidia/gp102/gr/sw_ctx.bin +firmware: nvidia/gp102/gr/sw_method_init.bin +firmware: nvidia/gp102/gr/sw_nonctx.bin +firmware: nvidia/gp102/nvdec/scrubber.bin +firmware: nvidia/gp102/sec2/desc-1.bin +firmware: nvidia/gp102/sec2/desc.bin +firmware: nvidia/gp102/sec2/image-1.bin +firmware: nvidia/gp102/sec2/image.bin +firmware: nvidia/gp102/sec2/sig-1.bin +firmware: nvidia/gp102/sec2/sig.bin +firmware: nvidia/gp104/acr/bl.bin +firmware: nvidia/gp104/acr/ucode_load.bin +firmware: nvidia/gp104/acr/ucode_unload.bin +firmware: nvidia/gp104/acr/unload_bl.bin +firmware: nvidia/gp104/gr/fecs_bl.bin +firmware: nvidia/gp104/gr/fecs_data.bin +firmware: nvidia/gp104/gr/fecs_inst.bin +firmware: nvidia/gp104/gr/fecs_sig.bin +firmware: nvidia/gp104/gr/gpccs_bl.bin +firmware: nvidia/gp104/gr/gpccs_data.bin +firmware: nvidia/gp104/gr/gpccs_inst.bin +firmware: nvidia/gp104/gr/gpccs_sig.bin +firmware: nvidia/gp104/gr/sw_bundle_init.bin +firmware: nvidia/gp104/gr/sw_ctx.bin +firmware: nvidia/gp104/gr/sw_method_init.bin +firmware: nvidia/gp104/gr/sw_nonctx.bin +firmware: nvidia/gp104/nvdec/scrubber.bin +firmware: nvidia/gp104/sec2/desc-1.bin +firmware: nvidia/gp104/sec2/desc.bin +firmware: nvidia/gp104/sec2/image-1.bin +firmware: nvidia/gp104/sec2/image.bin +firmware: nvidia/gp104/sec2/sig-1.bin +firmware: nvidia/gp104/sec2/sig.bin +firmware: nvidia/gp106/acr/bl.bin +firmware: nvidia/gp106/acr/ucode_load.bin +firmware: nvidia/gp106/acr/ucode_unload.bin +firmware: nvidia/gp106/acr/unload_bl.bin +firmware: nvidia/gp106/gr/fecs_bl.bin +firmware: nvidia/gp106/gr/fecs_data.bin +firmware: nvidia/gp106/gr/fecs_inst.bin +firmware: nvidia/gp106/gr/fecs_sig.bin +firmware: nvidia/gp106/gr/gpccs_bl.bin +firmware: nvidia/gp106/gr/gpccs_data.bin +firmware: nvidia/gp106/gr/gpccs_inst.bin +firmware: nvidia/gp106/gr/gpccs_sig.bin +firmware: nvidia/gp106/gr/sw_bundle_init.bin +firmware: nvidia/gp106/gr/sw_ctx.bin +firmware: nvidia/gp106/gr/sw_method_init.bin +firmware: nvidia/gp106/gr/sw_nonctx.bin +firmware: nvidia/gp106/nvdec/scrubber.bin +firmware: nvidia/gp106/sec2/desc-1.bin +firmware: nvidia/gp106/sec2/desc.bin +firmware: nvidia/gp106/sec2/image-1.bin +firmware: nvidia/gp106/sec2/image.bin +firmware: nvidia/gp106/sec2/sig-1.bin +firmware: nvidia/gp106/sec2/sig.bin +firmware: nvidia/gp107/acr/bl.bin +firmware: nvidia/gp107/acr/ucode_load.bin +firmware: nvidia/gp107/acr/ucode_unload.bin +firmware: nvidia/gp107/acr/unload_bl.bin +firmware: nvidia/gp107/gr/fecs_bl.bin +firmware: nvidia/gp107/gr/fecs_data.bin +firmware: nvidia/gp107/gr/fecs_inst.bin +firmware: nvidia/gp107/gr/fecs_sig.bin +firmware: nvidia/gp107/gr/gpccs_bl.bin +firmware: nvidia/gp107/gr/gpccs_data.bin +firmware: nvidia/gp107/gr/gpccs_inst.bin +firmware: nvidia/gp107/gr/gpccs_sig.bin +firmware: nvidia/gp107/gr/sw_bundle_init.bin +firmware: nvidia/gp107/gr/sw_ctx.bin +firmware: nvidia/gp107/gr/sw_method_init.bin +firmware: nvidia/gp107/gr/sw_nonctx.bin +firmware: nvidia/gp107/nvdec/scrubber.bin +firmware: nvidia/gp107/sec2/desc-1.bin +firmware: nvidia/gp107/sec2/desc.bin +firmware: nvidia/gp107/sec2/image-1.bin +firmware: nvidia/gp107/sec2/image.bin +firmware: nvidia/gp107/sec2/sig-1.bin +firmware: nvidia/gp107/sec2/sig.bin +firmware: nvidia/gp108/acr/bl.bin +firmware: nvidia/gp108/acr/ucode_load.bin +firmware: nvidia/gp108/acr/ucode_unload.bin +firmware: nvidia/gp108/acr/unload_bl.bin +firmware: nvidia/gp108/gr/fecs_bl.bin +firmware: nvidia/gp108/gr/fecs_data.bin +firmware: nvidia/gp108/gr/fecs_inst.bin +firmware: nvidia/gp108/gr/fecs_sig.bin +firmware: nvidia/gp108/gr/gpccs_bl.bin +firmware: nvidia/gp108/gr/gpccs_data.bin +firmware: nvidia/gp108/gr/gpccs_inst.bin +firmware: nvidia/gp108/gr/gpccs_sig.bin +firmware: nvidia/gp108/gr/sw_bundle_init.bin +firmware: nvidia/gp108/gr/sw_ctx.bin +firmware: nvidia/gp108/gr/sw_method_init.bin +firmware: nvidia/gp108/gr/sw_nonctx.bin +firmware: nvidia/gp108/nvdec/scrubber.bin +firmware: nvidia/gp108/sec2/desc.bin +firmware: nvidia/gp108/sec2/image.bin +firmware: nvidia/gp108/sec2/sig.bin +firmware: nvidia/gv100/acr/bl.bin +firmware: nvidia/gv100/acr/ucode_load.bin +firmware: nvidia/gv100/acr/ucode_unload.bin +firmware: nvidia/gv100/acr/unload_bl.bin +firmware: nvidia/gv100/gr/fecs_bl.bin +firmware: nvidia/gv100/gr/fecs_data.bin +firmware: nvidia/gv100/gr/fecs_inst.bin +firmware: nvidia/gv100/gr/fecs_sig.bin +firmware: nvidia/gv100/gr/gpccs_bl.bin +firmware: nvidia/gv100/gr/gpccs_data.bin +firmware: nvidia/gv100/gr/gpccs_inst.bin +firmware: nvidia/gv100/gr/gpccs_sig.bin +firmware: nvidia/gv100/gr/sw_bundle_init.bin +firmware: nvidia/gv100/gr/sw_ctx.bin +firmware: nvidia/gv100/gr/sw_method_init.bin +firmware: nvidia/gv100/gr/sw_nonctx.bin +firmware: nvidia/gv100/nvdec/scrubber.bin +firmware: nvidia/gv100/sec2/desc.bin +firmware: nvidia/gv100/sec2/image.bin +firmware: nvidia/gv100/sec2/sig.bin +firmware: nvidia/tu102/acr/bl.bin +firmware: nvidia/tu102/acr/ucode_ahesasc.bin +firmware: nvidia/tu102/acr/ucode_asb.bin +firmware: nvidia/tu102/acr/ucode_unload.bin +firmware: nvidia/tu102/acr/unload_bl.bin +firmware: nvidia/tu102/gr/fecs_bl.bin +firmware: nvidia/tu102/gr/fecs_data.bin +firmware: nvidia/tu102/gr/fecs_inst.bin +firmware: nvidia/tu102/gr/fecs_sig.bin +firmware: nvidia/tu102/gr/gpccs_bl.bin +firmware: nvidia/tu102/gr/gpccs_data.bin +firmware: nvidia/tu102/gr/gpccs_inst.bin +firmware: nvidia/tu102/gr/gpccs_sig.bin +firmware: nvidia/tu102/gr/sw_bundle_init.bin +firmware: nvidia/tu102/gr/sw_ctx.bin +firmware: nvidia/tu102/gr/sw_method_init.bin +firmware: nvidia/tu102/gr/sw_nonctx.bin +firmware: nvidia/tu102/gr/sw_veid_bundle_init.bin +firmware: nvidia/tu102/nvdec/scrubber.bin +firmware: nvidia/tu102/sec2/desc.bin +firmware: nvidia/tu102/sec2/image.bin +firmware: nvidia/tu102/sec2/sig.bin +firmware: nvidia/tu104/acr/bl.bin +firmware: nvidia/tu104/acr/ucode_ahesasc.bin +firmware: nvidia/tu104/acr/ucode_asb.bin +firmware: nvidia/tu104/acr/ucode_unload.bin +firmware: nvidia/tu104/acr/unload_bl.bin +firmware: nvidia/tu104/gr/fecs_bl.bin +firmware: nvidia/tu104/gr/fecs_data.bin +firmware: nvidia/tu104/gr/fecs_inst.bin +firmware: nvidia/tu104/gr/fecs_sig.bin +firmware: nvidia/tu104/gr/gpccs_bl.bin +firmware: nvidia/tu104/gr/gpccs_data.bin +firmware: nvidia/tu104/gr/gpccs_inst.bin +firmware: nvidia/tu104/gr/gpccs_sig.bin +firmware: nvidia/tu104/gr/sw_bundle_init.bin +firmware: nvidia/tu104/gr/sw_ctx.bin +firmware: nvidia/tu104/gr/sw_method_init.bin +firmware: nvidia/tu104/gr/sw_nonctx.bin +firmware: nvidia/tu104/gr/sw_veid_bundle_init.bin +firmware: nvidia/tu104/nvdec/scrubber.bin +firmware: nvidia/tu104/sec2/desc.bin +firmware: nvidia/tu104/sec2/image.bin +firmware: nvidia/tu104/sec2/sig.bin +firmware: nvidia/tu106/acr/bl.bin +firmware: nvidia/tu106/acr/ucode_ahesasc.bin +firmware: nvidia/tu106/acr/ucode_asb.bin +firmware: nvidia/tu106/acr/ucode_unload.bin +firmware: nvidia/tu106/acr/unload_bl.bin +firmware: nvidia/tu106/gr/fecs_bl.bin +firmware: nvidia/tu106/gr/fecs_data.bin +firmware: nvidia/tu106/gr/fecs_inst.bin +firmware: nvidia/tu106/gr/fecs_sig.bin +firmware: nvidia/tu106/gr/gpccs_bl.bin +firmware: nvidia/tu106/gr/gpccs_data.bin +firmware: nvidia/tu106/gr/gpccs_inst.bin +firmware: nvidia/tu106/gr/gpccs_sig.bin +firmware: nvidia/tu106/gr/sw_bundle_init.bin +firmware: nvidia/tu106/gr/sw_ctx.bin +firmware: nvidia/tu106/gr/sw_method_init.bin +firmware: nvidia/tu106/gr/sw_nonctx.bin +firmware: nvidia/tu106/gr/sw_veid_bundle_init.bin +firmware: nvidia/tu106/nvdec/scrubber.bin +firmware: nvidia/tu106/sec2/desc.bin +firmware: nvidia/tu106/sec2/image.bin +firmware: nvidia/tu106/sec2/sig.bin +firmware: nvidia/tu116/acr/bl.bin +firmware: nvidia/tu116/acr/ucode_ahesasc.bin +firmware: nvidia/tu116/acr/ucode_asb.bin +firmware: nvidia/tu116/acr/ucode_unload.bin +firmware: nvidia/tu116/acr/unload_bl.bin +firmware: nvidia/tu116/gr/fecs_bl.bin +firmware: nvidia/tu116/gr/fecs_data.bin +firmware: nvidia/tu116/gr/fecs_inst.bin +firmware: nvidia/tu116/gr/fecs_sig.bin +firmware: nvidia/tu116/gr/gpccs_bl.bin +firmware: nvidia/tu116/gr/gpccs_data.bin +firmware: nvidia/tu116/gr/gpccs_inst.bin +firmware: nvidia/tu116/gr/gpccs_sig.bin +firmware: nvidia/tu116/gr/sw_bundle_init.bin +firmware: nvidia/tu116/gr/sw_ctx.bin +firmware: nvidia/tu116/gr/sw_method_init.bin +firmware: nvidia/tu116/gr/sw_nonctx.bin +firmware: nvidia/tu116/gr/sw_veid_bundle_init.bin +firmware: nvidia/tu116/nvdec/scrubber.bin +firmware: nvidia/tu116/sec2/desc.bin +firmware: nvidia/tu116/sec2/image.bin +firmware: nvidia/tu116/sec2/sig.bin +firmware: nvidia/tu117/acr/bl.bin +firmware: nvidia/tu117/acr/ucode_ahesasc.bin +firmware: nvidia/tu117/acr/ucode_asb.bin +firmware: nvidia/tu117/acr/ucode_unload.bin +firmware: nvidia/tu117/acr/unload_bl.bin +firmware: nvidia/tu117/gr/fecs_bl.bin +firmware: nvidia/tu117/gr/fecs_data.bin +firmware: nvidia/tu117/gr/fecs_inst.bin +firmware: nvidia/tu117/gr/fecs_sig.bin +firmware: nvidia/tu117/gr/gpccs_bl.bin +firmware: nvidia/tu117/gr/gpccs_data.bin +firmware: nvidia/tu117/gr/gpccs_inst.bin +firmware: nvidia/tu117/gr/gpccs_sig.bin +firmware: nvidia/tu117/gr/sw_bundle_init.bin +firmware: nvidia/tu117/gr/sw_ctx.bin +firmware: nvidia/tu117/gr/sw_method_init.bin +firmware: nvidia/tu117/gr/sw_nonctx.bin +firmware: nvidia/tu117/gr/sw_veid_bundle_init.bin +firmware: nvidia/tu117/nvdec/scrubber.bin +firmware: nvidia/tu117/sec2/desc.bin +firmware: nvidia/tu117/sec2/image.bin +firmware: nvidia/tu117/sec2/sig.bin +firmware: orinoco_ezusb_fw +firmware: ositech/Xilinx7OD.bin +firmware: otp.bin +firmware: pca200e_ecd.bin2 +firmware: phanfw.bin +firmware: plfxlc/lifi-x.bin +firmware: prism2_ru.fw +firmware: prism_ap_fw.bin +firmware: prism_sta_fw.bin +firmware: qat_4xxx.bin +firmware: qat_4xxx_mmp.bin +firmware: qat_895xcc.bin +firmware: qat_895xcc_mmp.bin +firmware: qat_c3xxx.bin +firmware: qat_c3xxx_mmp.bin +firmware: qat_c62x.bin +firmware: qat_c62x_mmp.bin +firmware: qed/qed_init_values_zipped-8.59.1.0.bin +firmware: ql2100_fw.bin +firmware: ql2200_fw.bin +firmware: ql2300_fw.bin +firmware: ql2322_fw.bin +firmware: ql2400_fw.bin +firmware: ql2500_fw.bin +firmware: qlogic/1040.bin +firmware: qlogic/12160.bin +firmware: qlogic/1280.bin +firmware: qlogic/sd7220.fw +firmware: radeon/ARUBA_me.bin +firmware: radeon/ARUBA_pfp.bin +firmware: radeon/ARUBA_rlc.bin +firmware: radeon/BARTS_mc.bin +firmware: radeon/BARTS_me.bin +firmware: radeon/BARTS_pfp.bin +firmware: radeon/BARTS_smc.bin +firmware: radeon/BONAIRE_ce.bin +firmware: radeon/BONAIRE_mc.bin +firmware: radeon/BONAIRE_mc2.bin +firmware: radeon/BONAIRE_me.bin +firmware: radeon/BONAIRE_mec.bin +firmware: radeon/BONAIRE_pfp.bin +firmware: radeon/BONAIRE_rlc.bin +firmware: radeon/BONAIRE_sdma.bin +firmware: radeon/BONAIRE_smc.bin +firmware: radeon/BONAIRE_uvd.bin +firmware: radeon/BONAIRE_vce.bin +firmware: radeon/BTC_rlc.bin +firmware: radeon/CAICOS_mc.bin +firmware: radeon/CAICOS_me.bin +firmware: radeon/CAICOS_pfp.bin +firmware: radeon/CAICOS_smc.bin +firmware: radeon/CAYMAN_mc.bin +firmware: radeon/CAYMAN_me.bin +firmware: radeon/CAYMAN_pfp.bin +firmware: radeon/CAYMAN_rlc.bin +firmware: radeon/CAYMAN_smc.bin +firmware: radeon/CEDAR_me.bin +firmware: radeon/CEDAR_pfp.bin +firmware: radeon/CEDAR_rlc.bin +firmware: radeon/CEDAR_smc.bin +firmware: radeon/CYPRESS_me.bin +firmware: radeon/CYPRESS_pfp.bin +firmware: radeon/CYPRESS_rlc.bin +firmware: radeon/CYPRESS_smc.bin +firmware: radeon/CYPRESS_uvd.bin +firmware: radeon/HAINAN_ce.bin +firmware: radeon/HAINAN_mc.bin +firmware: radeon/HAINAN_mc2.bin +firmware: radeon/HAINAN_me.bin +firmware: radeon/HAINAN_pfp.bin +firmware: radeon/HAINAN_rlc.bin +firmware: radeon/HAINAN_smc.bin +firmware: radeon/HAWAII_ce.bin +firmware: radeon/HAWAII_mc.bin +firmware: radeon/HAWAII_mc2.bin +firmware: radeon/HAWAII_me.bin +firmware: radeon/HAWAII_mec.bin +firmware: radeon/HAWAII_pfp.bin +firmware: radeon/HAWAII_rlc.bin +firmware: radeon/HAWAII_sdma.bin +firmware: radeon/HAWAII_smc.bin +firmware: radeon/JUNIPER_me.bin +firmware: radeon/JUNIPER_pfp.bin +firmware: radeon/JUNIPER_rlc.bin +firmware: radeon/JUNIPER_smc.bin +firmware: radeon/KABINI_ce.bin +firmware: radeon/KABINI_me.bin +firmware: radeon/KABINI_mec.bin +firmware: radeon/KABINI_pfp.bin +firmware: radeon/KABINI_rlc.bin +firmware: radeon/KABINI_sdma.bin +firmware: radeon/KAVERI_ce.bin +firmware: radeon/KAVERI_me.bin +firmware: radeon/KAVERI_mec.bin +firmware: radeon/KAVERI_pfp.bin +firmware: radeon/KAVERI_rlc.bin +firmware: radeon/KAVERI_sdma.bin +firmware: radeon/MULLINS_ce.bin +firmware: radeon/MULLINS_me.bin +firmware: radeon/MULLINS_mec.bin +firmware: radeon/MULLINS_pfp.bin +firmware: radeon/MULLINS_rlc.bin +firmware: radeon/MULLINS_sdma.bin +firmware: radeon/OLAND_ce.bin +firmware: radeon/OLAND_mc.bin +firmware: radeon/OLAND_mc2.bin +firmware: radeon/OLAND_me.bin +firmware: radeon/OLAND_pfp.bin +firmware: radeon/OLAND_rlc.bin +firmware: radeon/OLAND_smc.bin +firmware: radeon/PALM_me.bin +firmware: radeon/PALM_pfp.bin +firmware: radeon/PITCAIRN_ce.bin +firmware: radeon/PITCAIRN_mc.bin +firmware: radeon/PITCAIRN_mc2.bin +firmware: radeon/PITCAIRN_me.bin +firmware: radeon/PITCAIRN_pfp.bin +firmware: radeon/PITCAIRN_rlc.bin +firmware: radeon/PITCAIRN_smc.bin +firmware: radeon/R100_cp.bin +firmware: radeon/R200_cp.bin +firmware: radeon/R300_cp.bin +firmware: radeon/R420_cp.bin +firmware: radeon/R520_cp.bin +firmware: radeon/R600_me.bin +firmware: radeon/R600_pfp.bin +firmware: radeon/R600_rlc.bin +firmware: radeon/R600_uvd.bin +firmware: radeon/R700_rlc.bin +firmware: radeon/REDWOOD_me.bin +firmware: radeon/REDWOOD_pfp.bin +firmware: radeon/REDWOOD_rlc.bin +firmware: radeon/REDWOOD_smc.bin +firmware: radeon/RS600_cp.bin +firmware: radeon/RS690_cp.bin +firmware: radeon/RS780_me.bin +firmware: radeon/RS780_pfp.bin +firmware: radeon/RS780_uvd.bin +firmware: radeon/RV610_me.bin +firmware: radeon/RV610_pfp.bin +firmware: radeon/RV620_me.bin +firmware: radeon/RV620_pfp.bin +firmware: radeon/RV630_me.bin +firmware: radeon/RV630_pfp.bin +firmware: radeon/RV635_me.bin +firmware: radeon/RV635_pfp.bin +firmware: radeon/RV670_me.bin +firmware: radeon/RV670_pfp.bin +firmware: radeon/RV710_me.bin +firmware: radeon/RV710_pfp.bin +firmware: radeon/RV710_smc.bin +firmware: radeon/RV710_uvd.bin +firmware: radeon/RV730_me.bin +firmware: radeon/RV730_pfp.bin +firmware: radeon/RV730_smc.bin +firmware: radeon/RV740_smc.bin +firmware: radeon/RV770_me.bin +firmware: radeon/RV770_pfp.bin +firmware: radeon/RV770_smc.bin +firmware: radeon/RV770_uvd.bin +firmware: radeon/SUMO2_me.bin +firmware: radeon/SUMO2_pfp.bin +firmware: radeon/SUMO_me.bin +firmware: radeon/SUMO_pfp.bin +firmware: radeon/SUMO_rlc.bin +firmware: radeon/SUMO_uvd.bin +firmware: radeon/TAHITI_ce.bin +firmware: radeon/TAHITI_mc.bin +firmware: radeon/TAHITI_mc2.bin +firmware: radeon/TAHITI_me.bin +firmware: radeon/TAHITI_pfp.bin +firmware: radeon/TAHITI_rlc.bin +firmware: radeon/TAHITI_smc.bin +firmware: radeon/TAHITI_uvd.bin +firmware: radeon/TAHITI_vce.bin +firmware: radeon/TURKS_mc.bin +firmware: radeon/TURKS_me.bin +firmware: radeon/TURKS_pfp.bin +firmware: radeon/TURKS_smc.bin +firmware: radeon/VERDE_ce.bin +firmware: radeon/VERDE_mc.bin +firmware: radeon/VERDE_mc2.bin +firmware: radeon/VERDE_me.bin +firmware: radeon/VERDE_pfp.bin +firmware: radeon/VERDE_rlc.bin +firmware: radeon/VERDE_smc.bin +firmware: radeon/banks_k_2_smc.bin +firmware: radeon/bonaire_ce.bin +firmware: radeon/bonaire_k_smc.bin +firmware: radeon/bonaire_mc.bin +firmware: radeon/bonaire_me.bin +firmware: radeon/bonaire_mec.bin +firmware: radeon/bonaire_pfp.bin +firmware: radeon/bonaire_rlc.bin +firmware: radeon/bonaire_sdma.bin +firmware: radeon/bonaire_smc.bin +firmware: radeon/bonaire_uvd.bin +firmware: radeon/hainan_ce.bin +firmware: radeon/hainan_k_smc.bin +firmware: radeon/hainan_mc.bin +firmware: radeon/hainan_me.bin +firmware: radeon/hainan_pfp.bin +firmware: radeon/hainan_rlc.bin +firmware: radeon/hainan_smc.bin +firmware: radeon/hawaii_ce.bin +firmware: radeon/hawaii_k_smc.bin +firmware: radeon/hawaii_mc.bin +firmware: radeon/hawaii_me.bin +firmware: radeon/hawaii_mec.bin +firmware: radeon/hawaii_pfp.bin +firmware: radeon/hawaii_rlc.bin +firmware: radeon/hawaii_sdma.bin +firmware: radeon/hawaii_smc.bin +firmware: radeon/kabini_ce.bin +firmware: radeon/kabini_me.bin +firmware: radeon/kabini_mec.bin +firmware: radeon/kabini_pfp.bin +firmware: radeon/kabini_rlc.bin +firmware: radeon/kabini_sdma.bin +firmware: radeon/kaveri_ce.bin +firmware: radeon/kaveri_me.bin +firmware: radeon/kaveri_mec.bin +firmware: radeon/kaveri_mec2.bin +firmware: radeon/kaveri_pfp.bin +firmware: radeon/kaveri_rlc.bin +firmware: radeon/kaveri_sdma.bin +firmware: radeon/mullins_ce.bin +firmware: radeon/mullins_me.bin +firmware: radeon/mullins_mec.bin +firmware: radeon/mullins_pfp.bin +firmware: radeon/mullins_rlc.bin +firmware: radeon/mullins_sdma.bin +firmware: radeon/oland_ce.bin +firmware: radeon/oland_k_smc.bin +firmware: radeon/oland_mc.bin +firmware: radeon/oland_me.bin +firmware: radeon/oland_pfp.bin +firmware: radeon/oland_rlc.bin +firmware: radeon/oland_smc.bin +firmware: radeon/pitcairn_ce.bin +firmware: radeon/pitcairn_k_smc.bin +firmware: radeon/pitcairn_mc.bin +firmware: radeon/pitcairn_me.bin +firmware: radeon/pitcairn_pfp.bin +firmware: radeon/pitcairn_rlc.bin +firmware: radeon/pitcairn_smc.bin +firmware: radeon/si58_mc.bin +firmware: radeon/tahiti_ce.bin +firmware: radeon/tahiti_mc.bin +firmware: radeon/tahiti_me.bin +firmware: radeon/tahiti_pfp.bin +firmware: radeon/tahiti_rlc.bin +firmware: radeon/tahiti_smc.bin +firmware: radeon/verde_ce.bin +firmware: radeon/verde_k_smc.bin +firmware: radeon/verde_mc.bin +firmware: radeon/verde_me.bin +firmware: radeon/verde_pfp.bin +firmware: radeon/verde_rlc.bin +firmware: radeon/verde_smc.bin +firmware: ram.bin +firmware: regulatory.db +firmware: regulatory.db.p7s +firmware: renesas_usb_fw.mem +firmware: rp2.fw +firmware: rs9113_wlan_qspi.rps +firmware: rt2561.bin +firmware: rt2561s.bin +firmware: rt2661.bin +firmware: rt2860.bin +firmware: rt2870.bin +firmware: rt73.bin +firmware: rtl_nic/rtl8105e-1.fw +firmware: rtl_nic/rtl8106e-1.fw +firmware: rtl_nic/rtl8106e-2.fw +firmware: rtl_nic/rtl8107e-2.fw +firmware: rtl_nic/rtl8125a-3.fw +firmware: rtl_nic/rtl8125b-2.fw +firmware: rtl_nic/rtl8153a-2.fw +firmware: rtl_nic/rtl8153a-3.fw +firmware: rtl_nic/rtl8153a-4.fw +firmware: rtl_nic/rtl8153b-2.fw +firmware: rtl_nic/rtl8153c-1.fw +firmware: rtl_nic/rtl8156a-2.fw +firmware: rtl_nic/rtl8156b-2.fw +firmware: rtl_nic/rtl8168d-1.fw +firmware: rtl_nic/rtl8168d-2.fw +firmware: rtl_nic/rtl8168e-1.fw +firmware: rtl_nic/rtl8168e-2.fw +firmware: rtl_nic/rtl8168e-3.fw +firmware: rtl_nic/rtl8168f-1.fw +firmware: rtl_nic/rtl8168f-2.fw +firmware: rtl_nic/rtl8168fp-3.fw +firmware: rtl_nic/rtl8168g-2.fw +firmware: rtl_nic/rtl8168g-3.fw +firmware: rtl_nic/rtl8168h-2.fw +firmware: rtl_nic/rtl8402-1.fw +firmware: rtl_nic/rtl8411-1.fw +firmware: rtl_nic/rtl8411-2.fw +firmware: rtlwifi/rtl8188efw.bin +firmware: rtlwifi/rtl8188eufw.bin +firmware: rtlwifi/rtl8188fufw.bin +firmware: rtlwifi/rtl8192cfw.bin +firmware: rtlwifi/rtl8192cfwU.bin +firmware: rtlwifi/rtl8192cfwU_B.bin +firmware: rtlwifi/rtl8192cufw.bin +firmware: rtlwifi/rtl8192cufw_A.bin +firmware: rtlwifi/rtl8192cufw_B.bin +firmware: rtlwifi/rtl8192cufw_TMSC.bin +firmware: rtlwifi/rtl8192defw.bin +firmware: rtlwifi/rtl8192eefw.bin +firmware: rtlwifi/rtl8192eu_nic.bin +firmware: rtlwifi/rtl8192fufw.bin +firmware: rtlwifi/rtl8192sefw.bin +firmware: rtlwifi/rtl8710bufw_SMIC.bin +firmware: rtlwifi/rtl8710bufw_UMC.bin +firmware: rtlwifi/rtl8712u.bin +firmware: rtlwifi/rtl8723aufw_A.bin +firmware: rtlwifi/rtl8723aufw_B.bin +firmware: rtlwifi/rtl8723aufw_B_NoBT.bin +firmware: rtlwifi/rtl8723befw.bin +firmware: rtlwifi/rtl8723befw_36.bin +firmware: rtlwifi/rtl8723bu_bt.bin +firmware: rtlwifi/rtl8723bu_nic.bin +firmware: rtlwifi/rtl8723efw.bin +firmware: rtlwifi/rtl8821aefw.bin +firmware: rtlwifi/rtl8821aefw_29.bin +firmware: rtw88/rtw8723d_fw.bin +firmware: rtw88/rtw8821c_fw.bin +firmware: rtw88/rtw8822b_fw.bin +firmware: rtw88/rtw8822c_fw.bin +firmware: rtw88/rtw8822c_wow_fw.bin +firmware: rtw89/rtw8851b_fw.bin +firmware: rtw89/rtw8852a_fw.bin +firmware: rtw89/rtw8852b_fw-1.bin +firmware: rtw89/rtw8852c_fw.bin +firmware: sd8385.bin +firmware: sd8385_helper.bin +firmware: sd8686.bin +firmware: sd8686_helper.bin +firmware: sd8688.bin +firmware: sd8688_helper.bin +firmware: slicoss/gbdownload.sys +firmware: slicoss/gbrcvucode.sys +firmware: slicoss/oasisdownload.sys +firmware: slicoss/oasisrcvucode.sys +firmware: sms1xxx-hcw-55xxx-dvbt-02.fw +firmware: sms1xxx-hcw-55xxx-isdbt-02.fw +firmware: sms1xxx-nova-a-dvbt-01.fw +firmware: sms1xxx-nova-b-dvbt-01.fw +firmware: sms1xxx-stellar-dvbt-01.fw +firmware: softing-4.6/bcard.bin +firmware: softing-4.6/bcard2.bin +firmware: softing-4.6/cancard.bin +firmware: softing-4.6/cancrd2.bin +firmware: softing-4.6/cansja.bin +firmware: softing-4.6/ldcard.bin +firmware: softing-4.6/ldcard2.bin +firmware: solos-FPGA.bin +firmware: solos-Firmware.bin +firmware: solos-db-FPGA.bin +firmware: sun/cassini.bin +firmware: symbol_sp24t_prim_fw +firmware: symbol_sp24t_sec_fw +firmware: tdmb_denver.inp +firmware: tdmb_nova_12mhz.inp +firmware: tdmb_nova_12mhz_b0.inp +firmware: tehuti/bdx.bin +firmware: ti-connectivity/wl1251-fw.bin +firmware: ti-connectivity/wl1251-nvs.bin +firmware: ti-connectivity/wl127x-fw-5-mr.bin +firmware: ti-connectivity/wl127x-fw-5-plt.bin +firmware: ti-connectivity/wl127x-fw-5-sr.bin +firmware: ti-connectivity/wl128x-fw-5-mr.bin +firmware: ti-connectivity/wl128x-fw-5-plt.bin +firmware: ti-connectivity/wl128x-fw-5-sr.bin +firmware: ti-connectivity/wl18xx-fw-4.bin +firmware: ti_3410.fw +firmware: ti_5052.fw +firmware: tigon/tg3.bin +firmware: tigon/tg357766.bin +firmware: tigon/tg3_tso.bin +firmware: tigon/tg3_tso5.bin +firmware: ttusb-budget/dspbootcode.bin +firmware: ueagle-atm/930-fpga.bin +firmware: ueagle-atm/CMV4i.bin +firmware: ueagle-atm/CMV4i.bin.v2 +firmware: ueagle-atm/CMV4p.bin +firmware: ueagle-atm/CMV4p.bin.v2 +firmware: ueagle-atm/CMV9i.bin +firmware: ueagle-atm/CMV9i.bin.v2 +firmware: ueagle-atm/CMV9p.bin +firmware: ueagle-atm/CMV9p.bin.v2 +firmware: ueagle-atm/CMVei.bin +firmware: ueagle-atm/CMVei.bin.v2 +firmware: ueagle-atm/CMVep.bin +firmware: ueagle-atm/CMVep.bin.v2 +firmware: ueagle-atm/DSP4i.bin +firmware: ueagle-atm/DSP4p.bin +firmware: ueagle-atm/DSP9i.bin +firmware: ueagle-atm/DSP9p.bin +firmware: ueagle-atm/DSPei.bin +firmware: ueagle-atm/DSPep.bin +firmware: ueagle-atm/adi930.fw +firmware: ueagle-atm/eagle.fw +firmware: ueagle-atm/eagleI.fw +firmware: ueagle-atm/eagleII.fw +firmware: ueagle-atm/eagleIII.fw +firmware: ueagle-atm/eagleIV.fw +firmware: usb8388.bin +firmware: usbdux_firmware.bin +firmware: usbduxfast_firmware.bin +firmware: usbduxsigma_firmware.bin +firmware: v4l-cx231xx-avcore-01.fw +firmware: v4l-cx23418-apu.fw +firmware: v4l-cx23418-cpu.fw +firmware: v4l-cx23418-dig.fw +firmware: v4l-cx2341x-dec.fw +firmware: v4l-cx2341x-enc.fw +firmware: v4l-cx2341x-init.mpg +firmware: v4l-cx23885-avcore-01.fw +firmware: v4l-cx23885-enc.fw +firmware: v4l-cx25840.fw +firmware: v4l-pvrusb2-24xxx-01.fw +firmware: v4l-pvrusb2-29xxx-01.fw +firmware: v4l-pvrusb2-73xxx-01.fw +firmware: vicam/firmware.fw +firmware: vntwusb.fw +firmware: wd719x-risc.bin +firmware: wd719x-wcs.bin +firmware: whiteheat.fw +firmware: whiteheat_loader.fw +firmware: wil6210.brd +firmware: wil6210.fw +firmware: wil6210_sparrow_plus.fw +firmware: wil6436.brd +firmware: wil6436.fw +firmware: wlan/prima/WCNSS_qcom_wlan_nv.bin +firmware: xc3028-v27.fw +firmware: xc3028L-v36.fw +firmware: yam/1200.bin +firmware: yam/9600.bin +firmware: zd1201-ap.fw +firmware: zd1201.fw +firmware: zd1211/zd1211_ub +firmware: zd1211/zd1211_uphr +firmware: zd1211/zd1211_ur +firmware: zd1211/zd1211b_ub +firmware: zd1211/zd1211b_uphr +firmware: zd1211/zd1211b_ur --- linux-intel-opt-6.5.0.orig/debian.intel-opt/abi/version +++ linux-intel-opt-6.5.0/debian.intel-opt/abi/version @@ -0,0 +1 @@ +6.5.0-1006.9 --- linux-intel-opt-6.5.0.orig/debian.intel-opt/changelog +++ linux-intel-opt-6.5.0/debian.intel-opt/changelog @@ -0,0 +1,23109 @@ +linux-intel-opt (6.5.0-1006.10) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1006.10 -proposed tracker (LP: #2055701) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/d2024.01.02) + + -- Philip Cox Fri, 01 Mar 2024 11:50:53 -0500 + +linux-intel-opt (6.5.0-1006.9) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1006.9 -proposed tracker (LP: #2051959) + + -- Philip Cox Thu, 08 Feb 2024 12:40:03 -0500 + +linux-intel-opt (6.5.0-1006.8) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1006.8 -proposed tracker (LP: #2049766) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/d2024.01.02) + + * move igc module into modules package for m:linux-intel-opt kernel + (LP: #2048663) + - [Packaging] m:intel-opt: Include igc.ko in modules package + + * "call trace" in host dmesg when create tdx guest with qemu the first time on host after reboot (LP: #2036748) + - SAUCE KVM: TDX: Fix struct td_params to use DECLARE_FLEX_ARRAY + + [ Ubuntu: 6.5.0-17.17 ] + + * mantic/linux: 6.5.0-17.17 -proposed tracker (LP: #2049026) + * [UBUNTU 23.04] Regression: Ubuntu 23.04/23.10 do not include uvdevice + anymore (LP: #2048919) + - [Config] Enable S390_UV_UAPI (built-in) + + [ Ubuntu: 6.5.0-16.16 ] + + * mantic/linux: 6.5.0-16.16 -proposed tracker (LP: #2048372) + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] resync update-dkms-versions helper + - [Packaging] remove helper scripts + - [Packaging] update annotations scripts + - debian/dkms-versions -- update from kernel-versions (main/2024.01.08) + * Add missing RPL P/U CPU IDs (LP: #2047398) + - drm/i915/rpl: Update pci ids for RPL P/U + * Fix BCM57416 lost after resume (LP: #2047518) + - bnxt_en: Clear resource reservation during resume + * Hotplugging SCSI disk in QEMU VM fails (LP: #2047382) + - Revert "PCI: acpiphp: Reassign resources on bridge if necessary" + * Update bnxt_en with bug fixes and support for Broadcom 5760X network + adapters (LP: #2045796) + - bnxt_en: use dev_consume_skb_any() in bnxt_tx_int + - eth: bnxt: move and rename reset helpers + - eth: bnxt: take the bit to set as argument of bnxt_queue_sp_work() + - eth: bnxt: handle invalid Tx completions more gracefully + - eth: bnxt: fix one of the W=1 warnings about fortified memcpy() + - eth: bnxt: fix warning for define in struct_group + - bnxt_en: Fix W=1 warning in bnxt_dcb.c from fortify memcpy() + - bnxt_en: Fix W=stringop-overflow warning in bnxt_dcb.c + - bnxt_en: Use the unified RX page pool buffers for XDP and non-XDP + - bnxt_en: Let the page pool manage the DMA mapping + - bnxt_en: Increment rx_resets counter in bnxt_disable_napi() + - bnxt_en: Save ring error counters across reset + - bnxt_en: Display the ring error counters under ethtool -S + - bnxt_en: Add tx_resets ring counter + - bnxt: use the NAPI skb allocation cache + - bnxt_en: Update firmware interface to 1.10.2.171 + - bnxt_en: Enhance hwmon temperature reporting + - bnxt_en: Move hwmon functions into a dedicated file + - bnxt_en: Modify the driver to use hwmon_device_register_with_info + - bnxt_en: Expose threshold temperatures through hwmon + - bnxt_en: Use non-standard attribute to expose shutdown temperature + - bnxt_en: Event handler for Thermal event + - bnxt_en: Support QOS and TPID settings for the SRIOV VLAN + - bnxt_en: Update VNIC resource calculation for VFs + - Revert "bnxt_en: Support QOS and TPID settings for the SRIOV VLAN" + - eth: bnxt: fix backward compatibility with older devices + - bnxt_en: Do not call sleeping hwmon_notify_event() from NAPI + - bnxt_en: Fix invoking hwmon_notify_event + - bnxt_en: add infrastructure to lookup ethtool link mode + - bnxt_en: support lane configuration via ethtool + - bnxt_en: refactor speed independent ethtool modes + - bnxt_en: Refactor NRZ/PAM4 link speed related logic + - bnxt_en: convert to linkmode_set_bit() API + - bnxt_en: extend media types to supported and autoneg modes + - bnxt_en: Fix 2 stray ethtool -S counters + - bnxt_en: Put the TX producer information in the TX BD opaque field + - bnxt_en: Add completion ring pointer in TX and RX ring structures + - bnxt_en: Restructure cp_ring_arr in struct bnxt_cp_ring_info + - bnxt_en: Add completion ring pointer in TX and RX ring structures + - bnxt_en: Remove BNXT_RX_HDL and BNXT_TX_HDL + - bnxt_en: Refactor bnxt_tx_int() + - bnxt_en: New encoding for the TX opaque field + - bnxt_en: Refactor bnxt_hwrm_set_coal() + - bnxt_en: Support up to 8 TX rings per MSIX + - bnxt_en: Add helper to get the number of CP rings required for TX rings + - bnxt_en: Add macros related to TC and TX rings + - bnxt_en: Use existing MSIX vectors for all mqprio TX rings + - bnxt_en: Optimize xmit_more TX path + - bnxt_en: The caller of bnxt_alloc_ctx_mem() should always free bp->ctx + - bnxt_en: Free bp->ctx inside bnxt_free_ctx_mem() + - bnxt_en: Restructure context memory data structures + - bnxt_en: Add page info to struct bnxt_ctx_mem_type + - bnxt_en: Use the pg_info field in bnxt_ctx_mem_type struct + - bnxt_en: Add bnxt_setup_ctxm_pg_tbls() helper function + - bnxt_en: Add support for new backing store query firmware API + - bnxt_en: Add support for HWRM_FUNC_BACKING_STORE_CFG_V2 firmware calls + - bnxt_en: Add db_ring_mask and related macro to bnxt_db_info struct. + - bnxt_en: Modify TX ring indexing logic. + - bnxt_en: Modify RX ring indexing logic. + - bnxt_en: Modify the NAPI logic for the new P7 chips + - bnxt_en: Rename some macros for the P5 chips + - bnxt_en: Fix backing store V2 logic + - bnxt_en: Update firmware interface to 1.10.3.15 + - bnxt_en: Define basic P7 macros + - bnxt_en: Consolidate DB offset calculation + - bnxt_en: Implement the new toggle bit doorbell mechanism on P7 chips + - bnxt_en: Refactor RSS capability fields + - bnxt_en: Add new P7 hardware interface definitions + - bnxt_en: Refactor RX VLAN acceleration logic. + - bnxt_en: Refactor and refine bnxt_tpa_start() and bnxt_tpa_end(). + - bnxt_en: Add support for new RX and TPA_START completion types for P7 + - bnxt_en: Refactor ethtool speeds logic + - bnxt_en: Support new firmware link parameters + - bnxt_en: Support force speed using the new HWRM fields + - bnxt_en: Report the new ethtool link modes in the new firmware interface + - bnxt_en: Add 5760X (P7) PCI IDs + - net: bnxt: fix a potential use-after-free in bnxt_init_tc + * drm: Update file owner during use (LP: #2047461) + - drm: Update file owner during use + * CVE-2023-6622 + - netfilter: nf_tables: bail out on mismatching dynset and set expressions + * CVE-2024-0193 + - netfilter: nf_tables: skip set commit for deleted/destroyed sets + * Support Cirrus CS35L41 codec on Dell Oasis 13/14/16 laptops (LP: #2044096) + - ALSA: hda/realtek: Add support dual speaker for Dell + * Add support of MTL audio of Lenovo (LP: #2048078) + - ALSA: hda: intel-nhlt: Ignore vbps when looking for DMIC 32 bps format + * Fix AMDGPU crash on 6.5 kernel (LP: #2047389) + - drm/amdgpu: disable MCBP by default + * Some machines can't pass the pm-graph test (LP: #2046217) + - wifi: iwlwifi: pcie: rescan bus if no parent + * Sound: Add rtl quirk of M90-Gen5 (LP: #2046105) + - ALSA: hda/realtek: Enable headset on Lenovo M90 Gen5 + * linux tools packages for derived kernels refuse to install simultaneously + due to libcpupower name collision (LP: #2035971) + - [Packaging] Statically link libcpupower into cpupower tool + * [Debian] autoreconstruct - Do not generate chmod -x for deleted files + (LP: #2045562) + - [Debian] autoreconstruct - Do not generate chmod -x for deleted files + * CVE-2023-6931 + - perf: Fix perf_event_validate_size() + - perf: Fix perf_event_validate_size() lockdep splat + * Mantic update: v6.5.8 upstream stable release (LP: #2046269) + - net: stmmac: remove unneeded stmmac_poll_controller + - RDMA/cxgb4: Check skb value for failure to allocate + - perf/arm-cmn: Fix the unhandled overflow status of counter 4 to 7 + - platform/x86: think-lmi: Fix reference leak + - drm/i915: Register engines early to avoid type confusion + - cpuidle, ACPI: Evaluate LPI arch_flags for broadcast timer + - drm/amdgpu: Fix a memory leak + - platform/x86: hp-wmi:: Mark driver struct with __refdata to prevent section + mismatch warning + - media: dt-bindings: imx7-csi: Make power-domains not required for imx8mq + - drm/amd/display: implement pipe type definition and adding accessors + - drm/amd/display: apply edge-case DISPCLK WDIVIDER changes to master OTG + pipes only + - scsi: Do not rescan devices with a suspended queue + - ata: pata_parport: fix pata_parport_devchk + - ata: pata_parport: implement set_devctl + - HID: logitech-hidpp: Fix kernel crash on receiver USB disconnect + - quota: Fix slow quotaoff + - dm crypt: Fix reqsize in crypt_iv_eboiv_gen + - ASoC: amd: yc: Fix non-functional mic on Lenovo 82YM + - ASoC: hdmi-codec: Fix broken channel map reporting + - ata: libata-scsi: Disable scsi device manage_system_start_stop + - net: prevent address rewrite in kernel_bind() + - arm64: dts: qcom: sm8150: extend the size of the PDC resource + - dt-bindings: interrupt-controller: renesas,rzg2l-irqc: Update description + for '#interrupt-cells' property + - irqchip: renesas-rzg2l: Fix logic to clear TINT interrupt source + - KEYS: trusted: Remove redundant static calls usage + - ALSA: usb-audio: Fix microphone sound on Opencomm2 Headset + - ALSA: usb-audio: Fix microphone sound on Nexigo webcam. + - ALSA: hda: cs35l41: Cleanup and fix double free in firmware request + - ALSA: hda/realtek: Change model for Intel RVP board + - ASoC: SOF: amd: fix for firmware reload failure after playback + - ASoC: simple-card-utils: fixup simple_util_startup() error handling + - ASoC: Intel: soc-acpi: fix Dell SKU 0B34 + - ASoC: Intel: soc-acpi: Add entry for HDMI_In capture support in MTL match + table + - ASoC: fsl_sai: Don't disable bitclock for i.MX8MP + - ASoC: Intel: sof_sdw: add support for SKU 0B14 + - ASoC: Intel: soc-acpi: Add entry for sof_es8336 in MTL match table. + - ALSA: hda/realtek - ALC287 merge RTK codec with CS CS35L41 AMP + - ALSA: hda/realtek: Add quirk for HP Victus 16-d1xxx to enable mute LED + - ALSA: hda/realtek: Add quirk for mute LEDs on HP ENVY x360 15-eu0xxx + - pinctrl: nuvoton: wpcm450: fix out of bounds write + - pinctrl: starfive: jh7110: Fix failure to set irq after CONFIG_PM is enabled + - drm/msm/dp: do not reinitialize phy unless retry during link training + - drm/msm/dsi: skip the wait for video mode done if not applicable + - drm/msm/dsi: fix irq_of_parse_and_map() error checking + - drm/msm/dpu: change _dpu_plane_calc_bw() to use u64 to avoid overflow + - drm/msm/dp: Add newlines to debug printks + - drm/msm/dpu: fail dpu_plane_atomic_check() based on mdp clk limits + - phy: lynx-28g: cancel the CDR check work item on the remove path + - phy: lynx-28g: lock PHY while performing CDR lock workaround + - phy: lynx-28g: serialize concurrent phy_set_mode_ext() calls to shared + registers + - net: dsa: qca8k: fix regmap bulk read/write methods on big endian systems + - net: dsa: qca8k: fix potential MDIO bus conflict when accessing internal + PHYs via management frames + - can: isotp: isotp_sendmsg(): fix TX state detection and wait behavior + - can: sun4i_can: Only show Kconfig if ARCH_SUNXI is set + - arm64: dts: mediatek: fix t-phy unit name + - arm64: dts: mediatek: mt8195: Set DSU PMU status to fail + - devlink: Hold devlink lock on health reporter dump get + - ravb: Fix up dma_free_coherent() call in ravb_remove() + - ravb: Fix use-after-free issue in ravb_tx_timeout_work() + - ieee802154: ca8210: Fix a potential UAF in ca8210_probe + - mlxsw: fix mlxsw_sp2_nve_vxlan_learning_set() return type + - xen-netback: use default TX queue size for vifs + - riscv, bpf: Sign-extend return values + - riscv, bpf: Track both a0 (RISC-V ABI) and a5 (BPF) return values + - xdp: Fix zero-size allocation warning in xskq_create() + - drm/vmwgfx: fix typo of sizeof argument + - bpf: Fix verifier log for async callback return values + - net: refine debug info in skb_checksum_help() + - octeontx2-pf: mcs: update PN only when update_pn is true + - net: macsec: indicate next pn update when offloading + - net: phy: mscc: macsec: reject PN update requests + - net/mlx5e: macsec: use update_pn flag instead of PN comparation + - drm/panel: boe-tv101wum-nl6: Completely pull GPW to VGL before TP term + - ixgbe: fix crash with empty VF macvlan list + - net/smc: Fix dependency of SMC on ISM + - net/mlx5e: Again mutually exclude RX-FCS and RX-port-timestamp + - s390/bpf: Fix clobbering the caller's backchain in the trampoline + - s390/bpf: Fix unwinding past the trampoline + - net: nfc: fix races in nfc_llcp_sock_get() and nfc_llcp_sock_get_sn() + - net: tcp: fix crashes trying to free half-baked MTU probes + - pinctrl: renesas: rzn1: Enable missing PINMUX + - af_packet: Fix fortified memcpy() without flex array. + - nfc: nci: assert requested protocol is valid + - octeontx2-pf: Fix page pool frag allocation warning + - rswitch: Fix renesas_eth_sw_remove() implementation + - rswitch: Fix imbalance phy_power_off() calling + - workqueue: Override implicit ordered attribute in + workqueue_apply_unbound_cpumask() + - riscv: signal: fix sigaltstack frame size checking + - ovl: temporarily disable appending lowedirs + - dmaengine: stm32-mdma: abort resume if no ongoing transfer + - dmaengine: stm32-dma: fix stm32_dma_prep_slave_sg in case of MDMA chaining + - dmaengine: stm32-dma: fix residue in case of MDMA chaining + - dmaengine: stm32-mdma: use Link Address Register to compute residue + - dmaengine: stm32-mdma: set in_flight_bytes in case CRQA flag is set + - usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer + - xhci: track port suspend state correctly in unsuccessful resume cases + - xhci: Clear EHB bit only at end of interrupt handler + - xhci: Preserve RsvdP bits in ERSTBA register correctly + - net: usb: dm9601: fix uninitialized variable use in dm9601_mdio_read + - usb: dwc3: Soft reset phy on probe for host + - usb: cdns3: Modify the return value of cdns_set_active () to void when + CONFIG_PM_SLEEP is disabled + - usb: hub: Guard against accesses to uninitialized BOS descriptors + - usb: musb: Get the musb_qh poniter after musb_giveback + - usb: musb: Modify the "HWVers" register address + - iio: pressure: bmp280: Fix NULL pointer exception + - iio: imu: bno055: Fix missing Kconfig dependencies + - iio: cros_ec: fix an use-after-free in cros_ec_sensors_push_data() + - iio: adc: imx8qxp: Fix address for command buffer registers + - iio: dac: ad3552r: Correct device IDs + - iio: admv1013: add mixer_vgate corner cases + - iio: pressure: dps310: Adjust Timeout Settings + - iio: pressure: ms5611: ms5611_prom_is_valid false negative bug + - iio: adc: ad7192: Correct reference voltage + - iio: addac: Kconfig: update ad74413r selections + - media: subdev: Don't report V4L2_SUBDEV_CAP_STREAMS when the streams API is + disabled + - arm64: dts: mediatek: mt8195-demo: fix the memory size to 8GB + - arm64: dts: mediatek: mt8195-demo: update and reorder reserved memory + regions + - drm: Do not overrun array in drm_gem_get_pages() + - drm/tiny: correctly print `struct resource *` on error + - drm/atomic-helper: relax unregistered connector check + - drm/amdgpu: add missing NULL check + - drm/amd/display: Don't set dpms_off for seamless boot + - ACPI: resource: Skip IRQ override on ASUS ExpertBook B1402CBA + - ACPI: resource: Add TongFang GM6BGEQ, GM6BG5Q and GM6BG0Q to + irq1_edge_low_force_override[] + - ACPI: EC: Add quirk for the HP Pavilion Gaming 15-dk1xxx + - serial: Reduce spinlocked portion of uart_rs485_config() + - serial: 8250_omap: Fix errors with no_console_suspend + - serial: core: Fix checks for tx runtime PM state + - binder: fix memory leaks of spam and pending work + - ksmbd: not allow to open file if delelete on close bit is set + - perf/x86/lbr: Filter vsyscall addresses + - x86/cpu: Fix AMD erratum #1485 on Zen4-based CPUs + - x86/alternatives: Disable KASAN in apply_alternatives() + - mcb: remove is_added flag from mcb_device struct + - thunderbolt: Workaround an IOMMU fault on certain systems with Intel Maple + Ridge + - thunderbolt: Check that lane 1 is in CL0 before enabling lane bonding + - thunderbolt: Correct TMU mode initialization from hardware + - thunderbolt: Restart XDomain discovery handshake after failure + - powerpc/pseries: Fix STK_PARAM access in the hcall tracing code + - powerpc/47x: Fix 47x syscall return crash + - libceph: use kernel_connect() + - ceph: fix incorrect revoked caps assert in ceph_fill_file_size() + - ceph: fix type promotion bug on 32bit systems + - Input: powermate - fix use-after-free in powermate_config_complete + - Input: psmouse - fix fast_reconnect function for PS/2 mode + - Input: xpad - add PXN V900 support + - Input: i8042 - add Fujitsu Lifebook E5411 to i8042 quirk table + - Input: xpad - add HyperX Clutch Gladiate Support + - Input: goodix - ensure int GPIO is in input for gpio_count == 1 && + gpio_int_idx == 0 case + - tee: amdtee: fix use-after-free vulnerability in amdtee_close_session + - mctp: perform route lookups under a RCU read-side lock + - block: Don't invalidate pagecache for invalid falloc modes + - nfp: flower: avoid rmmod nfp crash issues + - can: sja1000: Always restart the Tx queue after an overrun + - power: supply: qcom_battmgr: fix battery_id type + - power: supply: qcom_battmgr: fix enable request endianness + - usb: typec: ucsi: Use GET_CAPABILITY attributes data to set power supply + scope + - cgroup: Remove duplicates in cgroup v1 tasks file + - dma-buf: add dma_fence_timestamp helper + - scsi: ufs: core: Correct clear TM error log + - riscv: Only consider swbp/ss handlers for correct privileged mode + - counter: chrdev: fix getting array extensions + - counter: microchip-tcb-capture: Fix the use of internal GCLK logic + - coresight: Fix run time warnings while reusing ETR buffer + - riscv: Remove duplicate objcopy flag + - RISC-V: Fix wrong use of CONFIG_HAVE_SOFTIRQ_ON_OWN_STACK + - usb: typec: ucsi: Fix missing link removal + - usb: typec: altmodes/displayport: Signal hpd low when exiting mode + - usb: typec: ucsi: Clear EVENT_PENDING bit if ucsi_send_command fails + - usb: gadget: udc-xilinx: replace memcpy with memcpy_toio + - usb: gadget: ncm: Handle decoding of multiple NTB's in unwrap call + - usb: cdnsp: Fixes issue with dequeuing not queued requests + - usb: typec: qcom: Update the logic of regulator enable and disable + - usb: misc: onboard_hub: add support for Microchip USB2412 USB 2.0 hub + - dmaengine: idxd: use spin_lock_irqsave before wait_event_lock_irq + - dmaengine: mediatek: Fix deadlock caused by synchronize_irq() + - powerpc/8xx: Fix pte_access_permitted() for PAGE_NONE + - powerpc/64e: Fix wrong test in __ptep_test_and_clear_young() + - fs: Fix kernel-doc warnings + - fs: factor out vfs_parse_monolithic_sep() helper + - ovl: fix regression in parsing of mount options with escaped comma + - ovl: make use of ->layers safe in rcu pathwalk + - ovl: fix regression in showing lowerdir mount option + - ALSA: hda/realtek - Fixed two speaker platform + - Linux 6.5.8 + * Mantic update: v6.5.7 upstream stable release (LP: #2045806) + - ASoC: soc-utils: Export snd_soc_dai_is_dummy() symbol + - ASoC: tegra: Fix redundant PLLA and PLLA_OUT0 updates + - maple_tree: add mas_is_active() to detect in-tree walks + - mptcp: Remove unnecessary test for __mptcp_init_sock() + - mptcp: rename timer related helper to less confusing names + - mptcp: fix dangling connection hang-up + - scsi: core: Improve type safety of scsi_rescan_device() + - scsi: Do not attempt to rescan suspended devices + - ata: libata-scsi: Fix delayed scsi_rescan_device() execution + - btrfs: remove btrfs_writepage_endio_finish_ordered + - btrfs: remove end_extent_writepage + - btrfs: don't clear uptodate on write errors + - arm64: add HWCAP for FEAT_HBC (hinted conditional branches) + - arm64: cpufeature: Fix CLRBHB and BC detection + - net: add sysctl accept_ra_min_rtr_lft + - net: change accept_ra_min_rtr_lft to affect all RA lifetimes + - net: release reference to inet6_dev pointer + - iommu/arm-smmu-v3: Avoid constructing invalid range commands + - maple_tree: reduce resets during store setup + - maple_tree: add MAS_UNDERFLOW and MAS_OVERFLOW states + - iommu/apple-dart: Handle DMA_FQ domains in attach_dev() + - scsi: zfcp: Fix a double put in zfcp_port_enqueue() + - iommu/vt-d: Avoid memory allocation in iommu_suspend() + - net: mana: Fix TX CQE error handling + - net: ethernet: mediatek: disable irq before schedule napi + - mptcp: fix delegated action races + - mptcp: userspace pm allow creating id 0 subflow + - qed/red_ll2: Fix undefined behavior bug in struct qed_ll2_info + - Bluetooth: hci_codec: Fix leaking content of local_codecs + - wifi: brcmfmac: Replace 1-element arrays with flexible arrays + - Bluetooth: hci_sync: Fix handling of HCI_QUIRK_STRICT_DUPLICATE_FILTER + - wifi: rtw88: rtw8723d: Fix MAC address offset in EEPROM + - wifi: mwifiex: Fix tlv_buf_left calculation + - md/raid5: release batch_last before waiting for another stripe_head + - PCI/PM: Mark devices disconnected if upstream PCIe link is down on resume + - PCI: qcom: Fix IPQ8074 enumeration + - platform/x86/intel/ifs: release cpus_read_lock() + - net: replace calls to sock->ops->connect() with kernel_connect() + - btrfs: always print transaction aborted messages with an error level + - net: prevent rewrite of msg_name in sock_sendmsg() + - drm/i915: Don't set PIPE_CONTROL_FLUSH_L3 for aux inval + - drm/amd: Fix detection of _PR3 on the PCIe root port + - drm/amd: Fix logic error in sienna_cichlid_update_pcie_parameters() + - arm64: Add Cortex-A520 CPU part definition + - [Config] updateconfigs for ARM64_ERRATUM_2966298 + - arm64: errata: Add Cortex-A520 speculative unprivileged load workaround + - HID: sony: Fix a potential memory leak in sony_probe() + - wifi: mt76: fix lock dependency problem for wed_lock + - ubi: Refuse attaching if mtd's erasesize is 0 + - erofs: fix memory leak of LZMA global compressed deduplication + - wifi: cfg80211/mac80211: hold link BSSes when assoc fails for MLO connection + - iwlwifi: mvm: handle PS changes in vif_cfg_changed + - wifi: iwlwifi: dbg_ini: fix structure packing + - wifi: iwlwifi: mvm: Fix a memory corruption issue + - wifi: cfg80211: fix cqm_config access race + - rtla/timerlat_aa: Zero thread sum after every sample analysis + - rtla/timerlat_aa: Fix negative IRQ delay + - rtla/timerlat_aa: Fix previous IRQ delay for IRQs that happens after thread + sample + - wifi: cfg80211: add missing kernel-doc for cqm_rssi_work + - wifi: mac80211: fix mesh id corruption on 32 bit systems + - wifi: mwifiex: Fix oob check condition in mwifiex_process_rx_packet + - HID: nvidia-shield: add LEDS_CLASS dependency + - erofs: allow empty device tags in flatdev mode + - s390/bpf: Let arch_prepare_bpf_trampoline return program size + - leds: Drop BUG_ON check for LED_COLOR_ID_MULTI + - bpf: Fix tr dereferencing + - bpf: unconditionally reset backtrack_state masks on global func exit + - regulator: mt6358: split ops for buck and linear range LDO regulators + - Bluetooth: Delete unused hci_req_prepare_suspend() declaration + - Bluetooth: Fix hci_link_tx_to RCU lock usage + - Bluetooth: ISO: Fix handling of listen for unicast + - drivers/net: process the result of hdlc_open() and add call of hdlc_close() + in uhdlc_close() + - wifi: mt76: mt76x02: fix MT76x0 external LNA gain handling + - perf/x86/amd/core: Fix overflow reset on hotplug + - rtla/timerlat: Do not stop user-space if a cpu is offline + - regmap: rbtree: Fix wrong register marked as in-cache when creating new node + - wifi: mac80211: fix potential key use-after-free + - perf/x86/amd: Do not WARN() on every IRQ + - iommu/mediatek: Fix share pgtable for iova over 4GB + - wifi: mac80211: Create resources for disabled links + - regulator/core: regulator_register: set device->class earlier + - ima: Finish deprecation of IMA_TRUSTED_KEYRING Kconfig + - [Config] updateconfigs for IMA_BLACKLIST_KEYRING + - wifi: iwlwifi: mvm: Fix incorrect usage of scan API + - scsi: target: core: Fix deadlock due to recursive locking + - ima: rework CONFIG_IMA dependency block + - NFSv4: Fix a nfs4_state_manager() race + - ice: always add legacy 32byte RXDID in supported_rxdids + - bpf: tcp_read_skb needs to pop skb regardless of seq + - bpf, sockmap: Do not inc copied_seq when PEEK flag set + - bpf, sockmap: Reject sk_msg egress redirects to non-TCP sockets + - modpost: add missing else to the "of" check + - net: stmmac: platform: fix the incorrect parameter + - net: fix possible store tearing in neigh_periodic_work() + - neighbour: fix data-races around n->output + - ipv4, ipv6: Fix handling of transhdrlen in __ip{,6}_append_data() + - ptp: ocp: Fix error handling in ptp_ocp_device_init + - net: dsa: mv88e6xxx: Avoid EEPROM timeout when EEPROM is absent + - ovl: move freeing ovl_entry past rcu delay + - ovl: fetch inode once in ovl_dentry_revalidate_common() + - ipv6: tcp: add a missing nf_reset_ct() in 3WHS handling + - net: usb: smsc75xx: Fix uninit-value access in __smsc75xx_read_reg + - ethtool: plca: fix plca enable data type while parsing the value + - net: nfc: llcp: Add lock when modifying device list + - net: renesas: rswitch: Add spin lock protection for irq {un}mask + - rswitch: Fix PHY station management clock setting + - net: ethernet: ti: am65-cpsw: Fix error code in + am65_cpsw_nuss_init_tx_chns() + - ibmveth: Remove condition to recompute TCP header checksum. + - netfilter: nft_payload: rebuild vlan header on h_proto access + - netfilter: handle the connecting collision properly in + nf_conntrack_proto_sctp + - selftests: netfilter: Test nf_tables audit logging + - selftests: netfilter: Extend nft_audit.sh + - netfilter: nf_tables: Deduplicate nft_register_obj audit logs + - netfilter: nf_tables: nft_set_rbtree: fix spurious insertion failure + - ipv4: Set offload_failed flag in fibmatch results + - net: stmmac: dwmac-stm32: fix resume on STM32 MCU + - tipc: fix a potential deadlock on &tx->lock + - tcp: fix quick-ack counting to count actual ACKs of new data + - tcp: fix delayed ACKs for MSS boundary condition + - sctp: update transport state when processing a dupcook packet + - sctp: update hb timer immediately after users change hb_interval + - netlink: annotate data-races around sk->sk_err + - net: mana: Fix the tso_bytes calculation + - net: mana: Fix oversized sge0 for GSO packets + - HID: nvidia-shield: Fix a missing led_classdev_unregister() in the probe + error handling path + - HID: sony: remove duplicate NULL check before calling usb_free_urb() + - HID: intel-ish-hid: ipc: Disable and reenable ACPI GPE bit + - net: lan743x: also select PHYLIB + - parisc: Restore __ldcw_align for PA-RISC 2.0 processors + - smb: use kernel_connect() and kernel_bind() + - parisc: Fix crash with nr_cpus=1 option + - dm zoned: free dmz->ddev array in dmz_put_zoned_devices + - RDMA/core: Require admin capabilities to set system parameters + - of: dynamic: Fix potential memory leak in of_changeset_action() + - IB/mlx4: Fix the size of a buffer in add_port_entries() + - gpio: aspeed: fix the GPIO number passed to pinctrl_gpio_set_config() + - gpio: pxa: disable pinctrl calls for MMP_GPIO + - RDMA/cma: Initialize ib_sa_multicast structure to 0 when join + - RDMA/cma: Fix truncation compilation warning in make_cma_ports + - RDMA/bnxt_re: Fix the handling of control path response data + - RDMA/uverbs: Fix typo of sizeof argument + - RDMA/srp: Do not call scsi_done() from srp_abort() + - RDMA/siw: Fix connection failure handling + - RDMA/mlx5: Fix mkey cache possible deadlock on cleanup + - RDMA/mlx5: Fix assigning access flags to cache mkeys + - RDMA/mlx5: Fix mutex unlocking on error flow for steering anchor creation + - RDMA/mlx5: Fix NULL string error + - x86/sev: Change npages to unsigned long in snp_accept_memory() + - x86/sev: Use the GHCB protocol when available for SNP CPUID requests + - ksmbd: fix race condition between session lookup and expire + - ksmbd: fix uaf in smb20_oplock_break_ack + - ksmbd: fix race condition from parallel smb2 lock requests + - RDMA/mlx5: Remove not-used cache disable flag + - Linux 6.5.7 + * Mantic update: v6.5.7 upstream stable release (LP: #2045806) // + CVE-2023-34324 + - xen/events: replace evtchn_rwlock with RCU + * CVE-2023-6932 + - ipv4: igmp: fix refcnt uaf issue when receiving igmp query packet + * CVE-2023-6531 + - io_uring/af_unix: disable sending io_uring over sockets + * CVE-2023-6606 + - smb: client: fix OOB in smbCalcSize() + * CVE-2023-6817 + - netfilter: nft_set_pipapo: skip inactive elements during set walk + * Avoid using damage rectangle under hardware rotation mode when PSR is + enabled (LP: #2045958) + - drm/amd/display: fix hw rotated modes when PSR-SU is enabled + * CVE-2023-46813 + - x86/sev: Disable MMIO emulation from user mode + - x86/sev: Check IOBM for IOIO exceptions from user-space + - x86/sev: Check for user-space IOIO pointing to kernel space + * CVE-2023-6111 + - netfilter: nf_tables: remove catchall element in GC sync path + * CVE-2023-5972 + - nf_tables: fix NULL pointer dereference in nft_inner_init() + - nf_tables: fix NULL pointer dereference in nft_expr_inner_parse() + * Orchid Bay MLK2/Maya Bay MLK soundwire support (LP: #2042090) + - ASoC: Intel: soc-acpi-intel-mtl-match: add rt713 rt1316 config + - ASoC: Intel: sof_sdw_rt_sdca_jack_common: add rt713 support + - ASoC: Intel: sof_sdw_rt712_sdca: construct cards->components by name_prefix + - ASoC: Intel: soc-acpi: rt713+rt1316, no sdw-dmic config + * Build failure if run in a console (LP: #2044512) + - [Packaging] Fix kernel module compression failures + * Fix system suspend problem for Cirrus CS35L41 HDA codec on HP ZBook Fury 16 + G9 (LP: #2042060) + - ALSA: hda: cs35l41: Override the _DSD for HP Zbook Fury 17 G9 to correct + boost type + - ALSA: hda: cs35l41: Use reset label to get GPIO for HP Zbook Fury 17 G9 + - ALSA: hda: cs35l41: Assert reset before system suspend + - ALSA: hda: cs35l41: Assert Reset prior to de-asserting in probe and system + resume + - ALSA: hda: cs35l41: Run boot process during resume callbacks + - ALSA: hda: cs35l41: Force a software reset after hardware reset + - ALSA: hda: cs35l41: Do not unload firmware before reset in system suspend + - ALSA: hda: cs35l41: Check CSPL state after loading firmware + - ASoC: cs35l41: Detect CSPL errors when sending CSPL commands + * Support speaker mute hotkey for Cirrus CS35L41 HDA codec (LP: #2039151) + - ALSA: hda: cs35l41: Support systems with missing _DSD properties + - ALSA: hda: cs35l41: Fix the loop check in cs35l41_add_dsd_properties + - ALSA: hda: cs35l41: Add notification support into component binding + - ALSA: hda/realtek: Support ACPI Notification framework via component binding + - ALSA: hda: cs35l41: Support mute notifications for CS35L41 HDA + - ALSA: hda: cs35l41: Add read-only ALSA control for forced mute + * Add SoF topology support on Intel RaptorLake DELL SKU 0C11 (LP: #2038263) + - ASoC: Intel: soc-acpi-intel-rpl-match: add rt711-l0-rt1316-l12 support + * Update io_uring to 6.6 (LP: #2043730) + - fs: create kiocb_{start,end}_write() helpers + - fs: add IOCB flags related to passing back dio completions + - io_uring/poll: always set 'ctx' in io_cancel_data + - io_uring/timeout: always set 'ctx' in io_cancel_data + - io_uring/cancel: abstract out request match helper + - io_uring/cancel: fix sequence matching for IORING_ASYNC_CANCEL_ANY + - io_uring: use cancelation match helper for poll and timeout requests + - io_uring/cancel: add IORING_ASYNC_CANCEL_USERDATA + - io_uring/cancel: support opcode based lookup and cancelation + - io_uring/cancel: wire up IORING_ASYNC_CANCEL_OP for sync cancel + - io_uring/rw: add write support for IOCB_DIO_CALLER_COMP + - io_uring: Add io_uring command support for sockets + - io_uring/rsrc: Remove unused declaration io_rsrc_put_tw() + - io_uring: cleanup 'ret' handling in io_iopoll_check() + - io_uring/fdinfo: get rid of ref tryget + - io_uring/splice: use fput() directly + - io_uring: have io_file_put() take an io_kiocb rather than the file + - io_uring: remove unnecessary forward declaration + - io_uring/io-wq: don't grab wq->lock for worker activation + - io_uring/io-wq: reduce frequency of acct->lock acquisitions + - io_uring/io-wq: don't gate worker wake up success on wake_up_process() + - io_uring: open code io_fill_cqe_req() + - io_uring: remove return from io_req_cqe_overflow() + - io_uring: never overflow io_aux_cqe + - io_uring/rsrc: keep one global dummy_ubuf + - io_uring: simplify io_run_task_work_sig return + - io_uring/rsrc: Annotate struct io_mapped_ubuf with __counted_by + - io_uring: rename kiocb_end_write() local helper + - io_uring: use kiocb_{start,end}_write() helpers + - io_uring: stop calling free_compound_page() + - io_uring: improve cqe !tracing hot path + - io_uring: cqe init hardening + - io_uring: simplify big_cqe handling + - io_uring: refactor __io_get_cqe() + - io_uring: optimise extra io_get_cqe null check + - io_uring: reorder cqring_flush and wakeups + - io_uring: merge iopoll and normal completion paths + - io_uring: force inline io_fill_cqe_req + - io_uring: compact SQ/CQ heads/tails + - io_uring: add option to remove SQ indirection + - io_uring: move non aligned field to the end + - io_uring: banish non-hot data to end of io_ring_ctx + - io_uring: separate task_work/waiting cache line + - io_uring: move multishot cqe cache in ctx + - io_uring: move iopoll ctx fields around + - io_uring: fix IO hang in io_wq_put_and_exit from do_exit() + - io_uring/fdinfo: only print ->sq_array[] if it's there + - io_uring: fix unprotected iopoll overflow + - Revert "io_uring: fix IO hang in io_wq_put_and_exit from do_exit()" + - io_uring/kbuf: don't allow registered buffer rings on highmem pages + - io_uring: ensure io_lockdep_assert_cq_locked() handles disabled rings + - io_uring: don't allow IORING_SETUP_NO_MMAP rings on highmem pages + - io-wq: fully initialize wqe before calling + cpuhp_state_add_instance_nocalls() + - io_uring: fix crash with IORING_SETUP_NO_MMAP and invalid SQ ring address + - io_uring/fdinfo: lock SQ thread while retrieving thread cpu/pid + - io_uring/rw: disable IOCB_DIO_CALLER_COMP + - io_uring: kiocb_done() should *not* trust ->ki_pos if ->{read,write}_iter() + failed + * System hang after unplug/plug DP monitor with AMD W7500 card (LP: #2042912) + - drm/amd/pm: Fix error of MACO flag setting code + * correct cephfs pull request for uidmap support (LP: #2041613) + - Revert "UBUNTU: SAUCE: ceph: BUG if MDS changed truncate_seq with client + caps still outstanding" + - Revert "UBUNTU: SAUCE: ceph: make sure all the files successfully put before + unmounting" + - Revert "UBUNTU: SAUCE: mm: BUG if filemap_alloc_folio gives us a folio with + a non-NULL ->private" + - Revert "UBUNTU: SAUCE: ceph: dump info about cap flushes when we're waiting + too long for them" + - Revert "UBUNTU: SAUCE: rbd: bump RBD_MAX_PARENT_CHAIN_LEN to 128" + * RTL8111EPP: Fix the network lost after resume with DASH (LP: #2043786) + - r8169: add handling DASH when DASH is disabled + - r8169: fix network lost after resume on DASH systems + * kernel BUG: io_uring openat triggers audit reference count underflow + (LP: #2043841) + - audit, io_uring: io_uring openat triggers audit reference count underflow + * Fix ADL: System enabled AHCI can't get into s0ix when attached ODD + (LP: #2037493) + - ata: ahci: Add Intel Alder Lake-P AHCI controller to low power chipsets list + * [UBUNTU 23.04] Kernel config option missing for s390x PCI passthrough + (LP: #2042853) + - [Config] CONFIG_VFIO_PCI_ZDEV_KVM=y + * Azure: Fix Azure vendor ID (LP: #2036600) + - SAUCE: (no-up) hv: Fix supply vendor ID + * Mantic update: v6.5.6 upstream stable release (LP: #2044174) + - NFS: Fix error handling for O_DIRECT write scheduling + - NFS: Fix O_DIRECT locking issues + - NFS: More O_DIRECT accounting fixes for error paths + - NFS: Use the correct commit info in nfs_join_page_group() + - NFS: More fixes for nfs_direct_write_reschedule_io() + - NFS/pNFS: Report EINVAL errors from connect() to the server + - SUNRPC: Mark the cred for revalidation if the server rejects it + - NFSv4.1: use EXCHGID4_FLAG_USE_PNFS_DS for DS server + - NFSv4.1: fix pnfs MDS=DS session trunking + - media: v4l: Use correct dependency for camera sensor drivers + - media: via: Use correct dependency for camera sensor drivers + - gfs2: Fix another freeze/thaw hang + - netfs: Only call folio_start_fscache() one time for each folio + - btrfs: improve error message after failure to add delayed dir index item + - btrfs: remove BUG() after failure to insert delayed dir index item + - ext4: replace the traditional ternary conditional operator with with + max()/min() + - ext4: move setting of trimmed bit into ext4_try_to_trim_range() + - ext4: do not let fstrim block system suspend + - netfilter: nft_set_rbtree: use read spinlock to avoid datapath contention + - netfilter: nft_set_pipapo: call nft_trans_gc_queue_sync() in catchall GC + - netfilter: nft_set_pipapo: stop GC iteration if GC transaction allocation + fails + - netfilter: nft_set_hash: try later when GC hits EAGAIN on iteration + - netfilter: nf_tables: fix memleak when more than 255 elements expired + - ASoC: meson: spdifin: start hw on dai probe + - netfilter: nf_tables: disallow element removal on anonymous sets + - bpf: Avoid deadlock when using queue and stack maps from NMI + - bpf: Avoid dummy bpf_offload_netdev in __bpf_prog_dev_bound_init + - ALSA: docs: Fix a typo of midi2_ump_probe option for snd-usb-audio + - ALSA: seq: Avoid delivery of events for disabled UMP groups + - ASoC: rt5640: Revert "Fix sleep in atomic context" + - ASoC: rt5640: Fix sleep in atomic context + - ASoC: rt5640: fix typos + - ASoC: rt5640: Do not disable/enable IRQ twice on suspend/resume + - ASoC: rt5640: Enable the IRQ on resume after configuring jack-detect + - ASoC: rt5640: Fix IRQ not being free-ed for HDA jack detect mode + - bpf: Fix a erroneous check after snprintf() + - selftests/bpf: fix unpriv_disabled check in test_verifier + - ALSA: hda/realtek: Splitting the UX3402 into two separate models + - netfilter: conntrack: fix extension size table + - netfilter: nf_tables: Fix entries val in rule reset audit log + - Compiler Attributes: counted_by: Adjust name and identifier expansion + - uapi: stddef.h: Fix header guard location + - uapi: stddef.h: Fix __DECLARE_FLEX_ARRAY for C++ + - memblock tests: Fix compilation errors. + - ASoC: SOF: ipc4-topology: fix wrong sizeof argument + - net: microchip: sparx5: Fix memory leak for + vcap_api_rule_add_keyvalue_test() + - net: microchip: sparx5: Fix memory leak for + vcap_api_rule_add_actionvalue_test() + - net: microchip: sparx5: Fix possible memory leak in + vcap_api_encode_rule_test() + - net: microchip: sparx5: Fix possible memory leaks in + test_vcap_xn_rule_creator() + - net: microchip: sparx5: Fix possible memory leaks in vcap_api_kunit + - selftests: tls: swap the TX and RX sockets in some tests + - net/core: Fix ETH_P_1588 flow dissector + - ALSA: seq: ump: Fix -Wformat-truncation warning + - ASoC: hdaudio.c: Add missing check for devm_kstrdup + - ASoC: imx-audmix: Fix return error with devm_clk_get() + - octeon_ep: fix tx dma unmap len values in SG + - iavf: do not process adminq tasks when __IAVF_IN_REMOVE_TASK is set + - ASoC: SOF: core: Only call sof_ops_free() on remove if the probe was + successful + - iavf: add iavf_schedule_aq_request() helper + - iavf: schedule a request immediately after add/delete vlan + - i40e: Fix VF VLAN offloading when port VLAN is configured + - netfilter, bpf: Adjust timeouts of non-confirmed CTs in + bpf_ct_insert_entry() + - ionic: fix 16bit math issue when PAGE_SIZE >= 64KB + - igc: Fix infinite initialization loop with early XDP redirect + - scsi: iscsi_tcp: restrict to TCP sockets + - powerpc/perf/hv-24x7: Update domain value check + - powerpc/dexcr: Move HASHCHK trap handler + - dccp: fix dccp_v4_err()/dccp_v6_err() again + - x86/mm, kexec, ima: Use memblock_free_late() from ima_free_kexec_buffer() + - net: hsr: Properly parse HSRv1 supervisor frames. + - platform/x86: intel_scu_ipc: Check status after timeout in busy_loop() + - platform/x86: intel_scu_ipc: Check status upon timeout in + ipc_wait_for_interrupt() + - platform/x86: intel_scu_ipc: Don't override scu in + intel_scu_ipc_dev_simple_command() + - platform/x86: intel_scu_ipc: Fail IPC send if still busy + - x86/asm: Fix build of UML with KASAN + - x86/srso: Fix srso_show_state() side effect + - x86/srso: Set CPUID feature bits independently of bug or mitigation status + - x86/srso: Don't probe microcode in a guest + - x86/srso: Fix SBPB enablement for spec_rstack_overflow=off + - net: hns3: add cmdq check for vf periodic service task + - net: hns3: fix GRE checksum offload issue + - net: hns3: only enable unicast promisc when mac table full + - net: hns3: fix fail to delete tc flower rules during reset issue + - net: hns3: add 5ms delay before clear firmware reset irq source + - net: bridge: use DEV_STATS_INC() + - team: fix null-ptr-deref when team device type is changed + - net: rds: Fix possible NULL-pointer dereference + - vxlan: Add missing entries to vxlan_get_size() + - netfilter: nf_tables: disable toggling dormant table state more than once + - net: hinic: Fix warning-hinic_set_vlan_fliter() warn: variable dereferenced + before check 'hwdev' + - net/handshake: Fix memory leak in __sock_create() and sock_alloc_file() + - i915/pmu: Move execlist stats initialization to execlist specific setup + - drm/virtio: clean out_fence on complete_submit + - locking/seqlock: Do the lockdep annotation before locking in + do_write_seqcount_begin_nested() + - net: ena: Flush XDP packets on error. + - bnxt_en: Flush XDP for bnxt_poll_nitroa0()'s NAPI + - octeontx2-pf: Do xdp_do_flush() after redirects. + - igc: Expose tx-usecs coalesce setting to user + - cxl/region: Match auto-discovered region decoders by HPA range + - proc: nommu: /proc//maps: release mmap read lock + - proc: nommu: fix empty /proc//maps + - cifs: Fix UAF in cifs_demultiplex_thread() + - gpio: tb10x: Fix an error handling path in tb10x_gpio_probe() + - i2c: mux: demux-pinctrl: check the return value of devm_kstrdup() + - i2c: mux: gpio: Add missing fwnode_handle_put() + - i2c: xiic: Correct return value check for xiic_reinit() + - drm/amdgpu: set completion status as preempted for the resubmission + - ASoC: cs35l56: Disable low-power hibernation mode + - drm/amd/display: Update DPG test pattern programming + - drm/amd/display: fix a regression in blank pixel data caused by coding + mistake + - arm64: dts: qcom: sdm845-db845c: Mark cont splash memory region as reserved + - direct_write_fallback(): on error revert the ->ki_pos update from buffered + write + - btrfs: reset destination buffer when read_extent_buffer() gets invalid range + - vfio/mdev: Fix a null-ptr-deref bug for mdev_unregister_parent() + - MIPS: Alchemy: only build mmc support helpers if au1xmmc is enabled + - spi: spi-gxp: BUG: Correct spi write return value + - bus: ti-sysc: Use fsleep() instead of usleep_range() in sysc_reset() + - bus: ti-sysc: Fix missing AM35xx SoC matching + - firmware: arm_scmi: Harden perf domain info access + - firmware: arm_scmi: Fixup perf power-cost/microwatt support + - power: supply: mt6370: Fix missing error code in mt6370_chg_toggle_cfo() + - clk: sprd: Fix thm_parents incorrect configuration + - clk: si521xx: Use REGCACHE_FLAT instead of NONE + - clk: si521xx: Fix regmap write accessor + - clk: tegra: fix error return case for recalc_rate + - ARM: dts: ti: omap: Fix bandgap thermal cells addressing for omap3/4 + - ARM: dts: ti: omap: motorola-mapphone: Fix abe_clkctrl warning on boot + - bus: ti-sysc: Fix SYSC_QUIRK_SWSUP_SIDLE_ACT handling for uart wake-up + - swiotlb: use the calculated number of areas + - power: supply: ucs1002: fix error code in ucs1002_get_property() + - power: supply: rt9467: Fix rt9467_run_aicl() + - power: supply: core: fix use after free in uevent + - firmware: imx-dsp: Fix an error handling path in imx_dsp_setup_channels() + - xtensa: add default definition for XCHAL_HAVE_DIV32 + - xtensa: iss/network: make functions static + - xtensa: boot: don't add include-dirs + - xtensa: umulsidi3: fix conditional expression + - xtensa: boot/lib: fix function prototypes + - power: supply: rk817: Fix node refcount leak + - powerpc/stacktrace: Fix arch_stack_walk_reliable() + - selftests/powerpc: Fix emit_tests to work with run_kselftest.sh + - arm64: dts: imx8mp: Fix SDMA2/3 clocks + - arm64: dts: imx8mp-beacon-kit: Fix audio_pll2 clock + - soc: imx8m: Enable OCOTP clock for imx8mm before reading registers + - arm64: dts: imx8mm-evk: Fix hdmi@3d node + - arm64: dts: imx: Add imx8mm-prt8mm.dtb to build + - firmware: arm_ffa: Don't set the memory region attributes for MEM_LEND + - i915/guc: Get runtime pm in busyness worker only if already active + - accel/ivpu: Do not use wait event interruptible + - gpio: pmic-eic-sprd: Add can_sleep flag for PMIC EIC chip + - i2c: npcm7xx: Fix callback completion ordering + - NFSD: Fix zero NFSv4 READ results when RQ_SPLICE_OK is not set + - x86/reboot: VMCLEAR active VMCSes before emergency reboot + - dma-debug: don't call __dma_entry_alloc_check_leak() under free_entries_lock + - bpf: Annotate bpf_long_memcpy with data_race + - ASoC: amd: yc: Add DMI entries to support Victus by HP Gaming Laptop + 15-fb0xxx (8A3E) + - spi: sun6i: reduce DMA RX transfer width to single byte + - spi: sun6i: fix race between DMA RX transfer completion and RX FIFO drain + - nvme-fc: Prevent null pointer dereference in nvme_fc_io_getuuid() + - parisc: sba: Fix compile warning wrt list of SBA devices + - parisc: sba-iommu: Fix sparse warnigs + - parisc: ccio-dma: Fix sparse warnings + - parisc: iosapic.c: Fix sparse warnings + - parisc: drivers: Fix sparse warning + - parisc: irq: Make irq_stack_union static to avoid sparse warning + - scsi: qedf: Add synchronization between I/O completions and abort + - scsi: ufs: core: Move __ufshcd_send_uic_cmd() outside host_lock + - scsi: ufs: core: Poll HCS.UCRDY before issuing a UIC command + - selftests/ftrace: Correctly enable event in instance-event.tc + - ring-buffer: Avoid softlockup in ring_buffer_resize() + - btrfs: assert delayed node locked when removing delayed item + - selftests: fix dependency checker script + - ring-buffer: Do not attempt to read past "commit" + - net/smc: bugfix for smcr v2 server connect success statistic + - ata: sata_mv: Fix incorrect string length computation in mv_dump_mem() + - efi/x86: Ensure that EFI_RUNTIME_MAP is enabled for kexec + - platform/mellanox: mlxbf-bootctl: add NET dependency into Kconfig + - platform/x86: asus-wmi: Support 2023 ROG X16 tablet mode + - thermal/of: add missing of_node_put() + - drm/amdgpu: Store CU info from all XCCs for GFX v9.4.3 + - drm/amdkfd: Update cache info reporting for GFX v9.4.3 + - drm/amdkfd: Update CU masking for GFX 9.4.3 + - drm/amd/display: Don't check registers, if using AUX BL control + - drm/amdgpu/soc21: don't remap HDP registers for SR-IOV + - drm/amdgpu/nbio4.3: set proper rmmio_remap.reg_offset for SR-IOV + - drm/amdgpu: fallback to old RAS error message for aqua_vanjaram + - drm/amdkfd: Checkpoint and restore queues on GFX11 + - drm/amdgpu: Handle null atom context in VBIOS info ioctl + - objtool: Fix _THIS_IP_ detection for cold functions + - nvme-pci: do not set the NUMA node of device if it has none + - riscv: errata: fix T-Head dcache.cva encoding + - scsi: pm80xx: Use phy-specific SAS address when sending PHY_START command + - scsi: pm80xx: Avoid leaking tags when processing + OPC_INB_SET_CONTROLLER_CONFIG command + - smb3: correct places where ENOTSUPP is used instead of preferred EOPNOTSUPP + - ata: libata-eh: do not clear ATA_PFLAG_EH_PENDING in ata_eh_reset() + - ata: libata-eh: do not thaw the port twice in ata_eh_reset() + - Add DMI ID for MSI Bravo 15 B7ED + - spi: nxp-fspi: reset the FLSHxCR1 registers + - spi: stm32: add a delay before SPI disable + - ASoC: fsl: imx-pcm-rpmsg: Add SNDRV_PCM_INFO_BATCH flag + - spi: intel-pci: Add support for Granite Rapids SPI serial flash + - bpf: Clarify error expectations from bpf_clone_redirect + - ASoC: rt5640: Only cancel jack-detect work on suspend if active + - ALSA: hda: intel-sdw-acpi: Use u8 type for link index + - ASoC: cs42l42: Ensure a reset pulse meets minimum pulse width. + - ASoC: cs42l42: Don't rely on GPIOD_OUT_LOW to set RESET initially low + - ASoC: cs42l42: Avoid stale SoundWire ATTACH after hard reset + - firmware: cirrus: cs_dsp: Only log list of algorithms in debug build + - ASoC: wm_adsp: Fix missing locking in wm_adsp_[read|write]_ctl() + - memblock tests: fix warning: "__ALIGN_KERNEL" redefined + - memblock tests: fix warning ‘struct seq_file’ declared inside parameter list + - ASoC: imx-rpmsg: Set ignore_pmdown_time for dai_link + - ASoC: SOF: sof-audio: Fix DSP core put imbalance on widget setup failure + - media: vb2: frame_vector.c: replace WARN_ONCE with a comment + - NFSv4.1: fix zero value filehandle in post open getattr + - ASoC: SOF: Intel: MTL: Reduce the DSP init timeout + - powerpc/watchpoints: Disable preemption in thread_change_pc() + - powerpc/watchpoint: Disable pagefaults when getting user instruction + - powerpc/watchpoints: Annotate atomic context in more places + - ncsi: Propagate carrier gain/loss events to the NCSI controller + - net: hsr: Add __packed to struct hsr_sup_tlv. + - tsnep: Fix NAPI scheduling + - tsnep: Fix ethtool channels + - tsnep: Fix NAPI polling with budget 0 + - gfs2: fix glock shrinker ref issues + - i2c: designware: fix __i2c_dw_disable() in case master is holding SCL low + - LoongArch: Use _UL() and _ULL() + - LoongArch: Set all reserved memblocks on Node#0 at initialization + - fbdev/sh7760fb: Depend on FB=y + - perf build: Define YYNOMEM as YYNOABORT for bison < 3.81 + - ASoC: cs35l56: Call pm_runtime_dont_use_autosuspend() + - iommu/arm-smmu-v3: Fix soft lockup triggered by arm_smmu_mm_invalidate_range + - spi: zynqmp-gqspi: fix clock imbalance on probe failure + - x86/sgx: Resolves SECS reclaim vs. page fault for EAUG race + - x86/srso: Add SRSO mitigation for Hygon processors + - KVM: SVM: INTERCEPT_RDTSCP is never intercepted anyway + - KVM: SVM: Fix TSC_AUX virtualization setup + - KVM: x86/mmu: Open code leaf invalidation from mmu_notifier + - KVM: x86/mmu: Do not filter address spaces in + for_each_tdp_mmu_root_yield_safe() + - KVM: x86/mmu: Stop zapping invalidated TDP MMU roots asynchronously + - mptcp: fix bogus receive window shrinkage with multiple subflows + - mptcp: move __mptcp_error_report in protocol.c + - mptcp: process pending subflow error on close + - Revert "tty: n_gsm: fix UAF in gsm_cleanup_mux" + - scsi: core: ata: Do no try to probe for CDL on old drives + - serial: 8250_port: Check IRQ data before use + - nilfs2: fix potential use after free in nilfs_gccache_submit_read_data() + - crypto: sm2 - Fix crash caused by uninitialized context + - ALSA: rawmidi: Fix NULL dereference at proc read + - ALSA: hda: Disable power save for solving pop issue on Lenovo ThinkCentre + M70q + - LoongArch: Fix lockdep static memory detection + - LoongArch: Define relocation types for ABI v2.10 + - LoongArch: numa: Fix high_memory calculation + - LoongArch: Add support for 32_PCREL relocation type + - LoongArch: Add support for 64_PCREL relocation type + - ata: libata-scsi: link ata port and scsi device + - scsi: sd: Differentiate system and runtime start/stop management + - scsi: sd: Do not issue commands to suspended disks on shutdown + - ata: libata-scsi: ignore reserved bits for REPORT SUPPORTED OPERATION CODES + - io_uring/fs: remove sqe->rw_flags checking from LINKAT + - i2c: i801: unregister tco_pdev in i801_probe() error path + - ASoC: amd: yc: Fix non-functional mic on Lenovo 82QF and 82UG + - kernel/sched: Modify initial boot task idle setup + - sched/rt: Fix live lock between select_fallback_rq() and RT push + - Revert "SUNRPC dont update timeout value on connection reset" + - NFSv4: Fix a state manager thread deadlock regression + - ACPI: NFIT: Fix incorrect calculation of idt size + - timers: Tag (hr)timer softirq as hotplug safe + - drm/tests: Fix incorrect argument in drm_test_mm_insert_range + - cxl/mbox: Fix CEL logic for poison and security commands + - arm64: defconfig: remove CONFIG_COMMON_CLK_NPCM8XX=y + - mm/damon/vaddr-test: fix memory leak in damon_do_test_apply_three_regions() + - selftests/mm: fix awk usage in charge_reserved_hugetlb.sh and + hugetlb_reparenting_test.sh that may cause error + - mm: mempolicy: keep VMA walk if both MPOL_MF_STRICT and MPOL_MF_MOVE are + specified + - mm/slab_common: fix slab_caches list corruption after kmem_cache_destroy() + - mm: page_alloc: fix CMA and HIGHATOMIC landing on the wrong buddy list + - mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcement + - cxl/port: Fix cxl_test register enumeration regression + - cxl/pci: Fix appropriate checking for _OSC while handling CXL RAS registers + - ring-buffer: Fix bytes info in per_cpu buffer stats + - ring-buffer: Update "shortest_full" in polling + - btrfs: refresh dir last index during a rewinddir(3) call + - btrfs: file_remove_privs needs an exclusive lock in direct io write + - btrfs: set last dir index to the current last index when opening dir + - btrfs: fix race between reading a directory and adding entries to it + - btrfs: properly report 0 avail for very full file systems + - media: uvcvideo: Fix OOB read + - bpf: Add override check to kprobe multi link attach + - bpf: Fix BTF_ID symbol generation collision + - bpf: Fix BTF_ID symbol generation collision in tools/ + - net: thunderbolt: Fix TCPv6 GSO checksum calculation + - thermal: sysfs: Fix trip_point_hyst_store() + - tracing/user_events: Align set_bit() address for all archs + - ata: libata-core: Fix ata_port_request_pm() locking + - ata: libata-core: Fix port and device removal + - ata: libata-core: Do not register PM operations for SAS ports + - ata: libata-sata: increase PMP SRST timeout to 10s + - i915: Limit the length of an sg list to the requested length + - drm/i915/gt: Fix reservation address in ggtt_reserve_guc_top + - power: supply: rk817: Add missing module alias + - power: supply: ab8500: Set typing and props + - fs: binfmt_elf_efpic: fix personality for ELF-FDPIC + - drm/amdkfd: Use gpu_offset for user queue's wptr + - drm/amd/display: fix the ability to use lower resolution modes on eDP + - drm/meson: fix memory leak on ->hpd_notify callback + - rbd: move rbd_dev_refresh() definition + - rbd: decouple header read-in from updating rbd_dev->header + - rbd: decouple parent info read-in from updating rbd_dev + - rbd: take header_rwsem in rbd_dev_refresh() only when updating + - memcg: drop kmem.limit_in_bytes + - mm, memcg: reconsider kmem.limit_in_bytes deprecation + - ASoC: amd: yc: Fix a non-functional mic on Lenovo 82TL + - Linux 6.5.6 + * Mantic update: v6.5.5 upstream stable release (LP: #2043416) + - iomap: Fix possible overflow condition in iomap_write_delalloc_scan + - autofs: fix memory leak of waitqueues in autofs_catatonic_mode + - btrfs: handle errors properly in update_inline_extent_backref() + - btrfs: output extra debug info if we failed to find an inline backref + - locks: fix KASAN: use-after-free in trace_event_raw_event_filelock_lock + - ACPICA: Add AML_NO_OPERAND_RESOLVE flag to Timer + - kernel/fork: beware of __put_task_struct() calling context + - rcuscale: Move rcu_scale_writer() schedule_timeout_uninterruptible() to + _idle() + - scftorture: Forgive memory-allocation failure if KASAN + - ACPI: video: Add backlight=native DMI quirk for Lenovo Ideapad Z470 + - platform/chrome: cros_ec_lpc: Remove EC panic shutdown timeout + - x86/amd_nb: Add PCI IDs for AMD Family 1Ah-based models + - perf/smmuv3: Enable HiSilicon Erratum 162001900 quirk for HIP08/09 + - s390/boot: cleanup number of page table levels setup + - kselftest/arm64: fix a memleak in zt_regs_run() + - perf/imx_ddr: speed up overflow frequency of cycle + - ACPI: video: Add backlight=native DMI quirk for Apple iMac12,1 and iMac12,2 + - hw_breakpoint: fix single-stepping when using bpf_overflow_handler + - ACPI: x86: s2idle: Catch multiple ACPI_TYPE_PACKAGE objects + - selftests/nolibc: fix up kernel parameters support + - selftests/nolibc: prevent out of bounds access in expect_vfprintf + - spi: sun6i: add quirk for dual and quad SPI modes support + - devlink: remove reload failed checks in params get/set callbacks + - crypto: lrw,xts - Replace strlcpy with strscpy + - ice: Don't tx before switchdev is fully configured + - wifi: ath9k: fix fortify warnings + - wifi: ath9k: fix printk specifier + - wifi: rtw88: delete timer and free skb queue when unloading + - wifi: mwifiex: fix fortify warning + - mt76: mt7921: don't assume adequate headroom for SDIO headers + - wifi: wil6210: fix fortify warnings + - can: sun4i_can: Add acceptance register quirk + - can: sun4i_can: Add support for the Allwinner D1 + - [Config] updateconfigs for CAN_SUN4I + - net: Use sockaddr_storage for getsockopt(SO_PEERNAME). + - wifi: ath12k: Fix a NULL pointer dereference in ath12k_mac_op_hw_scan() + - wifi: ath12k: avoid array overflow of hw mode for preferred_hw_mode + - net/ipv4: return the real errno instead of -EINVAL + - crypto: lib/mpi - avoid null pointer deref in mpi_cmp_ui() + - Bluetooth: btusb: Add device 0489:e0f5 as MT7922 device + - Bluetooth: btusb: Add a new VID/PID 0489/e0f6 for MT7922 + - Bluetooth: btusb: Add new VID/PID 0489/e102 for MT7922 + - Bluetooth: btusb: Add new VID/PID 04ca/3804 for MT7922 + - Bluetooth: Fix hci_suspend_sync crash + - Bluetooth: btusb: Add support for another MediaTek 7922 VID/PID + - netlink: convert nlk->flags to atomic flags + - tpm_tis: Resend command to recover from data transfer errors + - mmc: sdhci-esdhc-imx: improve ESDHC_FLAG_ERR010450 + - alx: fix OOB-read compiler warning + - wifi: iwlwifi: pcie: avoid a warning in case prepare card failed + - wifi: mac80211: check S1G action frame size + - netfilter: ebtables: fix fortify warnings in size_entry_mwt() + - wifi: cfg80211: reject auth/assoc to AP with our address + - wifi: cfg80211: ocb: don't leave if not joined + - wifi: mac80211: check for station first in client probe + - wifi: mac80211_hwsim: drop short frames + - Revert "wifi: mac80211_hwsim: check the return value of nla_put_u32" + - libbpf: Free btf_vmlinux when closing bpf_object + - wifi: ath12k: Fix memory leak in rx_desc and tx_desc + - wifi: ath12k: add check max message length while scanning with extraie + - Fix nomenclature for USB and PCI wireless devices + - bpf: Consider non-owning refs trusted + - bpf: Consider non-owning refs to refcounted nodes RCU protected + - drm/bridge: tc358762: Instruct DSI host to generate HSE packets + - drm/edid: Add quirk for OSVR HDK 2.0 + - drm: bridge: samsung-dsim: Drain command transfer FIFO before transfer + - arm64: dts: qcom: sm6125-pdx201: correct ramoops pmsg-size + - arm64: dts: qcom: sm6125-sprout: correct ramoops pmsg-size + - arm64: dts: qcom: sm6350: correct ramoops pmsg-size + - arm64: dts: qcom: sm8150-kumano: correct ramoops pmsg-size + - arm64: dts: qcom: sm8250-edo: correct ramoops pmsg-size + - drm/amdgpu: Increase soft IH ring size + - samples/hw_breakpoint: Fix kernel BUG 'invalid opcode: 0000' + - drm/amdgpu: Update ring scheduler info as needed + - drm/amd/display: Fix underflow issue on 175hz timing + - ASoC: SOF: topology: simplify code to prevent static analysis warnings + - ASoC: Intel: sof_sdw: Update BT offload config for soundwire config + - ALSA: hda: intel-dsp-cfg: add LunarLake support + - drm/amd/display: Use DTBCLK as refclk instead of DPREFCLK + - drm/amd/display: Blocking invalid 420 modes on HDMI TMDS for DCN31 + - drm/amd/display: Blocking invalid 420 modes on HDMI TMDS for DCN314 + - drm/amd/display: Use max memclk variable when setting max memclk + - drm/msm/adreno: Use quirk identify hw_apriv + - drm/msm/adreno: Use quirk to identify cached-coherent support + - drm/exynos: fix a possible null-pointer dereference due to data race in + exynos_drm_crtc_atomic_disable() + - io_uring: annotate the struct io_kiocb slab for appropriate user copy + - drm/mediatek: dp: Change logging to dev for mtk_dp_aux_transfer() + - bus: ti-sysc: Configure uart quirks for k3 SoC + - arm64: dts: qcom: sc8280xp-x13s: Add camera activity LED + - md: raid1: fix potential OOB in raid1_remove_disk() + - ext2: fix datatype of block number in ext2_xattr_set2() + - blk-mq: fix tags leak when shrink nr_hw_queues + - ASoC: SOF: amd: clear panic mask status when panic occurs + - x86: bring back rep movsq for user access on CPUs without ERMS + - fs/jfs: prevent double-free in dbUnmount() after failed jfs_remount() + - jfs: fix invalid free of JFS_IP(ipimap)->i_imap in diUnmount + - ext4: add two helper functions extent_logical_end() and pa_logical_end() + - ext4: avoid overlapping preallocations due to overflow + - PCI: dwc: Provide deinit callback for i.MX + - ARM: 9317/1: kexec: Make smp stop calls asynchronous + - powerpc/pseries: fix possible memory leak in ibmebus_bus_init() + - PCI: vmd: Disable bridge window for domain reset + - PCI: fu740: Set the number of MSI vectors + - media: mdp3: Fix resource leaks in of_find_device_by_node + - media: dvb-usb-v2: af9035: Fix null-ptr-deref in af9035_i2c_master_xfer + - media: dw2102: Fix null-ptr-deref in dw2102_i2c_transfer() + - media: af9005: Fix null-ptr-deref in af9005_i2c_xfer + - media: anysee: fix null-ptr-deref in anysee_master_xfer + - media: az6007: Fix null-ptr-deref in az6007_i2c_xfer() + - media: dvb-usb-v2: gl861: Fix null-ptr-deref in gl861_i2c_master_xfer + - scsi: lpfc: Abort outstanding ELS cmds when mailbox timeout error is + detected + - media: tuners: qt1010: replace BUG_ON with a regular error + - media: pci: cx23885: replace BUG with error return + - usb: cdns3: Put the cdns set active part outside the spin lock + - usb: typec: intel_pmc_mux: Add new ACPI ID for Lunar Lake IOM device + - usb: gadget: fsl_qe_udc: validate endpoint index for ch9 udc + - tools: iio: iio_generic_buffer: Fix some integer type and calculation + - scsi: target: iscsi: Fix buffer overflow in lio_target_nacl_info_show() + - serial: cpm_uart: Avoid suspicious locking + - misc: open-dice: make OPEN_DICE depend on HAS_IOMEM + - usb: dwc3: dwc3-octeon: Verify clock divider + - usb: ehci: add workaround for chipidea PORTSC.PEC bug + - usb: chipidea: add workaround for chipidea PEC bug + - media: pci: ipu3-cio2: Initialise timing struct to avoid a compiler warning + - kobject: Add sanity check for kset->kobj.ktype in kset_register() + - interconnect: Fix locking for runpm vs reclaim + - usb: typec: qcom-pmic-typec: register drm_bridge + - printk: Reduce console_unblank() usage in unsafe scenarios + - printk: Keep non-panic-CPUs out of console lock + - printk: Do not take console lock for console_flush_on_panic() + - printk: Consolidate console deferred printing + - printk: Rename abandon_console_lock_in_panic() to other_cpu_in_panic() + - ext4: fix BUG in ext4_mb_new_inode_pa() due to overflow + - btrfs: introduce struct to consolidate extent buffer write context + - btrfs: zoned: introduce block group context to btrfs_eb_write_context + - btrfs: zoned: return int from btrfs_check_meta_write_pointer + - btrfs: zoned: defer advancing meta write pointer + - btrfs: zoned: activate metadata block group on write time + - mtd: spi-nor: spansion: use CLPEF as an alternative to CLSR + - mtd: spi-nor: spansion: preserve CFR2V[7] when writing MEMLAT + - btrfs: add a helper to read the superblock metadata_uuid + - btrfs: compare the correct fsid/metadata_uuid in btrfs_validate_super + - nvmet-tcp: pass iov_len instead of sg->length to bvec_set_page() + - drm: gm12u320: Fix the timeout usage for usb_bulk_msg() + - scsi: qla2xxx: Fix NULL vs IS_ERR() bug for debugfs_create_dir() + - md: don't dereference mddev after export_rdev() + - md: fix warning for holder mismatch from export_rdev() + - efivarfs: fix statfs() on efivarfs + - PM: hibernate: Fix the exclusive get block device in test_resume mode + - selftests: tracing: Fix to unmount tracefs for recovering environment + - x86/ibt: Suppress spurious ENDBR + - x86/ibt: Avoid duplicate ENDBR in __put_user_nocheck*() + - riscv: kexec: Align the kexeced kernel entry + - x86/sched: Restore the SD_ASYM_PACKING flag in the DIE domain + - scsi: target: core: Fix target_cmd_counter leak + - scsi: lpfc: Fix the NULL vs IS_ERR() bug for debugfs_create_file() + - panic: Reenable preemption in WARN slowpath + - ata: libata-core: fetch sense data for successful commands iff CDL enabled + - x86/boot/compressed: Reserve more memory for page tables + - x86/purgatory: Remove LTO flags + - samples/hw_breakpoint: fix building without module unloading + - blk-mq: prealloc tags when increase tagset nr_hw_queues + - blk-mq: fix tags UAF when shrinking q->nr_hw_queues + - md/raid1: fix error: ISO C90 forbids mixed declarations + - Revert "SUNRPC: Fail faster on bad verifier" + - attr: block mode changes of symlinks + - ovl: fix failed copyup of fileattr on a symlink + - ovl: fix incorrect fdput() on aio completion + - io_uring/net: fix iter retargeting for selected buf + - x86/platform/uv: Use alternate source for socket to node data + - Revert "firewire: core: obsolete usage of GFP_ATOMIC at building node tree" + - drm/amd: Make fence wait in suballocator uninterruptible + - Revert "drm/amd: Disable S/G for APUs when 64GB or more host memory" + - dm: don't attempt to queue IO under RCU protection + - dm: fix a race condition in retrieve_deps + - btrfs: fix lockdep splat and potential deadlock after failure running + delayed items + - btrfs: fix a compilation error if DEBUG is defined in btree_dirty_folio + - btrfs: fix race between finishing block group creation and its item update + - btrfs: release path before inode lookup during the ino lookup ioctl + - btrfs: check for BTRFS_FS_ERROR in pending ordered assert + - tracing/synthetic: Fix order of struct trace_dynamic_info + - tracing: Have tracing_max_latency inc the trace array ref count + - tracing: Have event inject files inc the trace array ref count + - tracing/synthetic: Print out u64 values properly + - tracing: Increase trace array ref count on enable and filter files + - tracing: Have current_trace inc the trace array ref count + - tracing: Have option files inc the trace array ref count + - selinux: fix handling of empty opts in selinux_fs_context_submount() + - nfsd: fix change_info in NFSv4 RENAME replies + - tracefs: Add missing lockdown check to tracefs_create_dir() + - i2c: aspeed: Reset the i2c controller when timeout occurs + - ata: libata: disallow dev-initiated LPM transitions to unsupported states + - ata: libahci: clear pending interrupt status + - scsi: megaraid_sas: Fix deadlock on firmware crashdump + - scsi: qla2xxx: Use raw_smp_processor_id() instead of smp_processor_id() + - scsi: pm8001: Setup IRQs on resume + - Revert "comedi: add HAS_IOPORT dependencies" + - [Config] updateconfigs for COMEDI/HAS_IOPORT deps + - ext4: fix rec_len verify error + - drm/radeon: make fence wait in suballocator uninterrruptable + - drm/i915: Only check eDP HPD when AUX CH is shared + - drm/amdkfd: Insert missing TLB flush on GFX10 and later + - drm/tests: helpers: Avoid a driver uaf + - drm/amd/display: Adjust the MST resume flow + - drm/amd/display: fix the white screen issue when >= 64GB DRAM + - drm/amd/display: Add DPIA Link Encoder Assignment Fix + - drm/amd/display: Fix 2nd DPIA encoder Assignment + - Revert "memcg: drop kmem.limit_in_bytes" + - drm/amdgpu: fix amdgpu_cs_p1_user_fence + - interconnect: Teach lockdep about icc_bw_lock order + - x86/alternatives: Remove faulty optimization + - x86,static_call: Fix static-call vs return-thunk + - Linux 6.5.5 + * Could not probe Samsung P44 30S3 PM9C1a SSD correctly: nvme nvme0: Device + not ready: aborting installation, CSTS=0x0 (LP: #2041495) // Mantic update: + v6.5.5 upstream stable release (LP: #2043416) + - nvme: avoid bogus CRTO values + * Mantic update: v6.5.4 upstream stable release (LP: #2041999) + - net/ipv6: SKB symmetric hash should incorporate transport ports + - drm/virtio: Conditionally allocate virtio_gpu_fence + - scsi: ufs: core: Add advanced RPMB support where UFSHCI 4.0 does not support + EHS length in UTRD + - scsi: qla2xxx: Adjust IOCB resource on qpair create + - scsi: qla2xxx: Limit TMF to 8 per function + - scsi: qla2xxx: Fix deletion race condition + - scsi: qla2xxx: fix inconsistent TMF timeout + - scsi: qla2xxx: Fix command flush during TMF + - scsi: qla2xxx: Fix erroneous link up failure + - scsi: qla2xxx: Turn off noisy message log + - scsi: qla2xxx: Fix session hang in gnl + - scsi: qla2xxx: Fix TMF leak through + - scsi: qla2xxx: Remove unsupported ql2xenabledif option + - scsi: qla2xxx: Flush mailbox commands on chip reset + - scsi: qla2xxx: Fix smatch warn for qla_init_iocb_limit() + - scsi: qla2xxx: Error code did not return to upper layer + - scsi: qla2xxx: Fix firmware resource tracking + - null_blk: fix poll request timeout handling + - kernfs: fix missing kernfs_iattr_rwsem locking + - fbdev/ep93xx-fb: Do not assign to struct fb_info.dev + - clk: qcom: camcc-sc7180: fix async resume during probe + - drm/ast: Fix DRAM init on AST2200 + - ASoC: tegra: Fix SFC conversion for few rates + - ARM: dts: samsung: exynos4210-i9100: Fix LCD screen's physical size + - arm64: tegra: Update AHUB clock parent and rate on Tegra234 + - arm64: tegra: Update AHUB clock parent and rate + - clk: qcom: turingcc-qcs404: fix missing resume during probe + - ARM: dts: qcom: msm8974pro-castor: correct inverted X of touchscreen + - arm64: dts: qcom: msm8953-vince: drop duplicated touschreen parent interrupt + - ARM: dts: qcom: msm8974pro-castor: correct touchscreen function names + - ARM: dts: qcom: msm8974pro-castor: correct touchscreen syna,nosleep-mode + - arm64: dts: renesas: rzg2l: Fix txdv-skew-psec typos + - ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2 + - send channel sequence number in SMB3 requests after reconnects + - memcg: drop kmem.limit_in_bytes + - mm: hugetlb_vmemmap: fix a race between vmemmap pmd split + - lib/test_meminit: allocate pages up to order MAX_ORDER + - Multi-gen LRU: avoid race in inc_min_seq() + - parisc: led: Fix LAN receive and transmit LEDs + - parisc: led: Reduce CPU overhead for disk & lan LED computation + - cifs: update desired access while requesting for directory lease + - pinctrl: cherryview: fix address_space_handler() argument + - dt-bindings: clock: xlnx,versal-clk: drop select:false + - clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz + - clk: imx: pll14xx: align pdiv with reference manual + - clk: qcom: gcc-mdm9615: use proper parent for pll0_vote clock + - soc: qcom: qmi_encdec: Restrict string length in decode + - clk: qcom: dispcc-sm8450: fix runtime PM imbalance on probe errors + - clk: qcom: dispcc-sm8550: fix runtime PM imbalance on probe errors + - clk: qcom: lpasscc-sc7280: fix missing resume during probe + - clk: qcom: q6sstop-qcs404: fix missing resume during probe + - clk: qcom: mss-sc7180: fix missing resume during probe + - NFS: Fix a potential data corruption + - NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info + - bus: mhi: host: Skip MHI reset if device is in RDDM + - kbuild: rpm-pkg: define _arch conditionally + - kbuild: do not run depmod for 'make modules_sign' + - kbuild: dummy-tools: make MPROFILE_KERNEL checks work on BE + - tpm_crb: Fix an error handling path in crb_acpi_add() + - gfs2: Switch to wait_event in gfs2_logd + - gfs2: low-memory forced flush fixes + - mailbox: qcom-ipcc: fix incorrect num_chans counting + - kconfig: fix possible buffer overflow + - tools/mm: fix undefined reference to pthread_once + - Input: iqs7222 - configure power mode before triggering ATI + - perf trace: Really free the evsel->priv area + - pwm: atmel-tcb: Harmonize resource allocation order + - pwm: atmel-tcb: Fix resource freeing in error path and remove + - backlight: lp855x: Initialize PWM state on first brightness change + - backlight: gpio_backlight: Drop output GPIO direction check for initial + power state + - perf parse-events: Separate YYABORT and YYNOMEM cases + - perf parse-events: Move instances of YYABORT to YYNOMEM + - perf parse-events: Separate ENOMEM memory handling + - perf parse-events: Additional error reporting + - KVM: SVM: Don't defer NMI unblocking until next exit for SEV-ES guests + - Input: tca6416-keypad - always expect proper IRQ number in i2c client + - Input: tca6416-keypad - fix interrupt enable disbalance + - perf annotate bpf: Don't enclose non-debug code with an assert() + - x86/virt: Drop unnecessary check on extended CPUID level in cpu_has_svm() + - perf script: Print "cgroup" field on the same line as "comm" + - perf bpf-filter: Fix sample flag check with || + - perf dlfilter: Initialize addr_location before passing it to + thread__find_symbol_fb() + - perf dlfilter: Add al_cleanup() + - perf vendor events: Update the JSON/events descriptions for power10 platform + - perf vendor events: Drop some of the JSON/events for power10 platform + - perf vendor events: Drop STORES_PER_INST metric event for power10 platform + - perf vendor events: Move JSON/events to appropriate files for power10 + platform + - perf vendor events: Update metric event names for power10 platform + - perf top: Don't pass an ERR_PTR() directly to perf_session__delete() + - perf lock: Don't pass an ERR_PTR() directly to perf_session__delete() + - watchdog: intel-mid_wdt: add MODULE_ALIAS() to allow auto-load + - perf vendor events arm64: Remove L1D_CACHE_LMISS from AmpereOne list + - pwm: lpc32xx: Remove handling of PWM channels + - accel/ivpu: refactor deprecated strncpy + - perf header: Fix missing PMU caps + - i3c: master: svc: Describe member 'saved_regs' + - perf test stat_bpf_counters_cgrp: Fix shellcheck issue about logical + operators + - perf test stat_bpf_counters_cgrp: Enhance perf stat cgroup BPF counter test + - regulator: tps6287x: Fix n_voltages + - selftests/bpf: Fix flaky cgroup_iter_sleepable subtest + - drm/i915: mark requests for GuC virtual engines to avoid use-after-free + - blk-throttle: use calculate_io/bytes_allowed() for throtl_trim_slice() + - blk-throttle: consider 'carryover_ios/bytes' in throtl_trim_slice() + - netfilter: nf_tables: Audit log setelem reset + - netfilter: nf_tables: Audit log rule reset + - smb: propagate error code of extract_sharename() + - net/sched: fq_pie: avoid stalls in fq_pie_timer() + - sctp: annotate data-races around sk->sk_wmem_queued + - ipv4: annotate data-races around fi->fib_dead + - net: read sk->sk_family once in sk_mc_loop() + - net: fib: avoid warn splat in flow dissector + - xsk: Fix xsk_diag use-after-free error during socket cleanup + - drm/i915/gvt: Verify pfn is "valid" before dereferencing "struct page" + - drm/i915/gvt: Put the page reference obtained by KVM's gfn_to_pfn() + - drm/i915/gvt: Drop unused helper intel_vgpu_reset_gtt() + - drm/amd/display: fix mode scaling (RMX_.*) + - net/handshake: fix null-ptr-deref in handshake_nl_done_doit() + - net: use sk_forward_alloc_get() in sk_get_meminfo() + - net: annotate data-races around sk->sk_forward_alloc + - mptcp: annotate data-races around msk->rmem_fwd_alloc + - net: annotate data-races around sk->sk_tsflags + - net: annotate data-races around sk->sk_bind_phc + - ipv4: ignore dst hint for multipath routes + - ipv6: ignore dst hint for multipath routes + - selftests/bpf: Fix a CI failure caused by vsock write + - igb: disable virtualization features on 82580 + - gve: fix frag_list chaining + - veth: Fixing transmit return status for dropped packets + - net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr + - net: phy: micrel: Correct bit assignments for phy_device flags + - bpf, sockmap: Fix skb refcnt race after locking changes + - af_unix: Fix msg_controllen test in scm_pidfd_recv() for MSG_CMSG_COMPAT. + - af_unix: Fix data-races around user->unix_inflight. + - af_unix: Fix data-race around unix_tot_inflight. + - af_unix: Fix data-races around sk->sk_shutdown. + - af_unix: Fix data race around sk->sk_err. + - kcm: Destroy mutex in kcm_exit_net() + - octeontx2-af: Fix truncation of smq in CN10K NIX AQ enqueue mbox handler + - igc: Change IGC_MIN to allow set rx/tx value between 64 and 80 + - igbvf: Change IGBVF_MIN to allow set rx/tx value between 64 and 80 + - igb: Change IGB_MIN to allow set rx/tx value between 64 and 80 + - s390/zcrypt: don't leak memory if dev_set_name() fails + - regulator: tps6594-regulator: Fix random kernel crash + - idr: fix param name in idr_alloc_cyclic() doc + - ip_tunnels: use DEV_STATS_INC() + - net/mlx5e: Clear mirred devices array if the rule is split + - net/mlx5: Give esw_offloads_load/unload_rep() "mlx5_" prefix + - net/mlx5: Rework devlink port alloc/free into init/cleanup + - net/mlx5: Push devlink port PF/VF init/cleanup calls out of + devlink_port_register/unregister() + - mlx5/core: E-Switch, Create ACL FT for eswitch manager in switchdev mode + - net: dsa: sja1105: fix bandwidth discrepancy between tc-cbs software and + offload + - net: dsa: sja1105: fix -ENOSPC when replacing the same tc-cbs too many times + - net: dsa: sja1105: complete tc-cbs offload support on SJA1110 + - net: phylink: fix sphinx complaint about invalid literal + - bpf: Invoke __bpf_prog_exit_sleepable_recur() on recursion in + kern_sys_bpf(). + - bpf: Assign bpf_tramp_run_ctx::saved_run_ctx before recursion check. + - s390/bpf: Pass through tail call counter in trampolines + - bpf: bpf_sk_storage: Fix invalid wait context lockdep report + - bpf: bpf_sk_storage: Fix the missing uncharge in sk_omem_alloc + - netfilter: nf_tables: Unbreak audit log reset + - net: phy: Provide Module 4 KSZ9477 errata (DS80000754C) + - net: hns3: fix tx timeout issue + - net: hns3: fix byte order conversion issue in hclge_dbg_fd_tcam_read() + - net: hns3: fix debugfs concurrency issue between kfree buffer and read + - net: hns3: fix invalid mutex between tc qdisc and dcb ets command issue + - net: hns3: fix the port information display when sfp is absent + - net: hns3: remove GSO partial feature bit + - net: enetc: distinguish error from valid pointers in + enetc_fixup_clear_rss_rfs() + - sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory() + - sh: push-switch: Reorder cleanup operations to avoid use-after-free bug + - linux/export: fix reference to exported functions for parisc64 + - watchdog: advantech_ec_wdt: fix Kconfig dependencies + - drm/amd/display: Temporary Disable MST DP Colorspace Property + - ARC: atomics: Add compiler barrier to atomic operations... + - clocksource/drivers/arm_arch_timer: Disable timer before programming CVAL + - dmaengine: sh: rz-dmac: Fix destination and source data size setting + - misc: fastrpc: Fix remote heap allocation request + - misc: fastrpc: Fix incorrect DMA mapping unmap request + - jbd2: fix checkpoint cleanup performance regression + - jbd2: check 'jh->b_transaction' before removing it from checkpoint + - jbd2: correct the end of the journal recovery scan range + - ext4: add correct group descriptors and reserved GDT blocks to system zone + - ext4: fix memory leaks in ext4_fname_{setup_filename,prepare_lookup} + - ext4: drop dio overwrite only flag and associated warning + - f2fs: get out of a repeat loop when getting a locked data page + - f2fs: flush inode if atomic file is aborted + - f2fs: avoid false alarm of circular locking + - lib: test_scanf: Add explicit type cast to result initialization in + test_number_prefix() + - hwspinlock: qcom: add missing regmap config for SFPB MMIO implementation + - memcontrol: ensure memcg acquired by id is properly set up + - ata: ahci: Add Elkhart Lake AHCI controller + - ata: pata_falcon: fix IO base selection for Q40 + - ata: sata_gemini: Add missing MODULE_DESCRIPTION + - ata: pata_ftide010: Add missing MODULE_DESCRIPTION + - fuse: nlookup missing decrement in fuse_direntplus_link + - btrfs: zoned: do not zone finish data relocation block group + - btrfs: fix start transaction qgroup rsv double free + - btrfs: free qgroup rsv on io failure + - btrfs: don't start transaction when joining with TRANS_JOIN_NOSTART + - btrfs: set page extent mapped after read_folio in relocate_one_page + - btrfs: zoned: re-enable metadata over-commit for zoned mode + - btrfs: use the correct superblock to compare fsid in btrfs_validate_super + - btrfs: scrub: avoid unnecessary extent tree search preparing stripes + - btrfs: scrub: avoid unnecessary csum tree search preparing stripes + - btrfs: scrub: fix grouping of read IO + - drm/mxsfb: Disable overlay plane in mxsfb_plane_overlay_atomic_disable() + - mtd: rawnand: brcmnand: Fix crash during the panic_write + - mtd: rawnand: brcmnand: Fix potential out-of-bounds access in oob write + - mtd: spi-nor: Correct flags for Winbond w25q128 + - mtd: rawnand: brcmnand: Fix potential false time out warning + - mtd: rawnand: brcmnand: Fix ECC level field setting for v7.2 controller + - Revert "drm/amd/display: Remove v_startup workaround for dcn3+" + - drm/amd/display: enable cursor degamma for DCN3+ DRM legacy gamma + - drm/amd/display: limit the v_startup workaround to ASICs older than DCN3.1 + - drm/amd/display: prevent potential division by zero errors + - KVM: VMX: Refresh available regs and IDT vectoring info before NMI handling + - KVM: SVM: Take and hold ir_list_lock when updating vCPU's Physical ID entry + - KVM: SVM: Don't inject #UD if KVM attempts to skip SEV guest insn + - KVM: SVM: Get source vCPUs from source VM for SEV-ES intrahost migration + - KVM: nSVM: Check instead of asserting on nested TSC scaling support + - KVM: nSVM: Load L1's TSC multiplier based on L1 state, not L2 state + - KVM: SVM: Set target pCPU during IRTE update if target vCPU is running + - KVM: SVM: Skip VMSA init in sev_es_init_vmcb() if pointer is NULL + - MIPS: Only fiddle with CHECKFLAGS if `need-compiler' + - MIPS: Fix CONFIG_CPU_DADDI_WORKAROUNDS `modules_install' regression + - perf hists browser: Fix hierarchy mode header + - perf build: Update build rule for generated files + - perf test shell stat_bpf_counters: Fix test on Intel + - perf tools: Handle old data in PERF_RECORD_ATTR + - perf build: Include generated header files properly + - perf hists browser: Fix the number of entries for 'e' key + - drm/amd/display: always switch off ODM before committing more streams + - drm/amd/display: Remove wait while locked + - drm/amdkfd: Add missing gfx11 MQD manager callbacks + - drm/amdgpu: register a dirty framebuffer callback for fbcon + - bpf: fix bpf_probe_read_kernel prototype mismatch + - regulator: raa215300: Change the scope of the variables {clkin_name, + xin_name} + - regulator: raa215300: Fix resource leak in case of error + - parisc: sba_iommu: Fix build warning if procfs if disabled + - kunit: Fix wild-memory-access bug in kunit_free_suite_set() + - net: ipv4: fix one memleak in __inet_del_ifa() + - kselftest/runner.sh: Propagate SIGTERM to runner child + - selftests: Keep symlinks, when possible + - selftests/ftrace: Fix dependencies for some of the synthetic event tests + - net: microchip: vcap api: Fix possible memory leak for vcap_dup_rule() + - octeontx2-pf: Fix page pool cache index corruption. + - net/smc: use smc_lgr_list.lock to protect smc_lgr_list.list iterate in + smcr_port_add + - net: stmmac: fix handling of zero coalescing tx-usecs + - net: ethernet: mvpp2_main: fix possible OOB write in + mvpp2_ethtool_get_rxnfc() + - net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in + mtk_hwlro_get_fdir_all() + - hsr: Fix uninit-value access in fill_frame_info() + - net: ethernet: adi: adin1110: use eth_broadcast_addr() to assign broadcast + address + - net:ethernet:adi:adin1110: Fix forwarding offload + - net: dsa: sja1105: hide all multicast addresses from "bridge fdb show" + - net: dsa: sja1105: propagate exact error code from + sja1105_dynamic_config_poll_valid() + - net: dsa: sja1105: fix multicast forwarding working only for last added mdb + entry + - net: dsa: sja1105: serialize sja1105_port_mcast_flood() with other FDB + accesses + - net: dsa: sja1105: block FDB accesses that are concurrent with a switch + reset + - r8152: check budget for r8152_poll() + - kcm: Fix memory leak in error path of kcm_sendmsg() + - platform/mellanox: mlxbf-tmfifo: Drop the Rx packet if no more descriptors + - platform/mellanox: mlxbf-tmfifo: Drop jumbo frames + - platform/mellanox: mlxbf-pmc: Fix potential buffer overflows + - platform/mellanox: mlxbf-pmc: Fix reading of unprogrammed events + - platform/mellanox: NVSW_SN2201 should depend on ACPI + - [Config] updateconfigs for NVSW_SN2201 + - net: macb: fix sleep inside spinlock + - veth: Update XDP feature set when bringing up device + - ipv6: fix ip6_sock_set_addr_preferences() typo + - tcp: Factorise sk_family-independent comparison in + inet_bind2_bucket_match(_addr_any). + - tcp: Fix bind() regression for v4-mapped-v6 wildcard address. + - tcp: Fix bind() regression for v4-mapped-v6 non-wildcard address. + - selftest: tcp: Fix address length in bind_wildcard.c. + - ixgbe: fix timestamp configuration code + - igb: clean up in all error paths when enabling SR-IOV + - net: renesas: rswitch: Fix unmasking irq condition + - kcm: Fix error handling for SOCK_DGRAM in kcm_sendmsg(). + - vm: fix move_vma() memory accounting being off + - drm/amd/display: Fix a bug when searching for insert_above_mpcc + - Linux 6.5.4 + * CVE-2023-6176 + - net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict() + + -- Philip Cox Tue, 23 Jan 2024 15:06:38 -0500 + +linux-intel-opt (6.5.0-1005.7) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1005.7 -proposed tracker (LP: #2046350) + + * Packaging resync (LP: #1786013) + - [Packaging] remove helper scripts + + * [TDX] Add patches to support TD Guest on VMware ESXi (LP: #2046010) + - (UBUNTU: SAUCE) x86/vmware: Move common macros to vmware.h + - (UBUNTU: SAUCE) x86/vmware: Introduce vmware_hypercall API + - (UBUNTU: SAUCE) ptp/vmware: Use vmware_hypercall API + - (UBUNTU: SAUCE) input/vmmouse: Use vmware_hypercall API + - (UBUNTU: SAUCE) drm/vmwgfx: Use vmware_hypercall API + - (UBUNTU: SAUCE) x86/vmware: Add TDX hypercall support + + -- Philip Cox Wed, 13 Dec 2023 09:18:27 -0500 + +linux-intel-opt (6.5.0-1004.6) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1004.6 -proposed tracker (LP: #2045971) + + * "perf kvm stat" doesn't work (LP: #2037380) + - [Packaging] intel-opt: Add libtraceevent-dev + + -- Philip Cox Fri, 08 Dec 2023 07:17:14 -0500 + +linux-intel-opt (6.5.0-1004.5) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1004.5 -proposed tracker (LP: #2045762) + + -- Philip Cox Wed, 06 Dec 2023 09:32:13 -0500 + +linux-intel-opt (6.5.0-1004.4) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1004.4 -proposed tracker (LP: #2043727) + + * disable shiftfs (LP: #2038522) + - [Config] disable shiftfs + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] resync update-dkms-versions helper + - debian/dkms-versions -- update from kernel-versions (main/d2023.11.09) + + * [TDX] enable kvm_intel.tdx by default (LP: #2043725) + - sauce: (no-up) enable tdx by default + + * "perf kvm stat" doesn't work (LP: #2037380) + - [Packaging] linux-intel-opt: perf: build with libtraceevent + + * move tdx-guest.ko to linux-modules package (LP: #2042354) + - [Packaging] m:intel-opt: Include tdx-guest.ko in modules package + + * move vmd.ko to linux-modules package (LP: #2042355) + - [Packaging] m:intel-opt: Include vmd.ko in modules package + + * Kernel config CONFIG_AMD_MEM_ENCRYPT changes the size of SWIOTLB (LP: #2036758) + - x86/sev: Move sev_setup_arch() to mem_encrypt.c + + [ Ubuntu: 6.5.0-14.14 ] + + * mantic/linux: 6.5.0-14.14 -proposed tracker (LP: #2042660) + * Boot log print hang on screen, no login prompt on Aspeed 2600 rev 52 BMC + (LP: #2042850) + - drm/ast: Add BMC virtual connector + * arm64 atomic issues cause disk corruption (LP: #2042573) + - locking/atomic: scripts: fix fallback ifdeffery + * Packaging resync (LP: #1786013) + - [Packaging] update annotations scripts + + [ Ubuntu: 6.5.0-12.12 ] + + * mantic/linux: 6.5.0-12.12 -proposed tracker (LP: #2041536) + * Packaging resync (LP: #1786013) + - [Packaging] update annotations scripts + - [Packaging] update helper scripts + - debian/dkms-versions -- update from kernel-versions (main/2023.10.30) + * CVE-2023-5633 + - drm/vmwgfx: Keep a gem reference to user bos in surfaces + * CVE-2023-5345 + - fs/smb/client: Reset password pointer to NULL + * CVE-2023-39189 + - netfilter: nfnetlink_osf: avoid OOB read + * CVE-2023-4244 + - netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction + * apparmor restricts read access of user namespace mediation sysctls to root + (LP: #2040194) + - SAUCE: apparmor: open userns related sysctl so lxc can check if restriction + are in place + * AppArmor spams kernel log with assert when auditing (LP: #2040192) + - SAUCE: apparmor: fix request field from a prompt reply that denies all + access + * apparmor notification files verification (LP: #2040250) + - SAUCE: apparmor: fix notification header size + * apparmor oops when racing to retrieve a notification (LP: #2040245) + - SAUCE: apparmor: fix oops when racing to retrieve notification + * SMC stats: Wrong bucket calculation for payload of exactly 4096 bytes + (LP: #2039575) + - net/smc: Fix pos miscalculation in statistics + * Support mipi camera on Intel Meteor Lake platform (LP: #2031412) + - SAUCE: iommu: intel-ipu: use IOMMU passthrough mode for Intel IPUs on Meteor + Lake + - SAUCE: platform/x86: int3472: Add handshake GPIO function + * CVE-2023-45898 + - ext4: fix slab-use-after-free in ext4_es_insert_extent() + * CVE-2023-31085 + - ubi: Refuse attaching if mtd's erasesize is 0 + * CVE-2023-5717 + - perf: Disallow mis-matched inherited group reads + * CVE-2023-5178 + - nvmet-tcp: Fix a possible UAF in queue intialization setup + * CVE-2023-5158 + - vringh: don't use vringh_kiov_advance() in vringh_iov_xfer() + * CVE-2023-5090 + - x86: KVM: SVM: always update the x2avic msr interception + * [SRU][J/L/M] UBUNTU: [Packaging] Make WWAN driver a loadable module + (LP: #2033406) + - [Packaging] Make WWAN driver loadable modules + * Unable to power off the system with MTL CPU (LP: #2039405) + - Revert "x86/smp: Put CPUs into INIT on shutdown if possible" + * usbip: error: failed to open /usr/share/hwdata//usb.ids (LP: #2039439) + - [Packaging] Make linux-tools-common depend on hwdata + * drop all references to is_rust_module.sh in kernels >= 6.5 (LP: #2038611) + - [Packaging] drop references to is_rust_module.sh + * disable shiftfs (LP: #2038522) + - SAUCE: ceph: enable unsafe idmapped mounts by default + - [Config] disable shiftfs + * Infinite systemd loop when power off the machine with multiple MD RAIDs + (LP: #2036184) + - md: Put the right device in md_seq_next + * [Mediatek] mt8195-demo: enable CONFIG_MTK_IOMMU as module for multimedia and + PCIE peripherals (LP: #2036587) + - [Config] Enable CONFIG_MTK_IOMMU on arm64 + * Realtek 8852CE WiFi 6E country code udpates (LP: #2037273) + - wifi: rtw89: regd: update regulatory map to R64-R43 + * Unable to use nvme drive to install Ubuntu 23.10 (LP: #2040157) + - misc: rtsx: Fix some platforms can not boot and move the l1ss judgment to + probe + * CVE-2023-42754 + - ipv4: fix null-deref in ipv4_link_failure + * linux-*: please enable dm-verity kconfigs to allow MoK/db verified root + images (LP: #2019040) + - [Config] CONFIG_DM_VERITY_VERIFY_ROOTHASH_SIG_SECONDARY_KEYRING=y + * Fix RCU warning on AMD laptops (LP: #2036377) + - power: supply: core: Use blocking_notifier_call_chain to avoid RCU complaint + * allow io_uring to be disabled in runtime (LP: #2035116) + - io_uring: add a sysctl to disable io_uring system-wide + * Fix unstable audio at low levels on Thinkpad P1G4 (LP: #2037077) + - ALSA: hda/realtek - ALC287 I2S speaker platform support + + -- Philip Cox Mon, 20 Nov 2023 12:37:58 -0500 + +linux-intel-opt (6.5.0-1003.3) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1003.3 -proposed tracker (LP: #2039874) + + * [TDX] Add TDX patches m:linux-intel-opt kernel (LP: #2037126) + + - [Config] intel-opt: Enable TDX guest options + - [Config] intel-opt: updated configs + + -- Philip Cox Thu, 19 Oct 2023 15:05:10 -0400 + +linux-intel-opt (6.5.0-1002.2) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1002.2 -proposed tracker (LP: #2039450) + + * Packaging resync (LP: #1786013) + - [Packaging] remove arm64 references + + [ Ubuntu: 6.5.0-10.10 ] + + * mantic/linux: 6.5.0-10.10 -proposed tracker (LP: #2039204) + * CVE-2023-4921 + - net: sched: sch_qfq: Fix UAF in qfq_dequeue() + * CVE-2023-42756 + - netfilter: ipset: Fix race between IPSET_CMD_CREATE and IPSET_CMD_SWAP + * CVE-2023-4881 + - netfilter: nftables: exthdr: fix 4-byte stack OOB write + * CVE-2023-5197 + - netfilter: nf_tables: disallow rule removal from chain binding + + [ Ubuntu: 6.5.0-9.9 ] + + * mantic/linux: 6.5.0-9.9 -proposed tracker (LP: #2038687) + * update apparmor and LSM stacking patch set (LP: #2028253) + - re-apply apparmor 4.0.0 + * Disable restricting unprivileged change_profile by default, due to LXD + latest/stable not yet compatible with this new apparmor feature + (LP: #2038567) + - SAUCE: apparmor: Make apparmor_restrict_unprivileged_unconfined opt-in + + -- Philip Cox Mon, 16 Oct 2023 10:18:52 -0400 + +linux-intel-opt (6.5.0-1001.1) mantic; urgency=medium + + * mantic/linux-intel-opt: 6.5.0-1001.1 -proposed tracker (LP: #2038563) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - [Packaging] update helper scripts + - [Packaging] update update.conf + - debian/dkms-versions -- update from kernel-versions (main/d2023.09.27) + + * [TDX] Add TDX patches m:linux-intel-opt kernel (LP: #2037126) + - SAUCE: virt: tdx-guest: Add RTMR update interface + - SAUCE: selftests/tdx: Test RTMR update feature + - SAUCE: KVM: Wrap kvm_gfn_range.pte in a per-action union + - SAUCE: KVM: Tweak kvm_hva_range and hva_handler_t to allow reusing for gfn + ranges + - SAUCE: KVM: Use gfn instead of hva for mmu_notifier_retry + - SAUCE: KVM: PPC: Drop dead code related to KVM_ARCH_WANT_MMU_NOTIFIER + - SAUCE: KVM: Convert KVM_ARCH_WANT_MMU_NOTIFIER to + CONFIG_KVM_GENERIC_MMU_NOTIFIER + - SAUCE: KVM: Introduce KVM_SET_USER_MEMORY_REGION2 + - SAUCE: KVM: Add KVM_EXIT_MEMORY_FAULT exit + - SAUCE: KVM: Introduce per-page memory attributes + - SAUCE: KVM: x86: Disallow hugepages when memory attributes are mixed + - SAUCE: mm: Add AS_UNMOVABLE to mark mapping as completely unmovable + - SAUCE: security: Export security_inode_init_security_anon() for use by KVM + - SAUCE: KVM: Add KVM_CREATE_GUEST_MEMFD ioctl() for guest-specific backing + memory + - SAUCE: KVM: Add transparent hugepage support for dedicated guest memory + - SAUCE: KVM: x86/mmu: Handle page fault for private memory + - SAUCE: KVM: Drop superfluous __KVM_VCPU_MULTIPLE_ADDRESS_SPACE macro + - SAUCE: KVM: Allow arch code to track number of memslot address spaces per VM + - SAUCE: KVM: x86: Add support for "protected VMs" that can utilize private + memory + - SAUCE: KVM: selftests: Drop unused kvm_userspace_memory_region_find() helper + - SAUCE: KVM: selftests: Convert lib's mem regions to + KVM_SET_USER_MEMORY_REGION2 + - SAUCE: KVM: selftests: Add support for creating private memslots + - SAUCE: KVM: selftests: Add helpers to convert guest memory b/w private and + shared + - SAUCE: KVM: selftests: Add helpers to do KVM_HC_MAP_GPA_RANGE hypercalls + (x86) + - SAUCE: KVM: selftests: Introduce VM "shape" to allow tests to specify the VM + type + - SAUCE: KVM: selftests: Add GUEST_SYNC[1-6] macros for synchronizing more + data + - SAUCE: KVM: selftests: Add x86-only selftest for private memory conversions + - SAUCE: KVM: selftests: Add KVM_SET_USER_MEMORY_REGION2 helper + - SAUCE: KVM: selftests: Expand set_memory_region_test to validate + guest_memfd() + - SAUCE: KVM: selftests: Add basic selftest for guest_memfd() + - SAUCE: KVM: selftests: Test KVM exit behavior for private memory/access + - SAUCE: KVM: Fix locking ordering in kvm_gmem_release() + - SAUCE: KVM: x86: Add is_vm_type_supported callback + - SAUCE: KVM: x86/mmu: Guard against collision with KVM-defined + PFERR_IMPLICIT_ACCESS + - SAUCE: KVM: x86/mmu: Pass around full 64-bit error code for the KVM page + fault + - SAUCE: KVM: x86: Use PFERR_GUEST_ENC_MASK to indicate fault is private + - SAUCE: KVM: x86: Export the kvm_zap_gfn_range() for the SNP use + - SAUCE: KVM: Add new members to struct kvm_gfn_range to operate on + - SAUCE: KVM: x86: Add gmem hook for initializing private memory + - SAUCE: KVM: x86: Add gmem hook for invalidating private memory + - SAUCE: KVM: guest_mem(): Avoid race with kvm_gmem_release and mmu notifier + - SAUCE: x86/tdx: Zero out the missing RSI in TDX_HYPERCALL macro + - SAUCE: x86/tdx: Skip saving output regs when SEAMCALL fails with + VMFailInvalid + - SAUCE: x86/tdx: Make macros of TDCALLs consistent with the spec + - SAUCE: x86/tdx: Rename __tdx_module_call() to __tdcall() + - SAUCE: x86/tdx: Pass TDCALL/SEAMCALL input/output registers via a structure + - SAUCE: x86/tdx: Extend TDX_MODULE_CALL to support more TDCALL/SEAMCALL leafs + - SAUCE: x86/tdx: Make TDX_HYPERCALL asm similar to TDX_MODULE_CALL + - SAUCE: x86/tdx: Reimplement __tdx_hypercall() using TDX_MODULE_CALL asm + - SAUCE: x86/tdx: Remove 'struct tdx_hypercall_args' + - SAUCE: x86/virt/tdx: Wire up basic SEAMCALL functions + - SAUCE: x86/virt/tdx: Allow SEAMCALL to handle #UD and #GP + - SAUCE: x86/virt/tdx: Adjust 'struct tdx_module_args' to use x86 "register + index" layout + - SAUCE: x86/tdx: Define TDX supported page sizes as macros + - SAUCE: x86/virt/tdx: Detect TDX during kernel boot + - SAUCE: x86/virt/tdx: Make INTEL_TDX_HOST depend on X86_X2APIC + - SAUCE: x86/cpu: Detect TDX partial write machine check erratum + - SAUCE: NOT-FORMAL: add seamcall() wrapper + - SAUCE: x86/virt/tdx: Add skeleton to enable TDX on demand + - SAUCE: x86/virt/tdx: Get information about TDX module and TDX-capable memory + - SAUCE: x86/virt/tdx: Use all system memory when initializing TDX module as + TDX memory + - SAUCE: x86/virt/tdx: Add placeholder to construct TDMRs to cover all TDX + memory regions + - SAUCE: x86/virt/tdx: Fill out TDMRs to cover all TDX memory regions + - SAUCE: x86/virt/tdx: Allocate and set up PAMTs for TDMRs + - SAUCE: x86/virt/tdx: Designate reserved areas for all TDMRs + - SAUCE: x86/virt/tdx: Configure TDX module with the TDMRs and global KeyID + - SAUCE: x86/virt/tdx: Configure global KeyID on all packages + - SAUCE: x86/virt/tdx: Initialize all TDMRs + - SAUCE: x86/kexec: Flush cache of TDX private memory + - SAUCE: x86/virt/tdx: Keep TDMRs when module initialization is successful + - SAUCE: x86/kexec(): Reset TDX private memory on platforms with TDX erratum + - SAUCE: NOT-FORMAL: Additional error printing in seamcall() + - SAUCE: x86/mce: Improve error log of kernel space TDX #MC due to erratum + - SAUCE: Documentation/x86: Add documentation for TDX host support + - SAUCE: KVM: guest_mem: fix kvm_gmem_issue_arch_invalidate + - SAUCE: KVM: guest_mem: fix kvm_gmem_issue_arch_invalidate() + - SAUCE: KVM: guest_mem: removed duplicated kvm_gmem_init() + - SAUCE: x86/mtrr: Mask out keyid bits from variable mtrr mask register + - SAUCE: x86/tdx: Warning with 32bit build shift-count-overflow + - SAUCE: KVM: VMX: Move out vmx_x86_ops to 'main.c' to wrap VMX and TDX + - SAUCE: KVM: x86/vmx: initialize loaded_vmcss_on_cpu in vmx_hardware_setup() + - SAUCE: KVM: x86/vmx: Refactor KVM VMX module init/exit functions + - SAUCE: KVM: VMX: Reorder vmx initialization with kvm vendor initialization + - SAUCE: KVM: TDX: Initialize the TDX module when loading the KVM intel kernel + module + - SAUCE: KVM: TDX: Add placeholders for TDX VM/vcpu structure + - SAUCE: KVM: TDX: Make TDX VM type supported + - SAUCE: The start of TDX KVM patch series: TDX architectural definitions + - SAUCE: KVM: TDX: Define TDX architectural definitions + - SAUCE: KVM: TDX: Add TDX "architectural" error codes + - SAUCE: KVM: TDX: Add C wrapper functions for SEAMCALLs to the TDX module + - SAUCE: KVM: TDX: Retry SEAMCALL on the lack of entropy error + - SAUCE: KVM: TDX: Add helper functions to print TDX SEAMCALL error + - SAUCE: The start of TDX KVM patch series: TD VM creation/destruction + - SAUCE: x86/cpu: Add helper functions to allocate/free TDX private host key + id + - SAUCE: x86/virt/tdx: Add a helper function to return system wide info about + TDX module + - SAUCE: KVM: TDX: Add place holder for TDX VM specific mem_enc_op ioctl + - SAUCE: KVM: TDX: x86: Add ioctl to get TDX systemwide parameters + - SAUCE: KVM: x86, tdx: Make KVM_CAP_MAX_VCPUS backend specific + - SAUCE: KVM: TDX: create/destroy VM structure + - SAUCE: KVM: TDX: initialize VM with TDX specific parameters + - SAUCE: KVM: TDX: Make pmu_intel.c ignore guest TD case + - SAUCE: KVM: TDX: Refuse to unplug the last cpu on the package + - SAUCE: The start of TDX KVM patch series: TD vcpu creation/destruction + - SAUCE: KVM: TDX: allocate/free TDX vcpu structure + - SAUCE: KVM: TDX: Do TDX specific vcpu initialization + - SAUCE: The start of TDX KVM patch series: KVM MMU GPA shared bits + - SAUCE: KVM: x86/mmu: introduce config for PRIVATE KVM MMU + - SAUCE: KVM: x86/mmu: Add address conversion functions for TDX shared bit of + GPA + - SAUCE: The start of TDX KVM patch series: KVM TDP refactoring for TDX + - SAUCE: KVM: Allow page-sized MMU caches to be initialized with custom 64-bit + values + - SAUCE: KVM: x86/mmu: Replace hardcoded value 0 for the initial value for + SPTE + - SAUCE: KVM: x86/mmu: Allow non-zero value for non-present SPTE and removed + SPTE + - SAUCE: KVM: x86/mmu: Add Suppress VE bit to + shadow_mmio_mask/shadow_present_mask + - SAUCE: KVM: x86/mmu: Track shadow MMIO value on a per-VM basis + - SAUCE: KVM: x86/mmu: Disallow fast page fault on private GPA + - SAUCE: KVM: x86/mmu: Allow per-VM override of the TDP max page level + - SAUCE: KVM: VMX: Introduce test mode related to EPT violation VE + - SAUCE: The start of TDX KVM patch series: KVM TDP MMU hooks + - SAUCE: KVM: x86/mmu: Assume guest MMIOs are shared + - SAUCE: KVM: x86/tdp_mmu: Init role member of struct kvm_mmu_page at + allocation + - SAUCE: KVM: x86/mmu: Add a new is_private member for union kvm_mmu_page_role + - SAUCE: KVM: x86/mmu: Add a private pointer to struct kvm_mmu_page + - SAUCE: KVM: x86/tdp_mmu: Don't zap private pages for unsupported cases + - SAUCE: KVM: x86/tdp_mmu: Sprinkle __must_check + - SAUCE: KVM: x86/tdp_mmu: Support TDX private mapping for TDP MMU + - SAUCE: The start of TDX KVM patch series: TDX EPT violation + - SAUCE: KVM: x86/mmu: TDX: Do not enable page track for TD guest + - SAUCE: KVM: VMX: Split out guts of EPT violation to common/exposed function + - SAUCE: KVM: VMX: Move setting of EPT MMU masks to common VT-x code + - SAUCE: KVM: TDX: Add accessors VMX VMCS helpers + - SAUCE: KVM: TDX: Add load_mmu_pgd method for TDX + - SAUCE: KVM: TDX: Retry seamcall when TDX_OPERAND_BUSY with operand SEPT + - SAUCE: KVM: TDX: Require TDP MMU and mmio caching for TDX + - SAUCE: KVM: TDX: TDP MMU TDX support + - SAUCE: KVM: TDX: MTRR: implement get_mt_mask() for TDX + - SAUCE: The start of TDX KVM patch series: TD finalization + - SAUCE: KVM: x86/mmu: Introduce kvm_mmu_map_tdp_page() for use by TDX + - SAUCE: KVM: TDX: Create initial guest memory + - SAUCE: KVM: TDX: Finalize VM initialization + - SAUCE: The start of TDX KVM patch series: TD vcpu enter/exit + - SAUCE: KVM: TDX: Implement TDX vcpu enter/exit path + - SAUCE: KVM: TDX: vcpu_run: save/restore host state(host kernel gs) + - SAUCE: KVM: TDX: restore host xsave state when exit from the guest TD + - SAUCE: KVM: x86: Allow to update cached values in kvm_user_return_msrs w/o + wrmsr + - SAUCE: KVM: TDX: restore user ret MSRs + - SAUCE: KVM: TDX: Add TSX_CTRL msr into uret_msrs list + - SAUCE: The start of TDX KVM patch series: TD vcpu + exits/interrupts/hypercalls + - SAUCE: KVM: TDX: complete interrupts after tdexit + - SAUCE: KVM: TDX: restore debug store when TD exit + - SAUCE: KVM: TDX: handle vcpu migration over logical processor + - SAUCE: KVM: x86: Add a switch_db_regs flag to handle TDX's auto-switched + behavior + - SAUCE: KVM: TDX: Add support for find pending IRQ in a protected local APIC + - SAUCE: KVM: x86: Assume timer IRQ was injected if APIC state is proteced + - SAUCE: KVM: TDX: remove use of struct vcpu_vmx from posted_interrupt.c + - SAUCE: KVM: TDX: Implement interrupt injection + - SAUCE: KVM: TDX: Implements vcpu request_immediate_exit + - SAUCE: KVM: TDX: Implement methods to inject NMI + - SAUCE: KVM: VMX: Modify NMI and INTR handlers to take intr_info as function + argument + - SAUCE: KVM: VMX: Move NMI/exception handler to common helper + - SAUCE: KVM: x86: Split core of hypercall emulation to helper function + - SAUCE: KVM: TDX: Add a place holder to handle TDX VM exit + - SAUCE: KVM: TDX: Handle vmentry failure for INTEL TD guest + - SAUCE: KVM: TDX: handle EXIT_REASON_OTHER_SMI + - SAUCE: KVM: TDX: handle ept violation/misconfig exit + - SAUCE: KVM: TDX: handle EXCEPTION_NMI and EXTERNAL_INTERRUPT + - SAUCE: KVM: TDX: Handle EXIT_REASON_OTHER_SMI with MSMI + - SAUCE: KVM: TDX: Add a place holder for handler of TDX hypercalls + (TDG.VP.VMCALL) + - SAUCE: KVM: TDX: handle KVM hypercall with TDG.VP.VMCALL + - SAUCE: KVM: TDX: Add KVM Exit for TDX TDG.VP.VMCALL + - SAUCE: KVM: TDX: Handle TDX PV CPUID hypercall + - SAUCE: KVM: TDX: Handle TDX PV HLT hypercall + - SAUCE: KVM: TDX: Handle TDX PV port io hypercall + - SAUCE: KVM: TDX: Handle TDX PV MMIO hypercall + - SAUCE: KVM: TDX: Implement callbacks for MSR operations for TDX + - SAUCE: KVM: TDX: Handle TDX PV rdmsr/wrmsr hypercall + - SAUCE: KVM: TDX: Handle MSR MTRRCap and MTRRDefType access + - SAUCE: KVM: TDX: Handle MSR IA32_FEAT_CTL MSR and IA32_MCG_EXT_CTL + - SAUCE: KVM: TDX: Handle TDG.VP.VMCALL hypercall + - SAUCE: KVM: TDX: Silently discard SMI request + - SAUCE: KVM: TDX: Silently ignore INIT/SIPI + - SAUCE: KVM: TDX: Add methods to ignore accesses to CPU state + - SAUCE: KVM: TDX: Add methods to ignore guest instruction emulation + - SAUCE: KVM: TDX: Add a method to ignore dirty logging + - SAUCE: KVM: TDX: Add methods to ignore VMX preemption timer + - SAUCE: KVM: TDX: Add methods to ignore accesses to TSC + - SAUCE: KVM: TDX: Ignore setting up mce + - SAUCE: KVM: TDX: Add a method to ignore for TDX to ignore hypercall patch + - SAUCE: KVM: TDX: Add methods to ignore virtual apic related operation + - SAUCE: KVM: TDX: Inhibit APICv for TDX guest + - SAUCE: Documentation/virt/kvm: Document on Trust Domain Extensions(TDX) + - SAUCE: KVM: x86: design documentation on TDX support of x86 KVM TDP MMU + - SAUCE: RFC: KVM: x86: Add x86 callback to check cpuid + - SAUCE: RFC: KVM: x86, TDX: Add check for KVM_SET_CPUID2 + - SAUCE: the end of (the first phase of) TDX KVM patch series + - SAUCE: KVM: TDX: make tdx_protected_apic_has_interrupt for device assignment + - SAUCE: KVM: TDX: Handle bus lock exit + - SAUCE: KVM: x86: Fix warnings of kvm/arpi.rst + - SAUCE: KVM: Add per-VM flag to mark read-only memory as unsupported + - SAUCE: x86/tdx: Register TDX host key IDs to cgroup misc controller + - SAUCE: x86/virt/tdx: Export TD config params of TDX module via sysfs + - SAUCE: x86/virt/tdx: Export TDX keyid number and status of TDX module via + sysfs + - SAUCE: x86/virt/tdx: Export information about the TDX module via sysfs + - SAUCE: fix undefined symbol of cc_init + - SAUCE: x86/virt/tdx: Explicitly save/restore RBP for seamcall_saved_ret() + - SAUCE: KVM: TDX: Emulate Xen MTRR disablement + - SAUCE: KVM: TDX: Check if all present CPUs are online + - SAUCE: the start of large page support for TDP MMU + - SAUCE: KVM: TDP_MMU: Go to next level if smaller private mapping exists + - SAUCE: KVM: TDX: Pass page level to cache flush before TDX SEAMCALL + - SAUCE: KVM: TDX: Pass KVM page level to tdh_mem_page_add() and + tdh_mem_page_aug() + - SAUCE: KVM: TDX: Pass size to tdx_measure_page() + - SAUCE: KVM: TDX: Pass size to reclaim_page() + - SAUCE: KVM: TDX: Update tdx_sept_{set,drop}_private_spte() to support large + page + - SAUCE: KVM: MMU: Introduce level info in PFERR code + - SAUCE: KVM: TDX: Pin pages via get_page() right before ADD/AUG'ed to TDs + - SAUCE: KVM: TDX: Pass desired page level in err code for page fault handler + - SAUCE: KVM: x86/tdp_mmu: Allocate private page table for large page split + - SAUCE: KVM: x86/tdp_mmu: Split the large page when zap leaf + - SAUCE: KVM: x86/tdp_mmu, TDX: Split a large page when 4KB page within it + converted to shared + - SAUCE: KVM: x86/tdp_mmu: Try to merge pages into a large page + - SAUCE: KVM: x86/tdp_mmu: TDX: Implement merge pages into a large page + - SAUCE: KVM: x86/mmu: Make kvm fault handler aware of large page of private + memslot + - SAUCE: KVM: TDX: Allow 2MB large page for TD GUEST + - SAUCE: the end of large page support for TDP MMU + - SAUCE: KVM: TDX: MMU: introduce can_yield to tdp_mmu_alloc_sp_for_split() + - SAUCE: KVM: x86/mmu: add SPTE_PRIVATE_ZAPPED + - SAUCE: KVM: x86/tdp_mmu: optimize remote tlb flush + - SAUCE: KVM: x86/tdp_mmu: Unzap and split private large SPTE on KVM page + fault + - SAUCE: KVM: x86/tdp_mmu: don't follow down of large spte + - SAUCE: KVM: x86/tdp_mmu: Allow nx huge page recovery for TDX + - SAUCE: KVM: x86: Add section about TLB flush optimization of x86 KVM TDP MMU + doc + - SAUCE: KVM: TDX: Allow splitting private zapped large page + - SAUCE: KVM: Split tdp_mmu_pages to private and shared lists + - SAUCE: KVM: SEV: Refactor common code out of sev_vm_move_enc_context_from + - SAUCE: KVM: TDX: Add base implementation for tdx_vm_move_enc_context_from + - SAUCE: KVM: TDX: Implement moving private pages between 2 TDs + - SAUCE: KVM: TDX: Add core logic for TDX intra-host migration + - SAUCE: fix KVM: TDX: intra host migration + - SAUCE: KVM: guest_memfd(): protect kvm_mmu_invalidate_end() + - SAUCE: KVM: X86: Allow private page for non private memory slot + - SAUCE: KVM: x86/mmu: Disallow dirty logging for x86 TDX + - SAUCE: Add debug pfn check into tdx_sept_set_private_spte() + - SAUCE: Add WARN_ON_ONCE(!kvm_arch_dirty_log_supported(kvm))) for debug + - SAUCE: KVM: x86: Mark the VM (TD) as bugged if non-coherent DMA is detected + - SAUCE: KVM: TDX: add KVM_BUG_ON to to_kvm_vmx, to_vmx, to_kvm_tdx, to_tdx + - SAUCE: KVM: TDX: explicitly log triple fault with guest rip + - SAUCE: KVM: TDX: Show messages if SEAMCALL failed due to compatibility issue + - SAUCE: workaround to avoid KVM_CAP conflict in the upstrewam + - SAUCE: workaround to avoid conflict with KVM_EXIT_TDX in the upstream + - SAUCE: printout symbolic TDX op code and status code for debug + - SAUCE: KVM: x86/mmu: Add KVM_BUG_ON for debug + - SAUCE: TDX: Add kernel params to disable SEAM tracing + - SAUCE: debugfs to operation on TDX debug op + - SAUCE: KVM: TDX: print debug message + - SAUCE: KVM: TDX: save info on TDExit for debug + - SAUCE: KVM: TDX, x86/tdp_mmu: add helper function to pre-split and protect + private pages for debug + - SAUCE: KVM: TDX: protect PAMT + - SAUCE: KVM: TDX: protect TDX pages(TDR, TDCX, TDVPR, TDVPX) + - SAUCE: KVM: TDX, x86/tdp_mmu: protect TD guest private pages + - SAUCE: KVM: TDX, x86/tdp_mmu: Protect Secure-EPT page + - SAUCE: KVM: TDX: Add test mode to make TDX seamcall return operand busy + - SAUCE: KVM: x86/tdp_mmu: add warn_on_once on mmio fault for td + - SAUCE: KVM: TDX: return -EAGAIN on race to populate Secure EPT entry + - SAUCE: KVM: TDX: account TDX private pages for debug + - SAUCE: TDX1.4 workaround retry on TDH.MNG.CREATE and TDH.MNG.ADDCX + - SAUCE: TDX-1.5 update: check TDX_INTERRUPTED_RESTARTABLE + - SAUCE: KVM: TDX: Add trace points for TDX SEPT operations + - SAUCE: KVM: TDX: Ignore some error of TDH.MEM.PAGE_AUG + - SAUCE: KVM: TDX: add trace point for TDG.VP.VMCALL + - SAUCE: KVM: TDX: handle exception when debug attribute is enabled + - SAUCE: bump KVM_EXIT_MEMORY_FAULT to avoid merge conflict + - SAUCE: KVM: TDX: x86: Return success when no error occurs + - SAUCE: x86/tdx: Mark TSC reliable + - [Config] intel-opt: Enable TDX + + * Miscellaneous Ubuntu changes + - [Config] update toolchain versions in annotations + - [Config] update annotations after rebase to v6.5-rc6 + - [Config] update toolchain version in annotations + - [Packaging] temporarily disable Rust support + - [Packaging]: Create mantic:intel-opt + - [Configs] intel-opt: Update configs after rebase + + -- Philip Cox Fri, 06 Oct 2023 08:55:23 -0400 + +linux-intel-opt (6.5.0-1000.0) mantic; urgency=medium + + * Initial creation of intel-opt kernel. + + -- Philip Cox Tue, 05 Sep 2023 16:16:55 -0400 + +linux (6.5.0-8.8) mantic; urgency=medium + + * mantic/linux: 6.5.0-8.8 -proposed tracker (LP: #2038577) + + * update apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [02/60]: rename SK_CTX() to aa_sock and make it an + inline fn + - SAUCE: apparmor3.2.0 [05/60]: Add sysctls for additional controls of unpriv + userns restrictions + - SAUCE: apparmor3.2.0 [08/60]: Stacking v38: LSM: Identify modules by more + than name + - SAUCE: apparmor3.2.0 [09/60]: Stacking v38: LSM: Add an LSM identifier for + external use + - SAUCE: apparmor3.2.0 [10/60]: Stacking v38: LSM: Identify the process + attributes for each module + - SAUCE: apparmor3.2.0 [11/60]: Stacking v38: LSM: Maintain a table of LSM + attribute data + - SAUCE: apparmor3.2.0 [12/60]: Stacking v38: proc: Use lsmids instead of lsm + names for attrs + - SAUCE: apparmor3.2.0 [13/60]: Stacking v38: integrity: disassociate + ima_filter_rule from security_audit_rule + - SAUCE: apparmor3.2.0 [14/60]: Stacking v38: LSM: Infrastructure management + of the sock security + - SAUCE: apparmor3.2.0 [15/60]: Stacking v38: LSM: Add the lsmblob data + structure. + - SAUCE: apparmor3.2.0 [16/60]: Stacking v38: LSM: provide lsm name and id + slot mappings + - SAUCE: apparmor3.2.0 [17/60]: Stacking v38: IMA: avoid label collisions with + stacked LSMs + - SAUCE: apparmor3.2.0 [18/60]: Stacking v38: LSM: Use lsmblob in + security_audit_rule_match + - SAUCE: apparmor3.2.0 [19/60]: Stacking v38: LSM: Use lsmblob in + security_kernel_act_as + - SAUCE: apparmor3.2.0 [20/60]: Stacking v38: LSM: Use lsmblob in + security_secctx_to_secid + - SAUCE: apparmor3.2.0 [21/60]: Stacking v38: LSM: Use lsmblob in + security_secid_to_secctx + - SAUCE: apparmor3.2.0 [22/60]: Stacking v38: LSM: Use lsmblob in + security_ipc_getsecid + - SAUCE: apparmor3.2.0 [23/60]: Stacking v38: LSM: Use lsmblob in + security_current_getsecid + - SAUCE: apparmor3.2.0 [24/60]: Stacking v38: LSM: Use lsmblob in + security_inode_getsecid + - SAUCE: apparmor3.2.0 [25/60]: Stacking v38: LSM: Use lsmblob in + security_cred_getsecid + - SAUCE: apparmor3.2.0 [26/60]: Stacking v38: LSM: Specify which LSM to + display + - SAUCE: apparmor3.2.0 [28/60]: Stacking v38: LSM: Ensure the correct LSM + context releaser + - SAUCE: apparmor3.2.0 [29/60]: Stacking v38: LSM: Use lsmcontext in + security_secid_to_secctx + - SAUCE: apparmor3.2.0 [30/60]: Stacking v38: LSM: Use lsmcontext in + security_inode_getsecctx + - SAUCE: apparmor3.2.0 [31/60]: Stacking v38: Use lsmcontext in + security_dentry_init_security + - SAUCE: apparmor3.2.0 [32/60]: Stacking v38: LSM: security_secid_to_secctx in + netlink netfilter + - SAUCE: apparmor3.2.0 [33/60]: Stacking v38: NET: Store LSM netlabel data in + a lsmblob + - SAUCE: apparmor3.2.0 [34/60]: Stacking v38: binder: Pass LSM identifier for + confirmation + - SAUCE: apparmor3.2.0 [35/60]: Stacking v38: LSM: security_secid_to_secctx + module selection + - SAUCE: apparmor3.2.0 [36/60]: Stacking v38: Audit: Keep multiple LSM data in + audit_names + - SAUCE: apparmor3.2.0 [37/60]: Stacking v38: Audit: Create audit_stamp + structure + - SAUCE: apparmor3.2.0 [38/60]: Stacking v38: LSM: Add a function to report + multiple LSMs + - SAUCE: apparmor3.2.0 [39/60]: Stacking v38: Audit: Allow multiple records in + an audit_buffer + - SAUCE: apparmor3.2.0 [40/60]: Stacking v38: Audit: Add record for multiple + task security contexts + - SAUCE: apparmor3.2.0 [41/60]: Stacking v38: audit: multiple subject lsm + values for netlabel + - SAUCE: apparmor3.2.0 [42/60]: Stacking v38: Audit: Add record for multiple + object contexts + - SAUCE: apparmor3.2.0 [43/60]: Stacking v38: netlabel: Use a struct lsmblob + in audit data + - SAUCE: apparmor3.2.0 [44/60]: Stacking v38: LSM: Removed scaffolding + function lsmcontext_init + - SAUCE: apparmor3.2.0 [45/60]: Stacking v38: AppArmor: Remove the exclusive + flag + - SAUCE: apparmor3.2.0 [46/60]: combine common_audit_data and + apparmor_audit_data + - SAUCE: apparmor3.2.0 [47/60]: setup slab cache for audit data + - SAUCE: apparmor3.2.0 [48/60]: rename audit_data->label to + audit_data->subj_label + - SAUCE: apparmor3.2.0 [49/60]: pass cred through to audit info. + - SAUCE: apparmor3.2.0 [50/60]: Improve debug print infrastructure + - SAUCE: apparmor3.2.0 [51/60]: add the ability for profiles to have a + learning cache + - SAUCE: apparmor3.2.0 [52/60]: enable userspace upcall for mediation + - SAUCE: apparmor3.2.0 [53/60]: cache buffers on percpu list if there is lock + contention + - SAUCE: apparmor3.2.0 [55/60]: advertise availability of exended perms + - SAUCE: apparmor3.2.0 [60/60]: [Config] enable + CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + + * LSM stacking and AppArmor for 6.2: additional fixes (LP: #2017903) // update + apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [57/60]: fix profile verification and enable it + + * udev fails to make prctl() syscall with apparmor=0 (as used by maas by + default) (LP: #2016908) // update apparmor and LSM stacking patch set + (LP: #2028253) + - SAUCE: apparmor3.2.0 [27/60]: Stacking v38: Fix prctl() syscall with + apparmor=0 + + * kinetic: apply new apparmor and LSM stacking patch set (LP: #1989983) // + update apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [01/60]: add/use fns to print hash string hex value + - SAUCE: apparmor3.2.0 [03/60]: patch to provide compatibility with v2.x net + rules + - SAUCE: apparmor3.2.0 [04/60]: add user namespace creation mediation + - SAUCE: apparmor3.2.0 [06/60]: af_unix mediation + - SAUCE: apparmor3.2.0 [07/60]: Add fine grained mediation of posix mqueues + + -- Andrea Righi Fri, 06 Oct 2023 07:34:00 +0200 + +linux (6.5.0-7.7) mantic; urgency=medium + + * mantic/linux: 6.5.0-7.7 -proposed tracker (LP: #2037611) + + * kexec enable to load/kdump zstd compressed zimg (LP: #2037398) + - [Packaging] Revert arm64 image format to Image.gz + + * Mantic minimized/minimal cloud images do not receive IP address during + provisioning (LP: #2036968) + - [Config] Enable virtio-net as built-in to avoid race + + * Miscellaneous Ubuntu changes + - SAUCE: Add mdev_set_iommu_device() kABI + - [Config] update gcc version in annotations + + -- Andrea Righi Thu, 28 Sep 2023 10:19:24 +0200 + +linux (6.5.0-6.6) mantic; urgency=medium + + * mantic/linux: 6.5.0-6.6 -proposed tracker (LP: #2035595) + + * Mantic update: v6.5.3 upstream stable release (LP: #2035588) + - drm/amd/display: ensure async flips are only accepted for fast updates + - cpufreq: intel_pstate: set stale CPU frequency to minimum + - tpm: Enable hwrng only for Pluton on AMD CPUs + - Input: i8042 - add quirk for TUXEDO Gemini 17 Gen1/Clevo PD70PN + - Revert "fuse: in fuse_flush only wait if someone wants the return code" + - Revert "f2fs: clean up w/ sbi->log_sectors_per_block" + - Revert "PCI: tegra194: Enable support for 256 Byte payload" + - Revert "net: macsec: preserve ingress frame ordering" + - reiserfs: Check the return value from __getblk() + - splice: always fsnotify_access(in), fsnotify_modify(out) on success + - splice: fsnotify_access(fd)/fsnotify_modify(fd) in vmsplice + - splice: fsnotify_access(in), fsnotify_modify(out) on success in tee + - eventfd: prevent underflow for eventfd semaphores + - fs: Fix error checking for d_hash_and_lookup() + - iomap: Remove large folio handling in iomap_invalidate_folio() + - tmpfs: verify {g,u}id mount options correctly + - selftests/harness: Actually report SKIP for signal tests + - vfs, security: Fix automount superblock LSM init problem, preventing NFS sb + sharing + - ARM: ptrace: Restore syscall restart tracing + - ARM: ptrace: Restore syscall skipping for tracers + - btrfs: zoned: skip splitting and logical rewriting on pre-alloc write + - erofs: release ztailpacking pclusters properly + - locking/arch: Avoid variable shadowing in local_try_cmpxchg() + - refscale: Fix uninitalized use of wait_queue_head_t + - clocksource: Handle negative skews in "skew is too large" messages + - powercap: arm_scmi: Remove recursion while parsing zones + - OPP: Fix potential null ptr dereference in dev_pm_opp_get_required_pstate() + - OPP: Fix passing 0 to PTR_ERR in _opp_attach_genpd() + - selftests/resctrl: Add resctrl.h into build deps + - selftests/resctrl: Don't leak buffer in fill_cache() + - selftests/resctrl: Unmount resctrl FS if child fails to run benchmark + - selftests/resctrl: Close perf value read fd on errors + - sched/fair: remove util_est boosting + - arm64/ptrace: Clean up error handling path in sve_set_common() + - sched/psi: Select KERNFS as needed + - cpuidle: teo: Update idle duration estimate when choosing shallower state + - x86/decompressor: Don't rely on upper 32 bits of GPRs being preserved + - arm64/fpsimd: Only provide the length to cpufeature for xCR registers + - sched/rt: Fix sysctl_sched_rr_timeslice intial value + - perf/imx_ddr: don't enable counter0 if none of 4 counters are used + - selftests/futex: Order calls to futex_lock_pi + - irqchip/loongson-eiointc: Fix return value checking of eiointc_index + - ACPI: x86: s2idle: Post-increment variables when getting constraints + - ACPI: x86: s2idle: Fix a logic error parsing AMD constraints table + - thermal/of: Fix potential uninitialized value access + - cpufreq: amd-pstate-ut: Remove module parameter access + - cpufreq: amd-pstate-ut: Fix kernel panic when loading the driver + - tools/nolibc: arch-*.h: add missing space after ',' + - tools/nolibc: fix up startup failures for -O0 under gcc < 11.1.0 + - x86/efistub: Fix PCI ROM preservation in mixed mode + - cpufreq: powernow-k8: Use related_cpus instead of cpus in driver.exit() + - cpufreq: tegra194: add online/offline hooks + - cpufreq: tegra194: remove opp table in exit hook + - selftests/bpf: Fix bpf_nf failure upon test rerun + - libbpf: only reset sec_def handler when necessary + - bpftool: use a local copy of perf_event to fix accessing :: Bpf_cookie + - bpftool: Define a local bpf_perf_link to fix accessing its fields + - bpftool: Use a local copy of BPF_LINK_TYPE_PERF_EVENT in pid_iter.bpf.c + - bpftool: Use a local bpf_perf_event_value to fix accessing its fields + - libbpf: Fix realloc API handling in zero-sized edge cases + - bpf: Clear the probe_addr for uprobe + - bpf: Fix an error around PTR_UNTRUSTED + - bpf: Fix an error in verifying a field in a union + - crypto: qat - change value of default idle filter + - tcp: tcp_enter_quickack_mode() should be static + - hwrng: nomadik - keep clock enabled while hwrng is registered + - hwrng: pic32 - use devm_clk_get_enabled + - regmap: maple: Use alloc_flags for memory allocations + - regmap: rbtree: Use alloc_flags for memory allocations + - wifi: mt76: mt7996: fix header translation logic + - wifi: mt76: mt7915: fix background radar event being blocked + - wifi: mt76: mt7915: rework tx packets counting when WED is active + - wifi: mt76: mt7915: rework tx bytes counting when WED is active + - wifi: mt76: mt7921: fix non-PSC channel scan fail + - wifi: mt76: mt7996: fix bss wlan_idx when sending bss_info command + - wifi: mt76: mt7996: use correct phy for background radar event + - wifi: mt76: mt7996: fix WA event ring size + - udp: re-score reuseport groups when connected sockets are present + - bpf: reject unhashed sockets in bpf_sk_assign + - wifi: mt76: mt7915: fix command timeout in AP stop period + - wifi: mt76: mt7915: fix capabilities in non-AP mode + - wifi: mt76: mt7915: remove VHT160 capability on MT7915 + - wifi: mt76: testmode: add nla_policy for MT76_TM_ATTR_TX_LENGTH + - spi: tegra20-sflash: fix to check return value of platform_get_irq() in + tegra_sflash_probe() + - can: gs_usb: gs_usb_receive_bulk_callback(): count RX overflow errors also + in case of OOM + - can: tcan4x5x: Remove reserved register 0x814 from writable table + - wifi: mt76: mt7915: fix tlv length of mt7915_mcu_get_chan_mib_info + - wifi: mt76: mt7915: fix power-limits while chan_switch + - wifi: rtw89: Fix loading of compressed firmware + - wifi: mwifiex: Fix OOB and integer underflow when rx packets + - wifi: mwifiex: fix error recovery in PCIE buffer descriptor management + - wifi: ath11k: fix band selection for ppdu received in channel 177 of 5 GHz + - wifi: ath12k: fix memcpy array overflow in ath12k_peer_assoc_h_he() + - selftests/bpf: fix static assert compilation issue for test_cls_*.c + - power: supply: qcom_pmi8998_charger: fix uninitialized variable + - spi: mpc5xxx-psc: Fix unsigned expression compared with zero + - crypto: af_alg - Fix missing initialisation affecting gcm-aes-s390 + - bpf: fix bpf_dynptr_slice() to stop return an ERR_PTR. + - kbuild: rust_is_available: remove -v option + - kbuild: rust_is_available: fix version check when CC has multiple arguments + - kbuild: rust_is_available: add check for `bindgen` invocation + - kbuild: rust_is_available: fix confusion when a version appears in the path + - crypto: stm32 - Properly handle pm_runtime_get failing + - crypto: api - Use work queue in crypto_destroy_instance + - Bluetooth: ISO: Add support for connecting multiple BISes + - Bluetooth: ISO: do not emit new LE Create CIS if previous is pending + - Bluetooth: nokia: fix value check in nokia_bluetooth_serdev_probe() + - Bluetooth: ISO: Fix not checking for valid CIG/CIS IDs + - Bluetooth: hci_conn: Fix not allowing valid CIS ID + - Bluetooth: hci_conn: Fix hci_le_set_cig_params + - Bluetooth: Fix potential use-after-free when clear keys + - Bluetooth: hci_sync: Don't double print name in add/remove adv_monitor + - Bluetooth: hci_sync: Avoid use-after-free in dbg for hci_add_adv_monitor() + - Bluetooth: hci_conn: Always allocate unique handles + - Bluetooth: hci_event: drop only unbound CIS if Set CIG Parameters fails + - net: tcp: fix unexcepted socket die when snd_wnd is 0 + - net: pcs: lynx: fix lynx_pcs_link_up_sgmii() not doing anything in fixed- + link mode + - libbpf: Set close-on-exec flag on gzopen + - selftests/bpf: Fix repeat option when kfunc_call verification fails + - selftests/bpf: Clean up fmod_ret in bench_rename test script + - net: hns3: move dump regs function to a separate file + - net: hns3: Support tlv in regs data for HNS3 PF driver + - net: hns3: fix wrong rpu tln reg issue + - net-memcg: Fix scope of sockmem pressure indicators + - ice: ice_aq_check_events: fix off-by-one check when filling buffer + - crypto: caam - fix unchecked return value error + - hwrng: iproc-rng200 - Implement suspend and resume calls + - lwt: Fix return values of BPF xmit ops + - lwt: Check LWTUNNEL_XMIT_CONTINUE strictly + - usb: typec: tcpm: set initial svdm version based on pd revision + - usb: typec: bus: verify partner exists in typec_altmode_attention + - USB: core: Unite old scheme and new scheme descriptor reads + - USB: core: Change usb_get_device_descriptor() API + - USB: core: Fix race by not overwriting udev->descriptor in hub_port_init() + - scripts/gdb: fix 'lx-lsmod' show the wrong size + - nmi_backtrace: allow excluding an arbitrary CPU + - watchdog/hardlockup: avoid large stack frames in watchdog_hardlockup_check() + - fs: ocfs2: namei: check return value of ocfs2_add_entry() + - net: lan966x: Fix return value check for vcap_get_rule() + - net: annotate data-races around sk->sk_lingertime + - hwmon: (asus-ec-sensosrs) fix mutex path for X670E Hero + - wifi: mwifiex: fix memory leak in mwifiex_histogram_read() + - wifi: mwifiex: Fix missed return in oob checks failed path + - wifi: rtw89: 8852b: rfk: fine tune IQK parameters to improve performance on + 2GHz band + - selftests: memfd: error out test process when child test fails + - samples/bpf: fix bio latency check with tracepoint + - samples/bpf: fix broken map lookup probe + - wifi: ath9k: fix races between ath9k_wmi_cmd and ath9k_wmi_ctrl_rx + - wifi: ath9k: protect WMI command response buffer replacement with a lock + - bpf: Fix a bpf_kptr_xchg() issue with local kptr + - wifi: mac80211: fix puncturing bitmap handling in CSA + - wifi: nl80211/cfg80211: add forgotten nla_policy for BSS color attribute + - mac80211: make ieee80211_tx_info padding explicit + - bpf: Fix check_func_arg_reg_off bug for graph root/node + - wifi: mwifiex: avoid possible NULL skb pointer dereference + - Bluetooth: hci_conn: Consolidate code for aborting connections + - Bluetooth: ISO: Notify user space about failed bis connections + - Bluetooth: hci_sync: Fix UAF on hci_abort_conn_sync + - Bluetooth: hci_sync: Fix UAF in hci_disconnect_all_sync + - Bluetooth: hci_conn: fail SCO/ISO via hci_conn_failed if ACL gone early + - Bluetooth: btusb: Do not call kfree_skb() under spin_lock_irqsave() + - arm64: mm: use ptep_clear() instead of pte_clear() in clear_flush() + - net/mlx5: Dynamic cyclecounter shift calculation for PTP free running clock + - wifi: ath9k: use IS_ERR() with debugfs_create_dir() + - ice: avoid executing commands on other ports when driving sync + - octeontx2-pf: fix page_pool creation fail for rings > 32k + - net: arcnet: Do not call kfree_skb() under local_irq_disable() + - kunit: Fix checksum tests on big endian CPUs + - mlxsw: i2c: Fix chunk size setting in output mailbox buffer + - mlxsw: i2c: Limit single transaction buffer size + - mlxsw: core_hwmon: Adjust module label names based on MTCAP sensor counter + - crypto: qat - fix crypto capability detection for 4xxx + - hwmon: (tmp513) Fix the channel number in tmp51x_is_visible() + - octeontx2-pf: Fix PFC TX scheduler free + - octeontx2-af: CN10KB: fix PFC configuration + - cteonxt2-pf: Fix backpressure config for multiple PFC priorities to work + simultaneously + - sfc: Check firmware supports Ethernet PTP filter + - net/sched: sch_hfsc: Ensure inner classes have fsc curve + - pds_core: protect devlink callbacks from fw_down state + - pds_core: no health reporter in VF + - pds_core: no reset command for VF + - pds_core: check for work queue before use + - pds_core: pass opcode to devcmd_wait + - netrom: Deny concurrent connect(). + - drm/bridge: tc358764: Fix debug print parameter order + - ASoC: soc-compress: Fix deadlock in soc_compr_open_fe + - ASoC: cs43130: Fix numerator/denominator mixup + - drm: bridge: dw-mipi-dsi: Fix enable/disable of DSI controller + - quota: factor out dquot_write_dquot() + - quota: rename dquot_active() to inode_quota_active() + - quota: add new helper dquot_active() + - quota: fix dqput() to follow the guarantees dquot_srcu should provide + - drm/amd/display: Do not set drr on pipe commit + - drm/hyperv: Fix a compilation issue because of not including screen_info.h + - ASoC: stac9766: fix build errors with REGMAP_AC97 + - soc: qcom: ocmem: Fix NUM_PORTS & NUM_MACROS macros + - arm64: defconfig: enable Qualcomm MSM8996 Global Clock Controller as built- + in + - arm64: dts: qcom: sm8150: use proper DSI PHY compatible + - arm64: dts: qcom: sm6350: Fix ZAP region + - Revert "arm64: dts: qcom: msm8996: rename labels for HDMI nodes" + - arm64: dts: qcom: sm8250: correct dynamic power coefficients + - arm64: dts: qcom: sm8450: correct crypto unit address + - arm64: dts: qcom: msm8916-l8150: correct light sensor VDDIO supply + - arm64: dts: qcom: sm8250-edo: Add gpio line names for TLMM + - arm64: dts: qcom: sm8250-edo: Add GPIO line names for PMIC GPIOs + - arm64: dts: qcom: sm8250-edo: Rectify gpio-keys + - arm64: dts: qcom: sc8280xp-crd: Correct vreg_misc_3p3 GPIO + - arm64: dts: qcom: sc8280xp: Add missing SCM interconnect + - arm64: dts: qcom: msm8939: Drop "qcom,idle-state-spc" compatible + - arm64: dts: qcom: msm8939: Add missing 'cache-unified' to L2 + - arm64: dts: qcom: msm8996: Add missing interrupt to the USB2 controller + - arm64: dts: qcom: sdm845-tama: Set serial indices and stdout-path + - arm64: dts: qcom: sm8350: Fix CPU idle state residency times + - arm64: dts: qcom: sm8350: Add missing LMH interrupts to cpufreq + - arm64: dts: qcom: sc8180x: Fix cluster PSCI suspend param + - arm64: dts: qcom: sm8350: Use proper CPU compatibles + - arm64: dts: qcom: pm8350: fix thermal zone name + - arm64: dts: qcom: pm8350b: fix thermal zone name + - arm64: dts: qcom: pmr735b: fix thermal zone name + - arm64: dts: qcom: pmk8350: fix ADC-TM compatible string + - arm64: dts: qcom: sm8450-hdk: remove pmr735b PMIC inclusion + - arm64: dts: qcom: sm8250: Mark PCIe hosts as DMA coherent + - arm64: dts: qcom: minor whitespace cleanup around '=' + - arm64: dts: qcom: sm8250: Mark SMMUs as DMA coherent + - ARM: dts: stm32: Add missing detach mailbox for emtrion emSBC-Argon + - ARM: dts: stm32: Add missing detach mailbox for Odyssey SoM + - ARM: dts: stm32: Add missing detach mailbox for DHCOM SoM + - ARM: dts: stm32: Add missing detach mailbox for DHCOR SoM + - firmware: ti_sci: Use system_state to determine polling + - drm/amdgpu: avoid integer overflow warning in amdgpu_device_resize_fb_bar() + - ARM: dts: BCM53573: Drop nonexistent "default-off" LED trigger + - ARM: dts: BCM53573: Drop nonexistent #usb-cells + - ARM: dts: BCM53573: Add cells sizes to PCIe node + - ARM: dts: BCM53573: Use updated "spi-gpio" binding properties + - arm64: tegra: Add missing alias for NVIDIA IGX Orin + - arm64: tegra: Fix HSUART for Jetson AGX Orin + - arm64: dts: qcom: sm8250-sony-xperia: correct GPIO keys wakeup again + - arm64: dts: qcom: pm6150l: Add missing short interrupt + - arm64: dts: qcom: pm660l: Add missing short interrupt + - arm64: dts: qcom: pmi8950: Add missing OVP interrupt + - arm64: dts: qcom: pmi8994: Add missing OVP interrupt + - arm64: dts: qcom: sc8180x: Add missing 'cache-unified' to L3 + - arm64: tegra: Fix HSUART for Smaug + - drm/etnaviv: fix dumping of active MMU context + - block: cleanup queue_wc_store + - block: don't allow enabling a cache on devices that don't support it + - blk-flush: fix rq->flush.seq for post-flush requests + - x86/mm: Fix PAT bit missing from page protection modify mask + - drm/bridge: anx7625: Use common macros for DP power sequencing commands + - drm/bridge: anx7625: Use common macros for HDCP capabilities + - ARM: dts: samsung: s3c6410-mini6410: correct ethernet reg addresses (split) + - ARM: dts: samsung: s5pv210-smdkv210: correct ethernet reg addresses (split) + - drm: adv7511: Fix low refresh rate register for ADV7533/5 + - ARM: dts: BCM53573: Fix Ethernet info for Luxul devices + - arm64: dts: qcom: sdm845: Add missing RPMh power domain to GCC + - arm64: dts: qcom: sdm845: Fix the min frequency of "ice_core_clk" + - arm64: dts: qcom: sc8180x: Fix LLCC reg property + - arm64: dts: qcom: msm8996-gemini: fix touchscreen VIO supply + - arm64: dts: qcom: sc8180x-pmics: add missing qcom,spmi-gpio fallbacks + - arm64: dts: qcom: sc8180x-pmics: add missing gpio-ranges + - arm64: dts: qcom: sc8180x-pmics: align SPMI PMIC Power-on node name with + dtschema + - arm64: dts: qcom: sc8180x-pmics: align LPG node name with dtschema + - dt-bindings: arm: msm: kpss-acc: Make the optional reg truly optional + - drm/amdgpu: Update min() to min_t() in 'amdgpu_info_ioctl' + - drm/amdgpu: Use seq_puts() instead of seq_printf() + - arm64: dts: rockchip: Fix PCIe regulators on Radxa E25 + - arm64: dts: rockchip: Enable SATA on Radxa E25 + - ASoC: loongson: drop of_match_ptr for OF device id + - ASoC: fsl: fsl_qmc_audio: Fix snd_pcm_format_t values handling + - md: restore 'noio_flag' for the last mddev_resume() + - md/raid10: factor out dereference_rdev_and_rrdev() + - md/raid10: use dereference_rdev_and_rrdev() to get devices + - md/md-bitmap: remove unnecessary local variable in backlog_store() + - md/md-bitmap: hold 'reconfig_mutex' in backlog_store() + - drm/msm: Update dev core dump to not print backwards + - drm/tegra: dpaux: Fix incorrect return value of platform_get_irq + - of: unittest: fix null pointer dereferencing in + of_unittest_find_node_by_name() + - arm64: dts: qcom: sm8150: Fix the I2C7 interrupt + - drm/ast: report connection status on Display Port. + - ARM: dts: BCM53573: Fix Tenda AC9 switch CPU port + - drm/armada: Fix off-by-one error in armada_overlay_get_property() + - drm/repaper: Reduce temporary buffer size in repaper_fb_dirty() + - drm/panel: simple: Add missing connector type and pixel format for AUO + T215HVN01 + - ima: Remove deprecated IMA_TRUSTED_KEYRING Kconfig + - drm: xlnx: zynqmp_dpsub: Add missing check for dma_set_mask + - drm/msm/dpu: increase memtype count to 16 for sm8550 + - drm/msm/dpu: inline DSC_BLK and DSC_BLK_1_2 macros + - drm/msm/dpu: fix DSC 1.2 block lengths + - drm/msm/dpu1: Rename sm8150_dspp_blk to sdm845_dspp_blk + - drm/msm/dpu: Define names for unnamed sblks + - drm/msm/dpu: fix DSC 1.2 enc subblock length + - arm64: dts: qcom: sm8550-mtp: Add missing supply for L1B regulator + - soc: qcom: smem: Fix incompatible types in comparison + - drm/msm/mdp5: Don't leak some plane state + - firmware: meson_sm: fix to avoid potential NULL pointer dereference + - drm/msm/dpu: fix the irq index in dpu_encoder_phys_wb_wait_for_commit_done + - arm64: dts: ti: k3-j784s4-evm: Correct Pin mux offset for ospi + - arm64: dts: ti: k3-j721s2: correct pinmux offset for ospi + - smackfs: Prevent underflow in smk_set_cipso() + - drm/amdgpu: Sort the includes in amdgpu/amdgpu_drv.c + - drm/amdgpu: Move vram, gtt & flash defines to amdgpu_ ttm & _psp.h + - drm/amd/pm: fix variable dereferenced issue in amdgpu_device_attr_create() + - drm/msm/a2xx: Call adreno_gpu_init() earlier + - drm/msm/a6xx: Fix GMU lockdep splat + - ASoC: SOF: Intel: hda-mlink: fix off-by-one error + - ASoC: SOF: Intel: fix u16/32 confusion in LSDIID + - drm/mediatek: Fix uninitialized symbol + - audit: fix possible soft lockup in __audit_inode_child() + - block/mq-deadline: use correct way to throttling write requests + - io_uring: fix drain stalls by invalid SQE + - block: move the BIO_CLONED checks out of __bio_try_merge_page + - block: move the bi_vcnt check out of __bio_try_merge_page + - block: move the bi_size overflow check in __bio_try_merge_page + - block: move the bi_size update out of __bio_try_merge_page + - block: don't pass a bio to bio_try_merge_hw_seg + - block: make bvec_try_merge_hw_page() non-static + - bio-integrity: create multi-page bvecs in bio_integrity_add_page() + - drm/mediatek: dp: Add missing error checks in mtk_dp_parse_capabilities + - arm64: dts: ti: k3-j784s4-evm: Correct Pin mux offset for ADC + - arm64: dts: ti: k3-j784s4: Fix interrupt ranges for wkup & main gpio + - bus: ti-sysc: Fix build warning for 64-bit build + - drm/mediatek: Remove freeing not dynamic allocated memory + - drm/mediatek: Add cnt checking for coverity issue + - arm64: dts: imx8mp-debix: remove unused fec pinctrl node + - ARM: dts: qcom: ipq4019: correct SDHCI XO clock + - arm64: dts: ti: k3-am62x-sk-common: Update main-i2c1 frequency + - drm/mediatek: Fix potential memory leak if vmap() fail + - drm/mediatek: Fix void-pointer-to-enum-cast warning + - arm64: dts: qcom: apq8016-sbc: Fix ov5640 regulator supply names + - arm64: dts: qcom: apq8016-sbc: Rename ov5640 enable-gpios to powerdown-gpios + - arm64: dts: qcom: msm8998: Drop bus clock reference from MMSS SMMU + - arm64: dts: qcom: msm8998: Add missing power domain to MMSS SMMU + - ARM: dts: qcom: sdx65-mtp: Update the pmic used in sdx65 + - arm64: dts: qcom: msm8996: Fix dsi1 interrupts + - arm64: dts: qcom: sc8280xp-x13s: Unreserve NC pins + - drm/msm/a690: Switch to a660_gmu.bin + - bus: ti-sysc: Fix cast to enum warning + - block: uapi: Fix compilation errors using ioprio.h with C++ + - md/raid5-cache: fix a deadlock in r5l_exit_log() + - md/raid5-cache: fix null-ptr-deref for r5l_flush_stripe_to_raid() + - firmware: cs_dsp: Fix new control name check + - blk-cgroup: Fix NULL deref caused by blkg_policy_data being installed before + init + - md/raid0: Factor out helper for mapping and submitting a bio + - md/raid0: Fix performance regression for large sequential writes + - md: raid0: account for split bio in iostat accounting + - ASoC: SOF: amd: clear dsp to host interrupt status + - of: overlay: Call of_changeset_init() early + - of: unittest: Fix overlay type in apply/revert check + - ALSA: ac97: Fix possible error value of *rac97 + - ALSA: usb-audio: Attach legacy rawmidi after probing all UMP EPs + - ALSA: ump: Fill group names for legacy rawmidi substreams + - ALSA: ump: Don't create unused substreams for static blocks + - ALSA: ump: Fix -Wformat-truncation warnings + - ipmi:ssif: Add check for kstrdup + - ipmi:ssif: Fix a memory leak when scanning for an adapter + - clk: qcom: gpucc-sm6350: Introduce index-based clk lookup + - clk: qcom: gpucc-sm6350: Fix clock source names + - clk: qcom: gcc-sc8280xp: Add missing GDSC flags + - dt-bindings: clock: qcom,gcc-sc8280xp: Add missing GDSCs + - clk: qcom: gcc-sc8280xp: Add missing GDSCs + - clk: qcom: gcc-sm7150: Add CLK_OPS_PARENT_ENABLE to sdcc2 rcg + - clk: rockchip: rk3568: Fix PLL rate setting for 78.75MHz + - PCI: apple: Initialize pcie->nvecs before use + - PCI: qcom-ep: Switch MHI bus master clock off during L1SS + - clk: qcom: gcc-sc8280xp: fix runtime PM imbalance on probe errors + - drivers: clk: keystone: Fix parameter judgment in _of_pll_clk_init() + - iommufd: Fix locking around hwpt allocation + - PCI/DOE: Fix destroy_work_on_stack() race + - clk: qcom: dispcc-sc8280xp: Use ret registers on GDSCs + - clk: sunxi-ng: Modify mismatched function name + - clk: qcom: gcc-sc7180: Fix up gcc_sdcc2_apps_clk_src + - EDAC/igen6: Fix the issue of no error events + - ext4: correct grp validation in ext4_mb_good_group + - ext4: avoid potential data overflow in next_linear_group + - clk: qcom: gcc-sm8250: Fix gcc_sdcc2_apps_clk_src + - clk: qcom: fix some Kconfig corner cases + - kvm/vfio: Prepare for accepting vfio device fd + - kvm/vfio: ensure kvg instance stays around in kvm_vfio_group_add() + - clk: qcom: reset: Use the correct type of sleep/delay based on length + - clk: qcom: gcc-sm6350: Fix gcc_sdcc2_apps_clk_src + - PCI: microchip: Correct the DED and SEC interrupt bit offsets + - PCI: Mark NVIDIA T4 GPUs to avoid bus reset + - pinctrl: mcp23s08: check return value of devm_kasprintf() + - PCI: Add locking to RMW PCI Express Capability Register accessors + - PCI: Make link retraining use RMW accessors for changing LNKCTL + - PCI: pciehp: Use RMW accessors for changing LNKCTL + - PCI/ASPM: Use RMW accessors for changing LNKCTL + - clk: qcom: gcc-sm8450: Use floor ops for SDCC RCGs + - clk: qcom: gcc-qdu1000: Fix gcc_pcie_0_pipe_clk_src clock handling + - clk: qcom: gcc-qdu1000: Fix clkref clocks handling + - clk: imx: pllv4: Fix SPLL2 MULT range + - clk: imx: imx8ulp: update SPLL2 type + - clk: imx8mp: fix sai4 clock + - clk: imx: composite-8m: fix clock pauses when set_rate would be a no-op + - powerpc/radix: Move some functions into #ifdef CONFIG_KVM_BOOK3S_HV_POSSIBLE + - vfio/type1: fix cap_migration information leak + - nvdimm: Fix memleak of pmu attr_groups in unregister_nvdimm_pmu() + - nvdimm: Fix dereference after free in register_nvdimm_pmu() + - powerpc/fadump: reset dump area size if fadump memory reserve fails + - powerpc/perf: Convert fsl_emb notifier to state machine callbacks + - pinctrl: mediatek: fix pull_type data for MT7981 + - pinctrl: mediatek: assign functions to configure pin bias on MT7986 + - drm/amdgpu: Use RMW accessors for changing LNKCTL + - drm/radeon: Use RMW accessors for changing LNKCTL + - net/mlx5: Use RMW accessors for changing LNKCTL + - wifi: ath11k: Use RMW accessors for changing LNKCTL + - wifi: ath12k: Use RMW accessors for changing LNKCTL + - wifi: ath10k: Use RMW accessors for changing LNKCTL + - NFSv4.2: Fix READ_PLUS smatch warnings + - NFSv4.2: Fix READ_PLUS size calculations + - NFSv4.2: Rework scratch handling for READ_PLUS (again) + - PCI: layerscape: Add workaround for lost link capabilities during reset + - powerpc: Don't include lppaca.h in paca.h + - powerpc/pseries: Rework lppaca_shared_proc() to avoid DEBUG_PREEMPT + - nfs/blocklayout: Use the passed in gfp flags + - powerpc/pseries: Fix hcall tracepoints with JUMP_LABEL=n + - powerpc/mpc5xxx: Add missing fwnode_handle_put() + - powerpc/iommu: Fix notifiers being shared by PCI and VIO buses + - ext4: fix unttached inode after power cut with orphan file feature enabled + - jfs: validate max amount of blocks before allocation. + - SUNRPC: Fix the recent bv_offset fix + - fs: lockd: avoid possible wrong NULL parameter + - NFSD: da_addr_body field missing in some GETDEVICEINFO replies + - clk: qcom: Fix SM_GPUCC_8450 dependencies + - NFS: Guard against READDIR loop when entry names exceed MAXNAMELEN + - NFSv4.2: fix handling of COPY ERR_OFFLOAD_NO_REQ + - pNFS: Fix assignment of xprtdata.cred + - cgroup/cpuset: Inherit parent's load balance state in v2 + - RDMA/qedr: Remove a duplicate assignment in irdma_query_ah() + - media: ov5640: fix low resolution image abnormal issue + - media: i2c: imx290: drop format param from imx290_ctrl_update + - media: ad5820: Drop unsupported ad5823 from i2c_ and of_device_id tables + - media: i2c: tvp5150: check return value of devm_kasprintf() + - media: v4l2-core: Fix a potential resource leak in v4l2_fwnode_parse_link() + - iommu/amd/iommu_v2: Fix pasid_state refcount dec hit 0 warning on pasid + unbind + - iommu: rockchip: Fix directory table address encoding + - drivers: usb: smsusb: fix error handling code in smsusb_init_device + - media: dib7000p: Fix potential division by zero + - media: dvb-usb: m920x: Fix a potential memory leak in m920x_i2c_xfer() + - media: cx24120: Add retval check for cx24120_message_send() + - RDMA/siw: Fabricate a GID on tun and loopback devices + - scsi: hisi_sas: Fix normally completed I/O analysed as failed + - dt-bindings: extcon: maxim,max77843: restrict connector properties + - media: amphion: reinit vpu if reqbufs output 0 + - media: amphion: add helper function to get id name + - media: verisilicon: Fix TRY_FMT on encoder OUTPUT + - media: mtk-jpeg: Fix use after free bug due to uncanceled work + - media: amphion: decoder support display delay for all formats + - media: rkvdec: increase max supported height for H.264 + - media: amphion: fix CHECKED_RETURN issues reported by coverity + - media: amphion: fix REVERSE_INULL issues reported by coverity + - media: amphion: fix UNINIT issues reported by coverity + - media: amphion: fix UNUSED_VALUE issue reported by coverity + - media: amphion: ensure the bitops don't cross boundaries + - media: mediatek: vcodec: fix AV1 decode fail for 36bit iova + - media: mediatek: vcodec: Return NULL if no vdec_fb is found + - media: mediatek: vcodec: fix potential double free + - media: mediatek: vcodec: fix resource leaks in vdec_msg_queue_init() + - usb: phy: mxs: fix getting wrong state with mxs_phy_is_otg_host() + - scsi: RDMA/srp: Fix residual handling + - scsi: ufs: Fix residual handling + - scsi: iscsi: Add length check for nlattr payload + - scsi: iscsi: Add strlen() check in iscsi_if_set{_host}_param() + - scsi: be2iscsi: Add length check when parsing nlattrs + - scsi: qla4xxx: Add length check when parsing nlattrs + - iio: accel: adxl313: Fix adxl313_i2c_id[] table + - serial: sprd: Assign sprd_port after initialized to avoid wrong access + - serial: sprd: Fix DMA buffer leak issue + - x86/APM: drop the duplicate APM_MINOR_DEV macro + - RDMA/rxe: Move work queue code to subroutines + - RDMA/rxe: Fix unsafe drain work queue code + - RDMA/rxe: Fix rxe_modify_srq + - RDMA/rxe: Fix incomplete state save in rxe_requester + - scsi: qedf: Do not touch __user pointer in + qedf_dbg_stop_io_on_error_cmd_read() directly + - scsi: qedf: Do not touch __user pointer in qedf_dbg_debug_cmd_read() + directly + - scsi: qedf: Do not touch __user pointer in qedf_dbg_fp_int_cmd_read() + directly + - RDMA/irdma: Replace one-element array with flexible-array member + - coresight: tmc: Explicit type conversions to prevent integer overflow + - interconnect: qcom: qcm2290: Enable sync state + - dma-buf/sync_file: Fix docs syntax + - driver core: test_async: fix an error code + - driver core: Call dma_cleanup() on the test_remove path + - kernfs: add stub helper for kernfs_generic_poll() + - extcon: cht_wc: add POWER_SUPPLY dependency + - iommu/mediatek: Fix two IOMMU share pagetable issue + - iommu/sprd: Add missing force_aperture + - iommu: Remove kernel-doc warnings + - bnxt_en: Update HW interface headers + - bnxt_en: Share the bar0 address with the RoCE driver + - RDMA/bnxt_re: Initialize Doorbell pacing feature + - RDMA/bnxt_re: Fix max_qp count for virtual functions + - RDMA/bnxt_re: Remove a redundant flag + - RDMA/hns: Fix port active speed + - RDMA/hns: Fix incorrect post-send with direct wqe of wr-list + - RDMA/hns: Fix inaccurate error label name in init instance + - RDMA/hns: Fix CQ and QP cache affinity + - IB/uverbs: Fix an potential error pointer dereference + - fsi: aspeed: Reset master errors after CFAM reset + - iommu/qcom: Disable and reset context bank before programming + - tty: serial: qcom-geni-serial: Poll primary sequencer irq status after + cancel_tx + - iommu/vt-d: Fix to flush cache of PASID directory table + - platform/x86: dell-sysman: Fix reference leak + - media: cec: core: add adap_nb_transmit_canceled() callback + - media: cec: core: add adap_unconfigured() callback + - media: go7007: Remove redundant if statement + - media: venus: hfi_venus: Only consider sys_idle_indicator on V1 + - arm64: defconfig: Drop CONFIG_VIDEO_IMX_MEDIA + - media: ipu-bridge: Fix null pointer deref on SSDB/PLD parsing warnings + - media: ipu3-cio2: rename cio2 bridge to ipu bridge and move out of ipu3 + - media: ipu-bridge: Do not use on stack memory for software_node.name field + - docs: ABI: fix spelling/grammar in SBEFIFO timeout interface + - USB: gadget: core: Add missing kerneldoc for vbus_work + - USB: gadget: f_mass_storage: Fix unused variable warning + - drivers: base: Free devm resources when unregistering a device + - HID: input: Support devices sending Eraser without Invert + - HID: nvidia-shield: Remove led_classdev_unregister in thunderstrike_create + - media: ov5640: Enable MIPI interface in ov5640_set_power_mipi() + - media: ov5640: Fix initial RESETB state and annotate timings + - media: Documentation: Fix [GS]_ROUTING documentation + - media: ov2680: Remove auto-gain and auto-exposure controls + - media: ov2680: Fix ov2680_bayer_order() + - media: ov2680: Fix vflip / hflip set functions + - media: ov2680: Remove VIDEO_V4L2_SUBDEV_API ifdef-s + - media: ov2680: Don't take the lock for try_fmt calls + - media: ov2680: Add ov2680_fill_format() helper function + - media: ov2680: Fix ov2680_set_fmt() which == V4L2_SUBDEV_FORMAT_TRY not + working + - media: ov2680: Fix regulators being left enabled on ov2680_power_on() errors + - media: i2c: rdacm21: Fix uninitialized value + - f2fs: fix spelling in ABI documentation + - f2fs: fix to avoid mmap vs set_compress_option case + - f2fs: don't reopen the main block device in f2fs_scan_devices + - f2fs: check zone type before sending async reset zone command + - f2fs: Only lfs mode is allowed with zoned block device feature + - Revert "f2fs: fix to do sanity check on extent cache correctly" + - f2fs: fix to account gc stats correctly + - f2fs: fix to account cp stats correctly + - cgroup:namespace: Remove unused cgroup_namespaces_init() + - coresight: trbe: Allocate platform data per device + - coresight: platform: acpi: Ignore the absence of graph + - coresight: Fix memory leak in acpi_buffer->pointer + - coresight: trbe: Fix TRBE potential sleep in atomic context + - Revert "f2fs: do not issue small discard commands during checkpoint" + - RDMA/irdma: Prevent zero-length STAG registration + - scsi: core: Use 32-bit hostnum in scsi_host_lookup() + - scsi: fcoe: Fix potential deadlock on &fip->ctlr_lock + - interconnect: qcom: sm8450: Enable sync_state + - interconnect: qcom: bcm-voter: Improve enable_mask handling + - interconnect: qcom: bcm-voter: Use enable_maks for keepalive voting + - dt-bindings: usb: samsung,exynos-dwc3: fix order of clocks on Exynos5433 + - dt-bindings: usb: samsung,exynos-dwc3: Fix Exynos5433 compatible + - serial: tegra: handle clk prepare error in tegra_uart_hw_init() + - Documentation: devices.txt: Remove ttyIOC* + - Documentation: devices.txt: Remove ttySIOC* + - Documentation: devices.txt: Fix minors for ttyCPM* + - amba: bus: fix refcount leak + - Revert "IB/isert: Fix incorrect release of isert connection" + - RDMA/siw: Balance the reference of cep->kref in the error path + - RDMA/siw: Correct wrong debug message + - RDMA/efa: Fix wrong resources deallocation order + - HID: logitech-dj: Fix error handling in logi_dj_recv_switch_to_dj_mode() + - nvmem: core: Return NULL when no nvmem layout is found + - riscv: Require FRAME_POINTER for some configurations + - f2fs: compress: fix to assign compress_level for lz4 correctly + - HID: uclogic: Correct devm device reference for hidinput input_dev name + - HID: multitouch: Correct devm device reference for hidinput input_dev name + - HID: nvidia-shield: Reference hid_device devm allocation of input_dev name + - platform/x86/amd/pmf: Fix a missing cleanup path + - workqueue: fix data race with the pwq->stats[] increment + - tick/rcu: Fix false positive "softirq work is pending" messages + - x86/speculation: Mark all Skylake CPUs as vulnerable to GDS + - tracing: Remove extra space at the end of hwlat_detector/mode + - tracing: Fix race issue between cpu buffer write and swap + - mm/pagewalk: fix bootstopping regression from extra pte_unmap() + - mtd: rawnand: brcmnand: Fix mtd oobsize + - dmaengine: idxd: Modify the dependence of attribute pasid_enabled + - phy/rockchip: inno-hdmi: use correct vco_div_5 macro on rk3328 + - phy/rockchip: inno-hdmi: round fractal pixclock in rk3328 recalc_rate + - phy/rockchip: inno-hdmi: do not power on rk3328 post pll on reg write + - rpmsg: glink: Add check for kstrdup + - leds: aw200xx: Fix error code in probe() + - leds: simatic-ipc-leds-gpio: Restore LEDS_CLASS dependency + - leds: pwm: Fix error code in led_pwm_create_fwnode() + - thermal/drivers/mediatek/lvts_thermal: Handle IRQ on all controllers + - thermal/drivers/mediatek/lvts_thermal: Honor sensors in immediate mode + - thermal/drivers/mediatek/lvts_thermal: Use offset threshold for IRQ + - thermal/drivers/mediatek/lvts_thermal: Disable undesired interrupts + - thermal/drivers/mediatek/lvts_thermal: Don't leave threshold zeroed + - thermal/drivers/mediatek/lvts_thermal: Manage threshold between sensors + - thermal/drivers/imx8mm: Suppress log message on probe deferral + - leds: multicolor: Use rounded division when calculating color components + - leds: Fix BUG_ON check for LED_COLOR_ID_MULTI that is always false + - leds: trigger: tty: Do not use LED_ON/OFF constants, use + led_blink_set_oneshot instead + - mtd: spi-nor: Check bus width while setting QE bit + - mtd: rawnand: fsmc: handle clk prepare error in fsmc_nand_resume() + - mfd: rk808: Make MFD_RK8XX tristate + - mfd: rz-mtu3: Link time dependencies + - um: Fix hostaudio build errors + - dmaengine: ste_dma40: Add missing IRQ check in d40_probe + - dmaengine: idxd: Simplify WQ attribute visibility checks + - dmaengine: idxd: Expose ATS disable knob only when WQ ATS is supported + - dmaengine: idxd: Allow ATS disable update only for configurable devices + - dmaengine: idxd: Fix issues with PRS disable sysfs knob + - remoteproc: stm32: fix incorrect optional pointers + - Drivers: hv: vmbus: Don't dereference ACPI root object handle + - um: virt-pci: fix missing declaration warning + - cpufreq: Fix the race condition while updating the transition_task of policy + - virtio_vdpa: build affinity masks conditionally + - virtio_ring: fix avail_wrap_counter in virtqueue_add_packed + - net: deal with integer overflows in kmalloc_reserve() + - igmp: limit igmpv3_newpack() packet size to IP_MAX_MTU + - netfilter: ipset: add the missing IP_SET_HASH_WITH_NET0 macro for + ip_set_hash_netportnet.c + - netfilter: nft_exthdr: Fix non-linear header modification + - netfilter: xt_u32: validate user space input + - netfilter: xt_sctp: validate the flag_info count + - skbuff: skb_segment, Call zero copy functions before using skbuff frags + - drbd: swap bvec_set_page len and offset + - gpio: zynq: restore zynq_gpio_irq_reqres/zynq_gpio_irq_relres callbacks + - igb: set max size RX buffer when store bad packet is enabled + - parisc: ccio-dma: Create private runway procfs root entry + - PM / devfreq: Fix leak in devfreq_dev_release() + - Multi-gen LRU: fix per-zone reclaim + - ALSA: pcm: Fix missing fixup call in compat hw_refine ioctl + - virtio_pmem: add the missing REQ_OP_WRITE for flush bio + - rcu: dump vmalloc memory info safely + - printk: ringbuffer: Fix truncating buffer size min_t cast + - scsi: core: Fix the scsi_set_resid() documentation + - mm/vmalloc: add a safer version of find_vm_area() for debug + - cpu/hotplug: Prevent self deadlock on CPU hot-unplug + - media: i2c: ccs: Check rules is non-NULL + - media: i2c: Add a camera sensor top level menu + - PCI: rockchip: Use 64-bit mask on MSI 64-bit PCI address + - ipmi_si: fix a memleak in try_smi_init() + - ARM: OMAP2+: Fix -Warray-bounds warning in _pwrdm_state_switch() + - riscv: Move create_tmp_mapping() to init sections + - riscv: Mark KASAN tmp* page tables variables as static + - XArray: Do not return sibling entries from xa_load() + - io_uring: fix false positive KASAN warnings + - io_uring: break iopolling on signal + - io_uring/sqpoll: fix io-wq affinity when IORING_SETUP_SQPOLL is used + - io_uring/net: don't overflow multishot recv + - io_uring/net: don't overflow multishot accept + - io_uring: break out of iowq iopoll on teardown + - backlight/gpio_backlight: Compare against struct fb_info.device + - backlight/bd6107: Compare against struct fb_info.device + - backlight/lv5207lp: Compare against struct fb_info.device + - drm/amd/display: register edp_backlight_control() for DCN301 + - xtensa: PMU: fix base address for the newer hardware + - LoongArch: mm: Add p?d_leaf() definitions + - powercap: intel_rapl: Fix invalid setting of Power Limit 4 + - powerpc/ftrace: Fix dropping weak symbols with older toolchains + - i3c: master: svc: fix probe failure when no i3c device exist + - io_uring: Don't set affinity on a dying sqpoll thread + - arm64: csum: Fix OoB access in IP checksum code for negative lengths + - ALSA: usb-audio: Fix potential memory leaks at error path for UMP open + - ALSA: seq: Fix snd_seq_expand_var_event() call to user-space + - ALSA: hda/cirrus: Fix broken audio on hardware with two CS42L42 codecs. + - selftests/landlock: Fix a resource leak + - media: dvb: symbol fixup for dvb_attach() + - media: venus: hfi_venus: Write to VIDC_CTRL_INIT after unmasking interrupts + - media: nxp: Fix wrong return pointer check in mxc_isi_crossbar_init() + - Revert "scsi: qla2xxx: Fix buffer overrun" + - scsi: mpt3sas: Perform additional retries if doorbell read returns 0 + - PCI: Free released resource after coalescing + - PCI: hv: Fix a crash in hv_pci_restore_msi_msg() during hibernation + - PCI/PM: Only read PCI_PM_CTRL register when available + - dt-bindings: PCI: qcom: Fix SDX65 compatible + - ntb: Drop packets when qp link is down + - ntb: Clean up tx tail index on link down + - ntb: Fix calculation ntb_transport_tx_free_entry() + - Revert "PCI: Mark NVIDIA T4 GPUs to avoid bus reset" + - block: fix pin count management when merging same-page segments + - block: don't add or resize partition on the disk with GENHD_FL_NO_PART + - procfs: block chmod on /proc/thread-self/comm + - parisc: Fix /proc/cpuinfo output for lscpu + - misc: fastrpc: Pass proper scm arguments for static process init + - drm/amd/display: Add smu write msg id fail retry process + - bpf: Fix issue in verifying allow_ptr_leaks + - dlm: fix plock lookup when using multiple lockspaces + - dccp: Fix out of bounds access in DCCP error handler + - x86/sev: Make enc_dec_hypercall() accept a size instead of npages + - r8169: fix ASPM-related issues on a number of systems with NIC version from + RTL8168h + - X.509: if signature is unsupported skip validation + - net: handle ARPHRD_PPP in dev_is_mac_header_xmit() + - fsverity: skip PKCS#7 parser when keyring is empty + - x86/MCE: Always save CS register on AMD Zen IF Poison errors + - crypto: af_alg - Decrement struct key.usage in alg_set_by_key_serial() + - platform/chrome: chromeos_acpi: print hex string for ACPI_TYPE_BUFFER + - mmc: renesas_sdhi: register irqs before registering controller + - pstore/ram: Check start of empty przs during init + - arm64: sdei: abort running SDEI handlers during crash + - regulator: dt-bindings: qcom,rpm: fix pattern for children + - iov_iter: Fix iov_iter_extract_pages() with zero-sized entries + - RISC-V: Add ptrace support for vectors + - s390/dcssblk: fix kernel crash with list_add corruption + - s390/ipl: add missing secure/has_secure file to ipl type 'unknown' + - s390/dasd: fix string length handling + - HID: logitech-hidpp: rework one more time the retries attempts + - crypto: stm32 - fix loop iterating through scatterlist for DMA + - crypto: stm32 - fix MDMAT condition + - cpufreq: brcmstb-avs-cpufreq: Fix -Warray-bounds bug + - of: property: fw_devlink: Add a devlink for panel followers + - USB: core: Fix oversight in SuperSpeed initialization + - x86/smp: Don't send INIT to non-present and non-booted CPUs + - x86/sgx: Break up long non-preemptible delays in sgx_vepc_release() + - x86/build: Fix linker fill bytes quirk/incompatibility for ld.lld + - perf/x86/uncore: Correct the number of CHAs on EMR + - media: ipu3-cio2: allow ipu_bridge to be a module again + - Bluetooth: msft: Extended monitor tracking by address filter + - Bluetooth: HCI: Introduce HCI_QUIRK_BROKEN_LE_CODED + - serial: sc16is7xx: remove obsolete out_thread label + - serial: sc16is7xx: fix regression with GPIO configuration + - mm/memfd: sysctl: fix MEMFD_NOEXEC_SCOPE_NOEXEC_ENFORCED + - selftests/memfd: sysctl: fix MEMFD_NOEXEC_SCOPE_NOEXEC_ENFORCED + - memfd: do not -EACCES old memfd_create() users with vm.memfd_noexec=2 + - memfd: replace ratcheting feature from vm.memfd_noexec with hierarchy + - memfd: improve userspace warnings for missing exec-related flags + - revert "memfd: improve userspace warnings for missing exec-related flags". + - drm/amd/display: Block optimize on consecutive FAMS enables + - Linux 6.5.3 + + * Mantic update: v6.5.2 upstream stable release (LP: #2035583) + - drm/amdgpu: correct vmhub index in GMC v10/11 + - erofs: ensure that the post-EOF tails are all zeroed + - ksmbd: fix wrong DataOffset validation of create context + - ksmbd: fix slub overflow in ksmbd_decode_ntlmssp_auth_blob() + - ksmbd: replace one-element array with flex-array member in struct + smb2_ea_info + - ksmbd: reduce descriptor size if remaining bytes is less than request size + - ARM: pxa: remove use of symbol_get() + - mmc: au1xmmc: force non-modular build and remove symbol_get usage + - net: enetc: use EXPORT_SYMBOL_GPL for enetc_phc_index + - rtc: ds1685: use EXPORT_SYMBOL_GPL for ds1685_rtc_poweroff + - USB: serial: option: add Quectel EM05G variant (0x030e) + - USB: serial: option: add FOXCONN T99W368/T99W373 product + - ALSA: usb-audio: Fix init call orders for UAC1 + - usb: dwc3: meson-g12a: do post init to fix broken usb after resumption + - usb: chipidea: imx: improve logic if samsung,picophy-* parameter is 0 + - HID: wacom: remove the battery when the EKR is off + - staging: rtl8712: fix race condition + - wifi: mt76: mt7921: do not support one stream on secondary antenna only + - wifi: mt76: mt7921: fix skb leak by txs missing in AMSDU + - wifi: rtw88: usb: kill and free rx urbs on probe failure + - wifi: ath11k: Don't drop tx_status when peer cannot be found + - wifi: ath11k: Cleanup mac80211 references on failure during tx_complete + - serial: qcom-geni: fix opp vote on shutdown + - serial: sc16is7xx: fix broken port 0 uart init + - serial: sc16is7xx: fix bug when first setting GPIO direction + - firmware: stratix10-svc: Fix an NULL vs IS_ERR() bug in probe + - fsi: master-ast-cf: Add MODULE_FIRMWARE macro + - tcpm: Avoid soft reset when partner does not support get_status + - dt-bindings: sc16is7xx: Add property to change GPIO function + - tracing: Zero the pipe cpumask on alloc to avoid spurious -EBUSY + - nilfs2: fix WARNING in mark_buffer_dirty due to discarded buffer reuse + - usb: typec: tcpci: clear the fault status bit + - pinctrl: amd: Don't show `Invalid config param` errors + - Linux 6.5.2 + + * Mantic update: v6.5.1 upstream stable release (LP: #2035581) + - ACPI: thermal: Drop nocrt parameter + - module: Expose module_init_layout_section() + - arm64: module: Use module_init_layout_section() to spot init sections + - ARM: module: Use module_init_layout_section() to spot init sections + - ipv6: remove hard coded limitation on ipv6_pinfo + - lockdep: fix static memory detection even more + - kallsyms: Fix kallsyms_selftest failure + - Linux 6.5.1 + + * [23.10 FEAT] [SEC2352] pkey: support EP11 API ordinal 6 for secure guests + (LP: #2029390) + - s390/zcrypt_ep11misc: support API ordinal 6 with empty pin-blob + + * [23.10 FEAT] [SEC2341] pkey: support generation of keys of type + PKEY_TYPE_EP11_AES (LP: #2028937) + - s390/pkey: fix/harmonize internal keyblob headers + - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_GENSECK2 IOCTL + - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_CLR2SECK2 IOCTL + - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_KBLOB2PROTK[23] + - s390/pkey: fix PKEY_TYPE_EP11_AES handling in PKEY_VERIFYKEY2 IOCTL + - s390/pkey: fix PKEY_TYPE_EP11_AES handling for sysfs attributes + - s390/paes: fix PKEY_TYPE_EP11_AES handling for secure keyblobs + + * [23.10 FEAT] KVM: Enable Secure Execution Crypto Passthrough - kernel part + (LP: #2003674) + - KVM: s390: interrupt: Fix single-stepping into interrupt handlers + - KVM: s390: interrupt: Fix single-stepping into program interrupt handlers + - KVM: s390: interrupt: Fix single-stepping kernel-emulated instructions + - KVM: s390: interrupt: Fix single-stepping userspace-emulated instructions + - KVM: s390: interrupt: Fix single-stepping keyless mode exits + - KVM: s390: selftests: Add selftest for single-stepping + - s390/vfio-ap: no need to check the 'E' and 'I' bits in APQSW after TAPQ + - s390/vfio-ap: clean up irq resources if possible + - s390/vfio-ap: wait for response code 05 to clear on queue reset + - s390/vfio-ap: allow deconfigured queue to be passed through to a guest + - s390/vfio-ap: remove upper limit on wait for queue reset to complete + - s390/vfio-ap: store entire AP queue status word with the queue object + - s390/vfio-ap: use work struct to verify queue reset + - s390/vfio-ap: handle queue state change in progress on reset + - s390/vfio-ap: check for TAPQ response codes 0x35 and 0x36 + - s390/uv: export uv_pin_shared for direct usage + - KVM: s390: export kvm_s390_pv*_is_protected functions + - s390/vfio-ap: make sure nib is shared + - KVM: s390: pv: relax WARN_ONCE condition for destroy fast + - s390/uv: UV feature check utility + - KVM: s390: Add UV feature negotiation + - KVM: s390: pv: Allow AP-instructions for pv-guests + + * Make backlight module auto detect dell_uart_backlight (LP: #2008882) + - SAUCE: ACPI: video: Dell AIO UART backlight detection + + * Avoid address overwrite in kernel_connect (LP: #2035163) + - net: annotate data-races around sock->ops + - net: Avoid address overwrite in kernel_connect + + * Include QCA WWAN 5G Qualcomm SDX62/DW5932e support (LP: #2035306) + - bus: mhi: host: pci_generic: Add support for Dell DW5932e + + * NULL pointer dereference on CS35L41 HDA AMP (LP: #2029199) + - ALSA: cs35l41: Use mbox command to enable speaker output for external boost + - ALSA: cs35l41: Poll for Power Up/Down rather than waiting a fixed delay + - ALSA: hda: cs35l41: Check mailbox status of pause command after firmware + load + - ALSA: hda: cs35l41: Ensure we correctly re-sync regmap before system + suspending. + - ALSA: hda: cs35l41: Ensure we pass up any errors during system suspend. + - ALSA: hda: cs35l41: Move Play and Pause into separate functions + - ALSA: hda: hda_component: Add pre and post playback hooks to hda_component + - ALSA: hda: cs35l41: Use pre and post playback hooks + - ALSA: hda: cs35l41: Rework System Suspend to ensure correct call separation + - ALSA: hda: cs35l41: Add device_link between HDA and cs35l41_hda + - ALSA: hda: cs35l41: Ensure amp is only unmuted during playback + + * Enable ASPM for NVMe behind VMD (LP: #2034504) + - Revert "UBUNTU: SAUCE: vmd: fixup bridge ASPM by driver name instead" + - Revert "UBUNTU: SAUCE: PCI/ASPM: Enable LTR for endpoints behind VMD" + - Revert "UBUNTU: SAUCE: PCI/ASPM: Enable ASPM for links under VMD domain" + - SAUCE: PCI/ASPM: Allow ASPM override over FADT default + - SAUCE: PCI: vmd: Mark ASPM override for device behind VMD bridge + + * Linux 6.2 fails to reboot with current u-boot-nezha (LP: #2021364) + - [Config] Default to performance CPUFreq governor on riscv64 + + * Enable Nezha board (LP: #1975592) + - [Config] Enable CONFIG_REGULATOR_FIXED_VOLTAGE on riscv64 + - [Config] Build in D1 clock drivers on riscv64 + - [Config] Enable CONFIG_SUN6I_RTC_CCU on riscv64 + - [Config] Enable CONFIG_SUNXI_WATCHDOG on riscv64 + - [Config] Disable SUN50I_DE2_BUS on riscv64 + - [Config] Disable unneeded sunxi pinctrl drivers on riscv64 + + * Enable Nezha board (LP: #1975592) // Enable StarFive VisionFive 2 board + (LP: #2013232) + - [Config] Enable CONFIG_SERIAL_8250_DW on riscv64 + + * Enable StarFive VisionFive 2 board (LP: #2013232) + - [Config] Enable CONFIG_PINCTRL_STARFIVE_JH7110_SYS on riscv64 + - [Config] Enable CONFIG_STARFIVE_WATCHDOG on riscv64 + + * rcu_sched detected stalls on CPUs/tasks (LP: #1967130) + - [Config] Enable virtually mapped stacks on riscv64 + + * RISC-V kernel config is out of sync with other archs (LP: #1981437) + - [Config] Sync riscv64 config with other architectures + + * Support for Intel Discrete Gale Peak2/BE200 (LP: #2028065) + - Bluetooth: btintel: Add support for Gale Peak + - Bluetooth: Add support for Gale Peak (8087:0036) + + * Missing BT IDs for support for Intel Discrete Misty Peak2/BE202 + (LP: #2033455) + - SAUCE: Bluetooth: btusb: Add support for Intel Misty Peak - 8087:0038 + + * Audio device fails to function randomly on Intel MTL platform: No CPC match + in the firmware file's manifest (LP: #2034506) + - ASoC: SOF: ipc4-topology: Add module parameter to ignore the CPC value + + * Check for changes relevant for security certifications (LP: #1945989) + - [Packaging] Add a new fips-checks script + + * Installation support for SMARC RZ/G2L platform (LP: #2030525) + - [Config] build Renesas RZ/G2L USBPHY control driver statically + + * Add support for kernels compiled with CONFIG_EFI_ZBOOT (LP: #2002226) + - [Config]: Turn on CONFIG_EFI_ZBOOT on ARM64 + + * Default module signing algo should be accelerated (LP: #2034061) + - [Config] Default module signing algo should be accelerated + + * NEW SRU rustc linux kernel requirements (LP: #1993183) + - [Packaging] re-enable Rust support + + * FATAL:credentials.cc(127)] Check failed: . : Permission denied (13) + (LP: #2017980) + - [Config] disable CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + + * update apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor4.0.0 [01/76]: add/use fns to print hash string hex value + - SAUCE: apparmor4.0.0 [02/76]: rename SK_CTX() to aa_sock and make it an + inline fn + - SAUCE: apparmor4.0.0 [03/76]: patch to provide compatibility with v2.x net + rules + - SAUCE: apparmor4.0.0 [04/76]: add user namespace creation mediation + - SAUCE: apparmor4.0.0 [05/76]: Add sysctls for additional controls of unpriv + userns restrictions + - SAUCE: apparmor4.0.0 [06/76]: af_unix mediation + - SAUCE: apparmor4.0.0 [07/76]: Add fine grained mediation of posix mqueues + - SAUCE: apparmor4.0.0 [08/76]: Stacking v38: LSM: Identify modules by more + than name + - SAUCE: apparmor4.0.0 [09/76]: Stacking v38: LSM: Add an LSM identifier for + external use + - SAUCE: apparmor4.0.0 [10/76]: Stacking v38: LSM: Identify the process + attributes for each module + - SAUCE: apparmor4.0.0 [11/76]: Stacking v38: LSM: Maintain a table of LSM + attribute data + - SAUCE: apparmor4.0.0 [12/76]: Stacking v38: proc: Use lsmids instead of lsm + names for attrs + - SAUCE: apparmor4.0.0 [13/76]: Stacking v38: integrity: disassociate + ima_filter_rule from security_audit_rule + - SAUCE: apparmor4.0.0 [14/76]: Stacking v38: LSM: Infrastructure management + of the sock security + - SAUCE: apparmor4.0.0 [15/76]: Stacking v38: LSM: Add the lsmblob data + structure. + - SAUCE: apparmor4.0.0 [16/76]: Stacking v38: LSM: provide lsm name and id + slot mappings + - SAUCE: apparmor4.0.0 [17/76]: Stacking v38: IMA: avoid label collisions with + stacked LSMs + - SAUCE: apparmor4.0.0 [18/76]: Stacking v38: LSM: Use lsmblob in + security_audit_rule_match + - SAUCE: apparmor4.0.0 [19/76]: Stacking v38: LSM: Use lsmblob in + security_kernel_act_as + - SAUCE: apparmor4.0.0 [20/76]: Stacking v38: LSM: Use lsmblob in + security_secctx_to_secid + - SAUCE: apparmor4.0.0 [21/76]: Stacking v38: LSM: Use lsmblob in + security_secid_to_secctx + - SAUCE: apparmor4.0.0 [22/76]: Stacking v38: LSM: Use lsmblob in + security_ipc_getsecid + - SAUCE: apparmor4.0.0 [23/76]: Stacking v38: LSM: Use lsmblob in + security_current_getsecid + - SAUCE: apparmor4.0.0 [24/70]: Stacking v38: LSM: Use lsmblob in + security_inode_getsecid + - SAUCE: apparmor4.0.0 [25/76]: Stacking v38: LSM: Use lsmblob in + security_cred_getsecid + - SAUCE: apparmor4.0.0 [26/76]: Stacking v38: LSM: Specify which LSM to + display + - SAUCE: apparmor4.0.0 [28/76]: Stacking v38: LSM: Ensure the correct LSM + context releaser + - SAUCE: apparmor4.0.0 [29/76]: Stacking v38: LSM: Use lsmcontext in + security_secid_to_secctx + - SAUCE: apparmor4.0.0 [30/76]: Stacking v38: LSM: Use lsmcontext in + security_inode_getsecctx + - SAUCE: apparmor4.0.0 [31/76]: Stacking v38: Use lsmcontext in + security_dentry_init_security + - SAUCE: apparmor4.0.0 [32/76]: Stacking v38: LSM: security_secid_to_secctx in + netlink netfilter + - SAUCE: apparmor4.0.0 [33/76]: Stacking v38: NET: Store LSM netlabel data in + a lsmblob + - SAUCE: apparmor4.0.0 [34/76]: Stacking v38: binder: Pass LSM identifier for + confirmation + - SAUCE: apparmor4.0.0 [35/76]: Stacking v38: LSM: security_secid_to_secctx + module selection + - SAUCE: apparmor4.0.0 [36/76]: Stacking v38: Audit: Keep multiple LSM data in + audit_names + - SAUCE: apparmor4.0.0 [37/76]: Stacking v38: Audit: Create audit_stamp + structure + - SAUCE: apparmor4.0.0 [38/76]: Stacking v38: LSM: Add a function to report + multiple LSMs + - SAUCE: apparmor4.0.0 [39/76]: Stacking v38: Audit: Allow multiple records in + an audit_buffer + - SAUCE: apparmor4.0.0 [40/76]: Stacking v38: Audit: Add record for multiple + task security contexts + - SAUCE: apparmor4.0.0 [41/76]: Stacking v38: audit: multiple subject lsm + values for netlabel + - SAUCE: apparmor4.0.0 [42/76]: Stacking v38: Audit: Add record for multiple + object contexts + - SAUCE: apparmor4.0.0 [43/76]: Stacking v38: netlabel: Use a struct lsmblob + in audit data + - SAUCE: apparmor4.0.0 [44/76]: Stacking v38: LSM: Removed scaffolding + function lsmcontext_init + - SAUCE: apparmor4.0.0 [45/76]: Stacking v38: AppArmor: Remove the exclusive + flag + - SAUCE: apparmor4.0.0 [46/76]: combine common_audit_data and + apparmor_audit_data + - SAUCE: apparmor4.0.0 [47/76]: setup slab cache for audit data + - SAUCE: apparmor4.0.0 [48/76]: rename audit_data->label to + audit_data->subj_label + - SAUCE: apparmor4.0.0 [49/76]: pass cred through to audit info. + - SAUCE: apparmor4.0.0 [50/76]: Improve debug print infrastructure + - SAUCE: apparmor4.0.0 [51/76]: add the ability for profiles to have a + learning cache + - SAUCE: apparmor4.0.0 [52/76]: enable userspace upcall for mediation + - SAUCE: apparmor4.0.0 [53/76]: cache buffers on percpu list if there is lock + contention + - SAUCE: apparmor4.0.0 [54/76]: advertise availability of exended perms + - SAUCE: apparmor4.0.0 [56/76]: cleanup: provide separate audit messages for + file and policy checks + - SAUCE: apparmor4.0.0 [57/76]: prompt - lock down prompt interface + - SAUCE: apparmor4.0.0 [58/76]: prompt - ref count pdb + - SAUCE: apparmor4.0.0 [59/76]: prompt - allow controlling of caching of a + prompt response + - SAUCE: apparmor4.0.0 [60/76]: prompt - add refcount to audit_node in prep or + reuse and delete + - SAUCE: apparmor4.0.0 [61/76]: prompt - refactor to moving caching to + uresponse + - SAUCE: apparmor4.0.0 [62/76]: prompt - Improve debug statements + - SAUCE: apparmor4.0.0 [63/76]: prompt - fix caching + - SAUCE: apparmor4.0.0 [64/76]: prompt - rework build to use append fn, to + simplify adding strings + - SAUCE: apparmor4.0.0 [65/76]: prompt - refcount notifications + - SAUCE: apparmor4.0.0 [66/76]: prompt - add the ability to reply with a + profile name + - SAUCE: apparmor4.0.0 [67/76]: prompt - fix notification cache when updating + - SAUCE: apparmor4.0.0 [68/76]: prompt - add tailglob on name for cache + support + - SAUCE: apparmor4.0.0 [69/76]: prompt - allow profiles to set prompts as + interruptible + - SAUCE: apparmor4.0.0 [74/76]: advertise disconnected.path is available + - SAUCE: apparmor4.0.0 [75/76]: fix invalid reference on profile->disconnected + - SAUCE: apparmor4.0.0 [76/76]: add io_uring mediation + - SAUCE: apparmor4.0.0: apparmor: Fix regression in mount mediation + + * update apparmor and LSM stacking patch set (LP: #2028253) // [FFe] + apparmor-4.0.0-alpha2 for unprivileged user namespace restrictions in mantic + (LP: #2032602) + - SAUCE: apparmor4.0.0 [70/76]: prompt - add support for advanced filtering of + notifications + - SAUCE: apparmor4.0.0 [71/76]: userns - add the ability to reference a global + variable for a feature value + - SAUCE: apparmor4.0.0 [72/76]: userns - make it so special unconfined + profiles can mediate user namespaces + - SAUCE: apparmor4.0.0 [73/76]: userns - allow restricting unprivileged + change_profile + + * LSM stacking and AppArmor for 6.2: additional fixes (LP: #2017903) // update + apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor4.0.0 [55/76]: fix profile verification and enable it + + * udev fails to make prctl() syscall with apparmor=0 (as used by maas by + default) (LP: #2016908) // update apparmor and LSM stacking patch set + (LP: #2028253) + - SAUCE: apparmor4.0.0 [27/76]: Stacking v38: Fix prctl() syscall with + apparmor=0 + + * Miscellaneous Ubuntu changes + - SAUCE: fan: relax strict length validation in vxlan policy + - [Config] update gcc version in annotations + - [Config] update annotations after apply 6.5 stable updates + + * Miscellaneous upstream changes + - fs/address_space: add alignment padding for i_map and i_mmap_rwsem to + mitigate a false sharing. + - mm/mmap: move vma operations to mm_struct out of the critical section of + file mapping lock + + -- Andrea Righi Thu, 14 Sep 2023 15:14:55 +0200 + +linux (6.5.0-5.5) mantic; urgency=medium + + * mantic/linux: 6.5.0-5.5 -proposed tracker (LP: #2034546) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + - debian/dkms-versions -- update from kernel-versions (main/d2023.08.23) + + -- Andrea Righi Wed, 06 Sep 2023 15:51:04 +0200 + +linux (6.5.0-4.4) mantic; urgency=medium + + * mantic/linux: 6.5.0-4.4 -proposed tracker (LP: #2034042) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/d2023.08.23) + + -- Andrea Righi Mon, 04 Sep 2023 16:55:44 +0200 + +linux (6.5.0-3.3) mantic; urgency=medium + + * mantic/linux: 6.5.0-3.3 -proposed tracker (LP: #2033904) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/d2023.08.23) + + * [23.10] Please test secure-boot and lockdown on the early 6.5 kernel (s390x) + (LP: #2026833) + - [Packaging] re-enable signing for s390x + + * Miscellaneous upstream changes + - module/decompress: use vmalloc() for zstd decompression workspace + + -- Andrea Righi Fri, 01 Sep 2023 16:15:33 +0200 + +linux (6.5.0-2.2) mantic; urgency=medium + + * mantic/linux: 6.5.0-2.2 -proposed tracker (LP: #2033240) + + * Soundwire support for Dell SKU0C87 devices (LP: #2029281) + - SAUCE: ASoC: Intel: soc-acpi: add support for Dell SKU0C87 devices + + * Fix numerous AER related issues (LP: #2033025) + - SAUCE: PCI/AER: Disable AER service during suspend, again + - SAUCE: PCI/DPC: Disable DPC service during suspend, again + + * Support Realtek RTL8852CE WiFi 6E/BT Combo (LP: #2025672) + - wifi: rtw89: debug: Fix error handling in rtw89_debug_priv_btc_manual_set() + - Bluetooth: btrtl: Load FW v2 otherwise FW v1 for RTL8852C + + [ Upstream Kernel Changes ] + + * Rebase to v6.5 + + -- Andrea Righi Mon, 28 Aug 2023 08:53:19 +0200 + +linux (6.5.0-1.1) mantic; urgency=medium + + * mantic/linux: 6.5.0-1.1 -proposed tracker (LP: #2032750) + + * Packaging resync (LP: #1786013) + - [Packaging] resync update-dkms-versions helper + - [Packaging] update variants + - debian/dkms-versions -- update from kernel-versions (main/d2023.07.26) + + * ceph: support idmapped mounts (LP: #2032959) + - SAUCE: libceph: add spinlock around osd->o_requests + - SAUCE: libceph: define struct ceph_sparse_extent and add some helpers + - SAUCE: libceph: new sparse_read op, support sparse reads on msgr2 crc + codepath + - SAUCE: libceph: support sparse reads on msgr2 secure codepath + - SAUCE: libceph: add sparse read support to msgr1 + - SAUCE: libceph: add sparse read support to OSD client + - SAUCE: ceph: add new mount option to enable sparse reads + - SAUCE: ceph: preallocate inode for ops that may create one + - SAUCE: ceph: make ceph_msdc_build_path use ref-walk + - SAUCE: libceph: add new iov_iter-based ceph_msg_data_type and + ceph_osd_data_type + - SAUCE: ceph: use osd_req_op_extent_osd_iter for netfs reads + - SAUCE: ceph: fscrypt_auth handling for ceph + - SAUCE: ceph: implement -o test_dummy_encryption mount option + - SAUCE: ceph: add fscrypt ioctls and ceph.fscrypt.auth vxattr + - SAUCE: ceph: make ioctl cmds more readable in debug log + - SAUCE: ceph: add base64 endcoding routines for encrypted names + - SAUCE: ceph: encode encrypted name in ceph_mdsc_build_path and dentry + release + - SAUCE: ceph: send alternate_name in MClientRequest + - SAUCE: ceph: decode alternate_name in lease info + - SAUCE: ceph: set DCACHE_NOKEY_NAME flag in ceph_lookup/atomic_open() + - SAUCE: ceph: make d_revalidate call fscrypt revalidator for encrypted + dentries + - SAUCE: ceph: add helpers for converting names for userland presentation + - SAUCE: ceph: make ceph_fill_trace and ceph_get_name decrypt names + - SAUCE: ceph: pass the request to parse_reply_info_readdir() + - SAUCE: ceph: add support to readdir for encrypted names + - SAUCE: ceph: create symlinks with encrypted and base64-encoded targets + - SAUCE: ceph: add some fscrypt guardrails + - SAUCE: ceph: allow encrypting a directory while not having Ax caps + - SAUCE: ceph: mark directory as non-complete after loading key + - SAUCE: ceph: size handling in MClientRequest, cap updates and inode traces + - SAUCE: ceph: handle fscrypt fields in cap messages from MDS + - SAUCE: ceph: add infrastructure for file encryption and decryption + - SAUCE: libceph: add CEPH_OSD_OP_ASSERT_VER support + - SAUCE: libceph: allow ceph_osdc_new_request to accept a multi-op read + - SAUCE: ceph: add object version support for sync read + - SAUCE: ceph: add truncate size handling support for fscrypt + - SAUCE: ceph: don't use special DIO path for encrypted inodes + - SAUCE: ceph: align data in pages in ceph_sync_write + - SAUCE: ceph: add read/modify/write to ceph_sync_write + - SAUCE: ceph: add encryption support to writepage and writepages + - SAUCE: ceph: plumb in decryption during reads + - SAUCE: ceph: invalidate pages when doing direct/sync writes + - SAUCE: ceph: add support for encrypted snapshot names + - SAUCE: ceph: prevent snapshot creation in encrypted locked directories + - SAUCE: ceph: update documentation regarding snapshot naming limitations + - SAUCE: ceph: drop messages from MDS when unmounting + - SAUCE: ceph: wait for OSD requests' callbacks to finish when unmounting + - SAUCE: ceph: fix updating i_truncate_pagecache_size for fscrypt + - SAUCE: ceph: switch ceph_lookup/atomic_open() to use new fscrypt helper + - SAUCE: libceph: do not include crypto/algapi.h + - SAUCE: rbd: bump RBD_MAX_PARENT_CHAIN_LEN to 128 + - SAUCE: ceph: dump info about cap flushes when we're waiting too long for + them + - SAUCE: mm: BUG if filemap_alloc_folio gives us a folio with a non-NULL + ->private + - SAUCE: ceph: make sure all the files successfully put before unmounting + - SAUCE: ceph: BUG if MDS changed truncate_seq with client caps still + outstanding + - SAUCE: ceph: add the *_client debug macros support + - SAUCE: ceph: pass the mdsc to several helpers + - SAUCE: ceph: rename _to_client() to _to_fs_client() + - SAUCE: ceph: move mdsmap.h to fs/ceph/ + - SAUCE: ceph: add ceph_inode_to_client() helper support + - SAUCE: ceph: print the client global_id in all the debug logs + - SAUCE: ceph: make the members in struct ceph_mds_request_args_ext an union + - SAUCE: ceph: make num_fwd and num_retry to __u32 + - SAUCE: fs: export mnt_idmap_get/mnt_idmap_put + - SAUCE: ceph: stash idmapping in mdsc request + - SAUCE: ceph: handle idmapped mounts in create_request_message() + - SAUCE: ceph: add enable_unsafe_idmap module parameter + - SAUCE: ceph: pass an idmapping to mknod/symlink/mkdir + - SAUCE: ceph: allow idmapped getattr inode op + - SAUCE: ceph: allow idmapped permission inode op + - SAUCE: ceph: pass idmap to __ceph_setattr + - SAUCE: ceph: allow idmapped setattr inode op + - SAUCE: ceph/acl: allow idmapped set_acl inode op + - SAUCE: ceph/file: allow idmapped atomic_open inode op + - SAUCE: ceph: allow idmapped mounts + + * Got soft lockup CPU if dell_uart_backlight is probed (LP: #2032174) + - SAUCE: platform/x86: dell-uart-backlight: replace chars_in_buffer() with + flush_chars() + + * Fix ACPI TAD on some Intel based systems (LP: #2032767) + - ACPI: TAD: Install SystemCMOS address space handler for ACPI000E + + * Fix unreliable ethernet cable detection on I219 NIC (LP: #2028122) + - e1000e: Use PME poll to circumvent unreliable ACPI wake + + * Fix panel brightness issues on HP laptops (LP: #2032704) + - ACPI: video: Put ACPI video and its child devices into D0 on boot + + * FATAL:credentials.cc(127)] Check failed: . : Permission denied (13) + (LP: #2017980) + - [Config] disable CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + + * Support initrdless boot on default qemu virt models and openstack + (LP: #2030745) + - [Config] set VIRTIO_BLK=y for default qemu/openstack boot + + * Miscellaneous Ubuntu changes + - [Packaging] rust: use Rust 1.68.2 + - [Packaging] depend on clang/libclang-15 for Rust + - [Config] update toolchain versions in annotations + - [Config] update annotations after rebase to v6.5-rc6 + - [Config] update toolchain version in annotations + - [Packaging] temporarily disable Rust support + - [Packaging] temporarily disable signing for ppc64el + - [Packaging] temporarily disable signing for s390x + + -- Andrea Righi Thu, 24 Aug 2023 17:47:10 +0200 + +linux (6.5.0-0.0) mantic; urgency=medium + + * Empty entry + + -- Andrea Righi Wed, 23 Aug 2023 08:14:48 +0200 + +linux-unstable (6.5.0-4.4) mantic; urgency=medium + + * mantic/linux-unstable: 6.5.0-4.4 -proposed tracker (LP: #2029086) + + * Miscellaneous Ubuntu changes + - [Packaging] Add .NOTPARALLEL + - [Packaging] Remove meaningless $(header_arch) + - [Packaging] Fix File exists error in install-arch-headers + - [Packaging] clean debian/linux-* directories + - [Packaging] remove hmake + - [Packaging] install headers to debian/linux-libc-dev directly + - [Config] define CONFIG options for arm64 instead of arm64-generic + - [Config] update annotations after rebase to v6.5-rc4 + - [Packaging] temporarily disable Rust support + + [ Upstream Kernel Changes ] + + * Rebase to v6.5-rc4 + + -- Andrea Righi Mon, 31 Jul 2023 08:41:59 +0200 + +linux-unstable (6.5.0-3.3) mantic; urgency=medium + + * mantic/linux-unstable: 6.5.0-3.3 -proposed tracker (LP: #2028779) + + * enable Rust support in the kernel (LP: #2007654) + - SAUCE: rust: support rustc-1.69.0 + - [Packaging] depend on rustc-1.69.0 + + * Packaging resync (LP: #1786013) + - [Packaging] resync update-dkms-versions helper + - [Packaging] resync getabis + + * Fix UBSAN in Intel EDAC driver (LP: #2028746) + - EDAC/i10nm: Skip the absent memory controllers + + * Ship kernel modules Zstd compressed (LP: #2028568) + - SAUCE: Support but do not require compressed modules + - [Config] Enable support for ZSTD compressed modules + - [Packaging] ZSTD compress modules + + * update apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [02/60]: rename SK_CTX() to aa_sock and make it an + inline fn + - SAUCE: apparmor3.2.0 [05/60]: Add sysctls for additional controls of unpriv + userns restrictions + - SAUCE: apparmor3.2.0 [08/60]: Stacking v38: LSM: Identify modules by more + than name + - SAUCE: apparmor3.2.0 [09/60]: Stacking v38: LSM: Add an LSM identifier for + external use + - SAUCE: apparmor3.2.0 [10/60]: Stacking v38: LSM: Identify the process + attributes for each module + - SAUCE: apparmor3.2.0 [11/60]: Stacking v38: LSM: Maintain a table of LSM + attribute data + - SAUCE: apparmor3.2.0 [12/60]: Stacking v38: proc: Use lsmids instead of lsm + names for attrs + - SAUCE: apparmor3.2.0 [13/60]: Stacking v38: integrity: disassociate + ima_filter_rule from security_audit_rule + - SAUCE: apparmor3.2.0 [14/60]: Stacking v38: LSM: Infrastructure management + of the sock security + - SAUCE: apparmor3.2.0 [15/60]: Stacking v38: LSM: Add the lsmblob data + structure. + - SAUCE: apparmor3.2.0 [16/60]: Stacking v38: LSM: provide lsm name and id + slot mappings + - SAUCE: apparmor3.2.0 [17/60]: Stacking v38: IMA: avoid label collisions with + stacked LSMs + - SAUCE: apparmor3.2.0 [18/60]: Stacking v38: LSM: Use lsmblob in + security_audit_rule_match + - SAUCE: apparmor3.2.0 [19/60]: Stacking v38: LSM: Use lsmblob in + security_kernel_act_as + - SAUCE: apparmor3.2.0 [20/60]: Stacking v38: LSM: Use lsmblob in + security_secctx_to_secid + - SAUCE: apparmor3.2.0 [21/60]: Stacking v38: LSM: Use lsmblob in + security_secid_to_secctx + - SAUCE: apparmor3.2.0 [22/60]: Stacking v38: LSM: Use lsmblob in + security_ipc_getsecid + - SAUCE: apparmor3.2.0 [23/60]: Stacking v38: LSM: Use lsmblob in + security_current_getsecid + - SAUCE: apparmor3.2.0 [24/60]: Stacking v38: LSM: Use lsmblob in + security_inode_getsecid + - SAUCE: apparmor3.2.0 [25/60]: Stacking v38: LSM: Use lsmblob in + security_cred_getsecid + - SAUCE: apparmor3.2.0 [26/60]: Stacking v38: LSM: Specify which LSM to + display + - SAUCE: apparmor3.2.0 [28/60]: Stacking v38: LSM: Ensure the correct LSM + context releaser + - SAUCE: apparmor3.2.0 [29/60]: Stacking v38: LSM: Use lsmcontext in + security_secid_to_secctx + - SAUCE: apparmor3.2.0 [30/60]: Stacking v38: LSM: Use lsmcontext in + security_inode_getsecctx + - SAUCE: apparmor3.2.0 [31/60]: Stacking v38: Use lsmcontext in + security_dentry_init_security + - SAUCE: apparmor3.2.0 [32/60]: Stacking v38: LSM: security_secid_to_secctx in + netlink netfilter + - SAUCE: apparmor3.2.0 [33/60]: Stacking v38: NET: Store LSM netlabel data in + a lsmblob + - SAUCE: apparmor3.2.0 [34/60]: Stacking v38: binder: Pass LSM identifier for + confirmation + - SAUCE: apparmor3.2.0 [35/60]: Stacking v38: LSM: security_secid_to_secctx + module selection + - SAUCE: apparmor3.2.0 [36/60]: Stacking v38: Audit: Keep multiple LSM data in + audit_names + - SAUCE: apparmor3.2.0 [37/60]: Stacking v38: Audit: Create audit_stamp + structure + - SAUCE: apparmor3.2.0 [38/60]: Stacking v38: LSM: Add a function to report + multiple LSMs + - SAUCE: apparmor3.2.0 [39/60]: Stacking v38: Audit: Allow multiple records in + an audit_buffer + - SAUCE: apparmor3.2.0 [40/60]: Stacking v38: Audit: Add record for multiple + task security contexts + - SAUCE: apparmor3.2.0 [41/60]: Stacking v38: audit: multiple subject lsm + values for netlabel + - SAUCE: apparmor3.2.0 [42/60]: Stacking v38: Audit: Add record for multiple + object contexts + - SAUCE: apparmor3.2.0 [43/60]: Stacking v38: netlabel: Use a struct lsmblob + in audit data + - SAUCE: apparmor3.2.0 [44/60]: Stacking v38: LSM: Removed scaffolding + function lsmcontext_init + - SAUCE: apparmor3.2.0 [45/60]: Stacking v38: AppArmor: Remove the exclusive + flag + - SAUCE: apparmor3.2.0 [46/60]: combine common_audit_data and + apparmor_audit_data + - SAUCE: apparmor3.2.0 [47/60]: setup slab cache for audit data + - SAUCE: apparmor3.2.0 [48/60]: rename audit_data->label to + audit_data->subj_label + - SAUCE: apparmor3.2.0 [49/60]: pass cred through to audit info. + - SAUCE: apparmor3.2.0 [50/60]: Improve debug print infrastructure + - SAUCE: apparmor3.2.0 [51/60]: add the ability for profiles to have a + learning cache + - SAUCE: apparmor3.2.0 [52/60]: enable userspace upcall for mediation + - SAUCE: apparmor3.2.0 [53/60]: cache buffers on percpu list if there is lock + contention + - SAUCE: apparmor3.2.0 [55/60]: advertise availability of exended perms + - SAUCE: apparmor3.2.0 [60/60]: [Config] enable + CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + + * LSM stacking and AppArmor for 6.2: additional fixes (LP: #2017903) // update + apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [57/60]: fix profile verification and enable it + + * udev fails to make prctl() syscall with apparmor=0 (as used by maas by + default) (LP: #2016908) // update apparmor and LSM stacking patch set + (LP: #2028253) + - SAUCE: apparmor3.2.0 [27/60]: Stacking v38: Fix prctl() syscall with + apparmor=0 + + * kinetic: apply new apparmor and LSM stacking patch set (LP: #1989983) // + update apparmor and LSM stacking patch set (LP: #2028253) + - SAUCE: apparmor3.2.0 [01/60]: add/use fns to print hash string hex value + - SAUCE: apparmor3.2.0 [03/60]: patch to provide compatibility with v2.x net + rules + - SAUCE: apparmor3.2.0 [04/60]: add user namespace creation mediation + - SAUCE: apparmor3.2.0 [06/60]: af_unix mediation + - SAUCE: apparmor3.2.0 [07/60]: Add fine grained mediation of posix mqueues + + * Miscellaneous Ubuntu changes + - [Packaging] Use consistent llvm/clang for rust + + [ Upstream Kernel Changes ] + + * Rebase to v6.5-rc3 + + -- Andrea Righi Fri, 28 Jul 2023 07:44:20 +0200 + +linux-unstable (6.5.0-2.2) mantic; urgency=medium + + * mantic/linux-unstable: 6.5.0-2.2 -proposed tracker (LP: #2027953) + + * Remove non-LPAE kernel flavor (LP: #2025265) + - [Packaging] Rename armhf generic-lpae flavor to generic + + * Please enable Renesas RZ platform serial installer (LP: #2022361) + - [Config] enable hihope RZ/G2M serial console + + * Miscellaneous Ubuntu changes + - [Packaging] snap: Remove old configs handling + - [Packaging] checks/final-checks: Remove old configs handling + - [Packaging] checks/final-checks: check existance of Makefile first + - [Packaging] checks/final-checks: Fix shellcheck issues + - [Packaging] add libstdc++-dev to the build dependencies + - [Config] update annotations after rebase to v6.5-rc2 + + * Miscellaneous upstream changes + - kbuild: rust: avoid creating temporary files + - rust: fix bindgen build error with UBSAN_BOUNDS_STRICT + + [ Upstream Kernel Changes ] + + * Rebase to v6.5-rc2 + + -- Andrea Righi Tue, 18 Jul 2023 10:14:14 +0200 + +linux-unstable (6.5.0-1.1) mantic; urgency=medium + + * mantic/linux-unstable: 6.5.0-1.1 -proposed tracker (LP: #2026689) + + * CVE-2023-31248 + - netfilter: nf_tables: do not ignore genmask when looking up chain by id + + * CVE-2023-35001 + - netfilter: nf_tables: prevent OOB access in nft_byteorder_eval + + * HDMI output with More than one child device for port B in VBT error + (LP: #2025195) + - SAUCE: drm/i915/quirks: Add multiple VBT quirk for HP ZBook Power G10 + + * CVE-2023-2640 // CVE-2023-32629 + - SAUCE: overlayfs: default to userxattr when mounted from non initial user + namespace + + * Packaging resync (LP: #1786013) + - [Packaging] resync update-dkms-versions helper + + * enable Rust support in the kernel (LP: #2007654) + - SAUCE: btf, scripts: rust: drop is_rust_module.sh + - [Packaging] add rust dependencies + + * CVE-2023-2612 + - SAUCE: shiftfs: prevent lock unbalance in shiftfs_create_object() + + * Miscellaneous Ubuntu changes + - SAUCE: shiftfs: support linux 6.5 + - [Config] update annotations after rebase to v6.5-rc1 + - [Config] temporarily disable Rust + + [ Upstream Kernel Changes ] + + * Rebase to v6.5-rc1 + + -- Andrea Righi Mon, 10 Jul 2023 09:15:26 +0200 + +linux-unstable (6.5.0-0.0) mantic; urgency=medium + + * Empty entry + + -- Andrea Righi Wed, 05 Jul 2023 12:48:39 +0200 + +linux-unstable (6.4.0-8.8) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-8.8 -proposed tracker (LP: #2025018) + + * Miscellaneous Ubuntu changes + - [Config] update toolchain version (gcc) in annotations + + [ Upstream Kernel Changes ] + + * Rebase to v6.4 + + -- Andrea Righi Mon, 26 Jun 2023 09:14:02 +0200 + +linux-unstable (6.4.0-7.7) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-7.7 -proposed tracker (LP: #2024338) + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc7 + + -- Andrea Righi Mon, 19 Jun 2023 08:51:27 +0200 + +linux-unstable (6.4.0-6.6) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-6.6 -proposed tracker (LP: #2023966) + + * Packaging resync (LP: #1786013) + - [Packaging] update annotations scripts + + * enable multi-gen LRU by default (LP: #2023629) + - [Config] enable multi-gen LRU by default + + * Fix Monitor lost after replug WD19TBS to SUT port with VGA/DVI to type-C + dongle (LP: #2021949) + - thunderbolt: Do not touch CL state configuration during discovery + - thunderbolt: Increase DisplayPort Connection Manager handshake timeout + + * Neuter signing tarballs (LP: #2012776) + - [Packaging] remove the signing tarball support + + * Enable Tracing Configs for OSNOISE and TIMERLAT (LP: #2018591) + - [Config] Enable OSNOISE_TRACER and TIMERLAT_TRACER configs + + * Miscellaneous Ubuntu changes + - [Config] Add CONFIG_AS_HAS_NON_CONST_LEB128 on riscv64 + - [Packaging] introduce do_lib_rust and enable it only on generic amd64 + - [Config] update annotations after rebase to v6.4-rc6 + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc6 + + -- Andrea Righi Thu, 15 Jun 2023 20:11:07 +0200 + +linux-unstable (6.4.0-5.5) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-5.5 -proposed tracker (LP: #2022886) + + * Miscellaneous Ubuntu changes + - [Packaging] update getabis to support linux-unstable + - UBUNTU [Config]: disable hibernation on riscv64 + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc5 + + -- Andrea Righi Tue, 06 Jun 2023 08:18:01 +0200 + +linux-unstable (6.4.0-4.4) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-4.4 -proposed tracker (LP: #2021597) + + * Miscellaneous Ubuntu changes + - [Config] udpate annotations after rebase to v6.4-rc4 + + -- Andrea Righi Tue, 30 May 2023 11:55:41 +0200 + +linux-unstable (6.4.0-3.3) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-3.3 -proposed tracker (LP: #2021497) + + * Packaging resync (LP: #1786013) + - [Packaging] resync git-ubuntu-log + - [Packaging] resync getabis + + * support python < 3.9 with annotations (LP: #2020531) + - [Packaging] kconfig/annotations.py: support older way of merging dicts + + * generate linux-lib-rust only on amd64 (LP: #2020356) + - [Packaging] generate linux-lib-rust only on amd64 + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: never drop configs that have notes different than + the parent + - [Config] drop CONFIG_SMBFS_COMMON from annotations + - [Packaging] perf: build without libtraceevent + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc4 + + -- Andrea Righi Tue, 30 May 2023 08:38:10 +0200 + +linux-unstable (6.4.0-2.2) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-2.2 -proposed tracker (LP: #2020330) + + * Computer with Intel Atom CPU will not boot with Kernel 6.2.0-20 + (LP: #2017444) + - [Config]: Disable CONFIG_INTEL_ATOMISP + + * Fix NVME storage with RAID ON disappeared under Dell factory WINPE + environment (LP: #2011768) + - SAUCE: PCI: vmd: Reset VMD config register between soft reboots + + * Miscellaneous Ubuntu changes + - [Packaging] Drop support of old config handling + - [Config] update annotations after rebase to v6.4-rc3 + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc3 + + -- Andrea Righi Mon, 22 May 2023 11:22:14 +0200 + +linux-unstable (6.4.0-1.1) mantic; urgency=medium + + * mantic/linux-unstable: 6.4.0-1.1 -proposed tracker (LP: #2019965) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - [Packaging] update helper scripts + + * Kernel 6.1 bumped the disk consumption on default images by 15% + (LP: #2015867) + - [Packaging] introduce a separate linux-lib-rust package + + * Miscellaneous Ubuntu changes + - [Config] enable CONFIG_BLK_DEV_UBLK on amd64 + - [Packaging] annotations: use python3 in the shebang + - SAUCE: blk-throttle: Fix io statistics for cgroup v1 + - [Packaging] move to v6.4 and rename to linux-unstable + - [Config] update annotations after rebase to v6.4-rc1 + - [Packaging] temporarily disable perf + - [Packaging] temporarily disable bpftool + - [Config] ppc64el: reduce CONFIG_ARCH_FORCE_MAX_ORDER from 9 to 8 + - SAUCE: perf: explicitly disable libtraceevent + + [ Upstream Kernel Changes ] + + * Rebase to v6.4-rc2 + + -- Andrea Righi Thu, 18 May 2023 07:34:09 +0200 + +linux-unstable (6.4.0-0.0) mantic; urgency=medium + + * Empty entry + + -- Andrea Righi Wed, 17 May 2023 15:29:25 +0200 + +linux-unstable (6.3.0-2.2) lunar; urgency=medium + + * lunar/linux-unstable: 6.3.0-2.2 -proposed tracker (LP: #2017788) + + * Miscellaneous Ubuntu changes + - [Packaging] move python3-dev to build-depends + + -- Andrea Righi Wed, 26 Apr 2023 21:52:12 +0200 + +linux-unstable (6.3.0-1.1) lunar; urgency=medium + + * lunar/linux-unstable: 6.3.0-1.1 -proposed tracker (LP: #2017776) + + * RFC: virtio and virtio-scsi should be built in (LP: #1685291) + - [Config] Mark CONFIG_SCSI_VIRTIO built-in + + * Debian autoreconstruct Fix restoration of execute permissions (LP: #2015498) + - [Debian] autoreconstruct - fix restoration of execute permissions + + * [SRU][Jammy] CONFIG_PCI_MESON is not enabled (LP: #2007745) + - [Config] arm64: Enable PCI_MESON module + + * vmd may fail to create sysfs entry while `pci_rescan_bus()` called in some + other drivers like wwan (LP: #2011389) + - SAUCE: PCI: vmd: guard device addition and removal + + * Lunar update: v6.2.9 upstream stable release (LP: #2016877) + - [Config] ppc64: updateconfigs following v6.2.9 stable updates + + * Lunar update: v6.2.8 upstream stable release (LP: #2016876) + - [Config] ppc64: updateconfigs following v6.2.8 stable updates + + * Miscellaneous Ubuntu changes + - [Packaging] Move final-checks script to debian/scripts/checks + - [Packaging] checks/final-checks: Honor 'do_skip_checks' + - [Packaging] Drop wireguard DKMS + - [Packaging] Remove update-version-dkms + - [Packaging] debian/rules: Add DKMS info to 'printenv' output + - [Packaging] ignore KBUILD_VERBOSE in arch-has-odm-enabled.sh + - SAUCE: shiftfs: support linux 6.3 + - [Packaging] move to v6.3 and rename to linux-unstable + - [Config] latency-related optimizations + - [Config] update annotations after rebase to v6.3 + - [Packaging] temporarily disable dkms + + [ Upstream Kernel Changes ] + + * Rebase to v6.3 + + -- Andrea Righi Wed, 26 Apr 2023 14:53:52 +0200 + +linux-unstable (6.3.0-0.0) lunar; urgency=medium + + * Empty entry + + -- Andrea Righi Tue, 25 Apr 2023 10:24:12 +0200 + +linux (6.2.0-21.21) lunar; urgency=medium + + * lunar/linux: 6.2.0-21.21 -proposed tracker (LP: #2016249) + + * efivarfs:efivarfs.sh in ubuntu_kernel_selftests crash L-6.2 ARM64 node + dazzle (rcu_preempt detected stalls) (LP: #2015741) + - efi/libstub: smbios: Use length member instead of record struct size + - arm64: efi: Use SMBIOS processor version to key off Ampere quirk + - efi/libstub: smbios: Drop unused 'recsize' parameter + + * Miscellaneous Ubuntu changes + - SAUCE: selftests/bpf: ignore pointer types check with clang + - SAUCE: selftests/bpf: avoid conflicting data types in profiler.inc.h + - [Packaging] get rid of unnecessary artifacts in linux-headers + + * Miscellaneous upstream changes + - Revert "UBUNTU: SAUCE: Revert "efi: random: refresh non-volatile random seed + when RNG is initialized"" + - Revert "UBUNTU: SAUCE: Revert "efi: random: fix NULL-deref when refreshing + seed"" + + -- Andrea Righi Fri, 14 Apr 2023 12:11:49 +0200 + +linux (6.2.0-20.20) lunar; urgency=medium + + * lunar/linux: 6.2.0-20.20 -proposed tracker (LP: #2015429) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/master) + + * FTBFS with different dkms or when makeflags are set (LP: #2015361) + - [Packaging] FTBFS with different dkms or when makeflags are set + + * expoline.o is packaged unconditionally for s390x (LP: #2013209) + - [Packaging] Copy expoline.o only when produced by the build + + * net:l2tp.sh failure with lunar:linux 6.2 (LP: #2013014) + - SAUCE: l2tp: generate correct module alias strings + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: prevent duplicate include lines + + -- Andrea Righi Thu, 06 Apr 2023 08:33:14 +0200 + +linux (6.2.0-19.19) lunar; urgency=medium + + * lunar/linux: 6.2.0-19.19 -proposed tracker (LP: #2012488) + + * Neuter signing tarballs (LP: #2012776) + - [Packaging] neuter the signing tarball + + * LSM stacking and AppArmor refresh for 6.2 kernel (LP: #2012136) + - Revert "UBUNTU: [Config] define CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS" + - Revert "UBUNTU: SAUCE: apparmor: add user namespace creation mediation" + - Revert "UBUNTU: SAUCE: apparmor: Add fine grained mediation of posix + mqueues" + - Revert "UBUNTU: SAUCE: Revert "apparmor: make __aa_path_perm() static"" + - Revert "UBUNTU: SAUCE: LSM: Specify which LSM to display (using struct cred + as input)" + - Revert "UBUNTU: SAUCE: apparmor: Fix build error, make sk parameter const" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in smk_netlbl_mls()" + - Revert "UBUNTU: SAUCE: LSM: change ima_read_file() to use lsmblob" + - Revert "UBUNTU: SAUCE: apparmor: rename kzfree() to kfree_sensitive()" + - Revert "UBUNTU: SAUCE: AppArmor: Remove the exclusive flag" + - Revert "UBUNTU: SAUCE: LSM: Add /proc attr entry for full LSM context" + - Revert "UBUNTU: SAUCE: Audit: Fix incorrect static inline function + declration." + - Revert "UBUNTU: SAUCE: Audit: Fix for missing NULL check" + - Revert "UBUNTU: SAUCE: Audit: Add a new record for multiple object LSM + attributes" + - Revert "UBUNTU: SAUCE: Audit: Add new record for multiple process LSM + attributes" + - Revert "UBUNTU: SAUCE: NET: Store LSM netlabel data in a lsmblob" + - Revert "UBUNTU: SAUCE: LSM: security_secid_to_secctx in netlink netfilter" + - Revert "UBUNTU: SAUCE: LSM: Use lsmcontext in security_inode_getsecctx" + - Revert "UBUNTU: SAUCE: LSM: Use lsmcontext in security_secid_to_secctx" + - Revert "UBUNTU: SAUCE: LSM: Ensure the correct LSM context releaser" + - Revert "UBUNTU: SAUCE: LSM: Specify which LSM to display" + - Revert "UBUNTU: SAUCE: IMA: Change internal interfaces to use lsmblobs" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_cred_getsecid" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_inode_getsecid" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_task_getsecid" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_ipc_getsecid" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_secid_to_secctx" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_secctx_to_secid" + - Revert "UBUNTU: SAUCE: net: Prepare UDS for security module stacking" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_kernel_act_as" + - Revert "UBUNTU: SAUCE: LSM: Use lsmblob in security_audit_rule_match" + - Revert "UBUNTU: SAUCE: LSM: Create and manage the lsmblob data structure." + - Revert "UBUNTU: SAUCE: LSM: Infrastructure management of the sock security" + - Revert "UBUNTU: SAUCE: apparmor: LSM stacking: switch from SK_CTX() to + aa_sock()" + - Revert "UBUNTU: SAUCE: apparmor: rename aa_sock() to aa_unix_sk()" + - Revert "UBUNTU: SAUCE: apparmor: disable showing the mode as part of a secid + to secctx" + - Revert "UBUNTU: SAUCE: apparmor: fix use after free in sk_peer_label" + - Revert "UBUNTU: SAUCE: apparmor: af_unix mediation" + - Revert "UBUNTU: SAUCE: apparmor: patch to provide compatibility with v2.x + net rules" + - Revert "UBUNTU: SAUCE: apparmor: add/use fns to print hash string hex value" + - SAUCE: apparmor: rename SK_CTX() to aa_sock and make it an inline fn + - SAUCE: apparmor: Add sysctls for additional controls of unpriv userns + restrictions + - SAUCE: Stacking v38: LSM: Identify modules by more than name + - SAUCE: Stacking v38: LSM: Add an LSM identifier for external use + - SAUCE: Stacking v38: LSM: Identify the process attributes for each module + - SAUCE: Stacking v38: LSM: Maintain a table of LSM attribute data + - SAUCE: Stacking v38: proc: Use lsmids instead of lsm names for attrs + - SAUCE: Stacking v38: integrity: disassociate ima_filter_rule from + security_audit_rule + - SAUCE: Stacking v38: LSM: Infrastructure management of the sock security + - SAUCE: Stacking v38: LSM: Add the lsmblob data structure. + - SAUCE: Stacking v38: LSM: provide lsm name and id slot mappings + - SAUCE: Stacking v38: IMA: avoid label collisions with stacked LSMs + - SAUCE: Stacking v38: LSM: Use lsmblob in security_audit_rule_match + - SAUCE: Stacking v38: LSM: Use lsmblob in security_kernel_act_as + - SAUCE: Stacking v38: LSM: Use lsmblob in security_secctx_to_secid + - SAUCE: Stacking v38: LSM: Use lsmblob in security_secid_to_secctx + - SAUCE: Stacking v38: LSM: Use lsmblob in security_ipc_getsecid + - SAUCE: Stacking v38: LSM: Use lsmblob in security_current_getsecid + - SAUCE: Stacking v38: LSM: Use lsmblob in security_inode_getsecid + - SAUCE: Stacking v38: LSM: Use lsmblob in security_cred_getsecid + - SAUCE: Stacking v38: LSM: Specify which LSM to display + - SAUCE: Stacking v38: LSM: Ensure the correct LSM context releaser + - SAUCE: Stacking v38: LSM: Use lsmcontext in security_secid_to_secctx + - SAUCE: Stacking v38: LSM: Use lsmcontext in security_inode_getsecctx + - SAUCE: Stacking v38: Use lsmcontext in security_dentry_init_security + - SAUCE: Stacking v38: LSM: security_secid_to_secctx in netlink netfilter + - SAUCE: Stacking v38: NET: Store LSM netlabel data in a lsmblob + - SAUCE: Stacking v38: binder: Pass LSM identifier for confirmation + - SAUCE: Stacking v38: LSM: security_secid_to_secctx module selection + - SAUCE: Stacking v38: Audit: Keep multiple LSM data in audit_names + - SAUCE: Stacking v38: Audit: Create audit_stamp structure + - SAUCE: Stacking v38: LSM: Add a function to report multiple LSMs + - SAUCE: Stacking v38: Audit: Allow multiple records in an audit_buffer + - SAUCE: Stacking v38: Audit: Add record for multiple task security contexts + - SAUCE: Stacking v38: audit: multiple subject lsm values for netlabel + - SAUCE: Stacking v38: Audit: Add record for multiple object contexts + - SAUCE: Stacking v38: netlabel: Use a struct lsmblob in audit data + - SAUCE: Stacking v38: LSM: Removed scaffolding function lsmcontext_init + - SAUCE: Stacking v38: AppArmor: Remove the exclusive flag + - SAUCE: apparmor: combine common_audit_data and apparmor_audit_data + - SAUCE: apparmor: setup slab cache for audit data + - SAUCE: apparmor: rename audit_data->label to audit_data->subj_label + - SAUCE: apparmor: pass cred through to audit info. + - SAUCE: apparmor: Improve debug print infrastructure + - SAUCE: apparmor: add the ability for profiles to have a learning cache + - SAUCE: apparmor: enable userspace upcall for mediation + - SAUCE: apparmor: cache buffers on percpu list if there is lock contention + - SAUCE: apparmor: fix policy_compat permission remap with extended + permissions + - SAUCE: apparmor: advertise availability of exended perms + - [Config] define CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + + * kinetic: apply new apparmor and LSM stacking patch set (LP: #1989983) // LSM + stacking and AppArmor refresh for 6.2 kernel (LP: #2012136) + - SAUCE: apparmor: add/use fns to print hash string hex value + - SAUCE: apparmor: patch to provide compatibility with v2.x net rules + - SAUCE: apparmor: add user namespace creation mediation + - SAUCE: apparmor: af_unix mediation + - SAUCE: apparmor: Add fine grained mediation of posix mqueues + + * devlink_port_split from ubuntu_kernel_selftests.net fails on hirsute + (KeyError: 'flavour') (LP: #1937133) + - selftests: net: devlink_port_split.py: skip test if no suitable device + available + + * NFS deathlock with last Kernel 5.4.0-144.161 and 5.15.0-67.74 (LP: #2009325) + - NFS: Correct timing for assigning access cache timestamp + + -- Andrea Righi Sat, 25 Mar 2023 07:37:30 +0100 + +linux (6.2.0-18.18) lunar; urgency=medium + + * lunar/linux: 6.2.0-18.18 -proposed tracker (LP: #2011750) + + * lunar/linux 6.2 fails to boot on arm64 (LP: #2011748) + - SAUCE: Revert "efi: random: fix NULL-deref when refreshing seed" + - SAUCE: Revert "efi: random: refresh non-volatile random seed when RNG is + initialized" + + -- Andrea Righi Wed, 15 Mar 2023 23:54:18 +0100 + +linux (6.2.0-17.17) lunar; urgency=medium + + * lunar/linux: 6.2.0-17.17 -proposed tracker (LP: #2011593) + + * lunar/linux 6.2 fails to boot on ppc64el (LP: #2011413) + - SAUCE: Revert "powerpc: remove STACK_FRAME_OVERHEAD" + - SAUCE: Revert "powerpc/pseries: hvcall stack frame overhead" + + * Speaker / Audio/Mic mute LED don't work on a HP platform (LP: #2011379) + - SAUCE: ALSA: hda/realtek: fix speaker, mute/micmute LEDs not work on a HP + platform + + * Some QHD panels fail to refresh when PSR2 enabled (LP: #2009014) + - SAUCE: drm/i915/psr: Use calculated io and fast wake lines + + * Lunar update: v6.2.6 upstream stable release (LP: #2011431) + - tpm: disable hwrng for fTPM on some AMD designs + - wifi: cfg80211: Partial revert "wifi: cfg80211: Fix use after free for wext" + - staging: rtl8192e: Remove function ..dm_check_ac_dc_power calling a script + - staging: rtl8192e: Remove call_usermodehelper starting RadioPower.sh + - Linux 6.2.6 + + * Lunar update: v6.2.5 upstream stable release (LP: #2011430) + - net/sched: Retire tcindex classifier + - auxdisplay: hd44780: Fix potential memory leak in hd44780_remove() + - fs/jfs: fix shift exponent db_agl2size negative + - driver: soc: xilinx: fix memory leak in xlnx_add_cb_for_notify_event() + - f2fs: don't rely on F2FS_MAP_* in f2fs_iomap_begin + - f2fs: fix to avoid potential deadlock + - objtool: Fix memory leak in create_static_call_sections() + - soc: mediatek: mtk-pm-domains: Allow mt8186 ADSP default power on + - soc: qcom: socinfo: Fix soc_id order + - memory: renesas-rpc-if: Split-off private data from struct rpcif + - memory: renesas-rpc-if: Move resource acquisition to .probe() + - soc: mediatek: mtk-svs: Enable the IRQ later + - pwm: sifive: Always let the first pwm_apply_state succeed + - pwm: stm32-lp: fix the check on arr and cmp registers update + - f2fs: introduce trace_f2fs_replace_atomic_write_block + - f2fs: clear atomic_write_task in f2fs_abort_atomic_write() + - soc: mediatek: mtk-svs: restore default voltages when svs_init02() fail + - soc: mediatek: mtk-svs: reset svs when svs_resume() fail + - soc: mediatek: mtk-svs: Use pm_runtime_resume_and_get() in svs_init01() + - f2fs: fix to do sanity check on extent cache correctly + - fs: f2fs: initialize fsdata in pagecache_write() + - f2fs: allow set compression option of files without blocks + - f2fs: fix to abort atomic write only during do_exist() + - um: vector: Fix memory leak in vector_config + - ubi: ensure that VID header offset + VID header size <= alloc, size + - ubifs: Fix build errors as symbol undefined + - ubifs: Fix memory leak in ubifs_sysfs_init() + - ubifs: Rectify space budget for ubifs_symlink() if symlink is encrypted + - ubifs: Rectify space budget for ubifs_xrename() + - ubifs: Fix wrong dirty space budget for dirty inode + - ubifs: do_rename: Fix wrong space budget when target inode's nlink > 1 + - ubifs: Reserve one leb for each journal head while doing budget + - ubi: Fix use-after-free when volume resizing failed + - ubi: Fix unreferenced object reported by kmemleak in ubi_resize_volume() + - ubifs: Fix memory leak in alloc_wbufs() + - ubi: Fix possible null-ptr-deref in ubi_free_volume() + - ubifs: Re-statistic cleaned znode count if commit failed + - ubifs: dirty_cow_znode: Fix memleak in error handling path + - ubifs: ubifs_writepage: Mark page dirty after writing inode failed + - ubifs: ubifs_releasepage: Remove ubifs_assert(0) to valid this process + - ubi: fastmap: Fix missed fm_anchor PEB in wear-leveling after disabling + fastmap + - ubi: Fix UAF wear-leveling entry in eraseblk_count_seq_show() + - ubi: ubi_wl_put_peb: Fix infinite loop when wear-leveling work failed + - f2fs: fix to handle F2FS_IOC_START_ATOMIC_REPLACE in f2fs_compat_ioctl() + - f2fs: fix to avoid potential memory corruption in __update_iostat_latency() + - f2fs: fix to update age extent correctly during truncation + - f2fs: fix to update age extent in f2fs_do_zero_range() + - soc: qcom: stats: Populate all subsystem debugfs files + - f2fs: introduce IS_F2FS_IPU_* macro + - f2fs: fix to set ipu policy + - ext4: use ext4_fc_tl_mem in fast-commit replay path + - ext4: don't show commit interval if it is zero + - netfilter: nf_tables: allow to fetch set elements when table has an owner + - x86: um: vdso: Add '%rcx' and '%r11' to the syscall clobber list + - um: virtio_uml: free command if adding to virtqueue failed + - um: virtio_uml: mark device as unregistered when breaking it + - um: virtio_uml: move device breaking into workqueue + - um: virt-pci: properly remove PCI device from bus + - f2fs: synchronize atomic write aborts + - watchdog: rzg2l_wdt: Issue a reset before we put the PM clocks + - watchdog: rzg2l_wdt: Handle TYPE-B reset for RZ/V2M + - watchdog: at91sam9_wdt: use devm_request_irq to avoid missing free_irq() in + error path + - watchdog: Fix kmemleak in watchdog_cdev_register + - watchdog: pcwd_usb: Fix attempting to access uninitialized memory + - watchdog: sbsa_wdog: Make sure the timeout programming is within the limits + - netfilter: ctnetlink: fix possible refcount leak in + ctnetlink_create_conntrack() + - netfilter: conntrack: fix rmmod double-free race + - netfilter: ip6t_rpfilter: Fix regression with VRF interfaces + - netfilter: ebtables: fix table blob use-after-free + - netfilter: xt_length: use skb len to match in length_mt6 + - netfilter: ctnetlink: make event listener tracking global + - netfilter: x_tables: fix percpu counter block leak on error path when + creating new netns + - swiotlb: mark swiotlb_memblock_alloc() as __init + - ptp: vclock: use mutex to fix "sleep on atomic" bug + - drm/i915: move a Kconfig symbol to unbreak the menu presentation + - ipv6: Add lwtunnel encap size of all siblings in nexthop calculation + - drm/i915/xelpmp: Consider GSI offset when doing MCR lookups + - octeontx2-pf: Recalculate UDP checksum for ptp 1-step sync packet + - net: sunhme: Fix region request + - sctp: add a refcnt in sctp_stream_priorities to avoid a nested loop + - octeontx2-pf: Use correct struct reference in test condition + - net: fix __dev_kfree_skb_any() vs drop monitor + - 9p/xen: fix version parsing + - 9p/xen: fix connection sequence + - 9p/rdma: unmap receive dma buffer in rdma_request()/post_recv() + - spi: tegra210-quad: Fix validate combined sequence + - mlx5: fix skb leak while fifo resync and push + - mlx5: fix possible ptp queue fifo use-after-free + - net/mlx5: ECPF, wait for VF pages only after disabling host PFs + - net/mlx5e: Verify flow_source cap before using it + - net/mlx5: Geneve, Fix handling of Geneve object id as error code + - ext4: fix incorrect options show of original mount_opt and extend mount_opt2 + - nfc: fix memory leak of se_io context in nfc_genl_se_io + - net/sched: transition act_pedit to rcu and percpu stats + - net/sched: act_pedit: fix action bind logic + - net/sched: act_mpls: fix action bind logic + - net/sched: act_sample: fix action bind logic + - net: dsa: seville: ignore mscc-miim read errors from Lynx PCS + - net: dsa: felix: fix internal MDIO controller resource length + - ARM: dts: aspeed: p10bmc: Update battery node name + - ARM: dts: spear320-hmi: correct STMPE GPIO compatible + - tcp: tcp_check_req() can be called from process context + - vc_screen: modify vcs_size() handling in vcs_read() + - spi: tegra210-quad: Fix iterator outside loop + - rtc: sun6i: Always export the internal oscillator + - genirq/ipi: Fix NULL pointer deref in irq_data_get_affinity_mask() + - scsi: ipr: Work around fortify-string warning + - scsi: mpi3mr: Fix an issue found by KASAN + - scsi: mpi3mr: Use number of bits to manage bitmap sizes + - rtc: allow rtc_read_alarm without read_alarm callback + - io_uring: fix size calculation when registering buf ring + - loop: loop_set_status_from_info() check before assignment + - ASoC: adau7118: don't disable regulators on device unbind + - ASoC: apple: mca: Fix final status read on SERDES reset + - ASoC: apple: mca: Fix SERDES reset sequence + - ASoC: apple: mca: Improve handling of unavailable DMA channels + - nvme: bring back auto-removal of deleted namespaces during sequential scan + - nvme-tcp: don't access released socket during error recovery + - nvme-fabrics: show well known discovery name + - ASoC: zl38060 add gpiolib dependency + - ASoC: mediatek: mt8195: add missing initialization + - thermal: intel: quark_dts: fix error pointer dereference + - thermal: intel: BXT_PMIC: select REGMAP instead of depending on it + - cpufreq: apple-soc: Fix an IS_ERR() vs NULL check + - tracing: Add NULL checks for buffer in ring_buffer_free_read_page() + - kernel/printk/index.c: fix memory leak with using debugfs_lookup() + - firmware/efi sysfb_efi: Add quirk for Lenovo IdeaPad Duet 3 + - bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC + support + - mfd: arizona: Use pm_runtime_resume_and_get() to prevent refcnt leak + - IB/hfi1: Update RMT size calculation + - iommu: Remove deferred attach check from __iommu_detach_device() + - PCI/ACPI: Account for _S0W of the target bridge in acpi_pci_bridge_d3() + - media: uvcvideo: Remove format descriptions + - media: uvcvideo: Handle cameras with invalid descriptors + - media: uvcvideo: Handle errors from calls to usb_string + - media: uvcvideo: Quirk for autosuspend in Logitech B910 and C910 + - media: uvcvideo: Silence memcpy() run-time false positive warnings + - USB: fix memory leak with using debugfs_lookup() + - cacheinfo: Fix shared_cpu_map to handle shared caches at different levels + - usb: fotg210: List different variants + - dt-bindings: usb: Add device id for Genesys Logic hub controller + - staging: emxx_udc: Add checks for dma_alloc_coherent() + - tty: fix out-of-bounds access in tty_driver_lookup_tty() + - tty: serial: fsl_lpuart: disable the CTS when send break signal + - serial: sc16is7xx: setup GPIO controller later in probe + - mei: bus-fixup:upon error print return values of send and receive + - tools/iio/iio_utils:fix memory leak + - bus: mhi: ep: Fix the debug message for MHI_PKT_TYPE_RESET_CHAN_CMD cmd + - iio: accel: mma9551_core: Prevent uninitialized variable in + mma9551_read_status_word() + - iio: accel: mma9551_core: Prevent uninitialized variable in + mma9551_read_config_word() + - media: uvcvideo: Add GUID for BGRA/X 8:8:8:8 + - soundwire: bus_type: Avoid lockdep assert in sdw_drv_probe() + - PCI/portdrv: Prevent LS7A Bus Master clearing on shutdown + - PCI: loongson: Prevent LS7A MRRS increases + - staging: pi433: fix memory leak with using debugfs_lookup() + - USB: dwc3: fix memory leak with using debugfs_lookup() + - USB: chipidea: fix memory leak with using debugfs_lookup() + - USB: ULPI: fix memory leak with using debugfs_lookup() + - USB: uhci: fix memory leak with using debugfs_lookup() + - USB: sl811: fix memory leak with using debugfs_lookup() + - USB: fotg210: fix memory leak with using debugfs_lookup() + - USB: isp116x: fix memory leak with using debugfs_lookup() + - USB: isp1362: fix memory leak with using debugfs_lookup() + - USB: gadget: gr_udc: fix memory leak with using debugfs_lookup() + - USB: gadget: bcm63xx_udc: fix memory leak with using debugfs_lookup() + - USB: gadget: lpc32xx_udc: fix memory leak with using debugfs_lookup() + - USB: gadget: pxa25x_udc: fix memory leak with using debugfs_lookup() + - USB: gadget: pxa27x_udc: fix memory leak with using debugfs_lookup() + - usb: host: xhci: mvebu: Iterate over array indexes instead of using pointer + math + - USB: ene_usb6250: Allocate enough memory for full object + - usb: uvc: Enumerate valid values for color matching + - usb: gadget: uvc: Make bSourceID read/write + - PCI: Align extra resources for hotplug bridges properly + - PCI: Take other bus devices into account when distributing resources + - PCI: Distribute available resources for root buses, too + - tty: pcn_uart: fix memory leak with using debugfs_lookup() + - misc: vmw_balloon: fix memory leak with using debugfs_lookup() + - drivers: base: component: fix memory leak with using debugfs_lookup() + - drivers: base: dd: fix memory leak with using debugfs_lookup() + - kernel/fail_function: fix memory leak with using debugfs_lookup() + - PCI: loongson: Add more devices that need MRRS quirk + - PCI: Add ACS quirk for Wangxun NICs + - PCI: pciehp: Add Qualcomm quirk for Command Completed erratum + - phy: rockchip-typec: Fix unsigned comparison with less than zero + - RDMA/cma: Distinguish between sockaddr_in and sockaddr_in6 by size + - soundwire: cadence: Remove wasted space in response_buf + - soundwire: cadence: Drain the RX FIFO after an IO timeout + - eth: fealnx: bring back this old driver + - net: tls: avoid hanging tasks on the tx_lock + - x86/resctl: fix scheduler confusion with 'current' + - vDPA/ifcvf: decouple hw features manipulators from the adapter + - vDPA/ifcvf: decouple config space ops from the adapter + - vDPA/ifcvf: alloc the mgmt_dev before the adapter + - vDPA/ifcvf: decouple vq IRQ releasers from the adapter + - vDPA/ifcvf: decouple config IRQ releaser from the adapter + - vDPA/ifcvf: decouple vq irq requester from the adapter + - vDPA/ifcvf: decouple config/dev IRQ requester and vectors allocator from the + adapter + - vDPA/ifcvf: ifcvf_request_irq works on ifcvf_hw + - vDPA/ifcvf: manage ifcvf_hw in the mgmt_dev + - vDPA/ifcvf: allocate the adapter in dev_add() + - drm/display/dp_mst: Add drm_atomic_get_old_mst_topology_state() + - drm/display/dp_mst: Fix down/up message handling after sink disconnect + - drm/display/dp_mst: Fix down message handling after a packet reception error + - drm/display/dp_mst: Fix payload addition on a disconnected sink + - drm/i915/dp_mst: Add the MST topology state for modesetted CRTCs + - drm/display/dp_mst: Handle old/new payload states in drm_dp_remove_payload() + - drm/i915/dp_mst: Fix payload removal during output disabling + - drm/i915: Fix system suspend without fbdev being initialized + - media: uvcvideo: Fix race condition with usb_kill_urb + - arm64: efi: Make efi_rt_lock a raw_spinlock + - usb: gadget: uvc: fix missing mutex_unlock() if kstrtou8() fails + - Linux 6.2.5 + + * Lunar update: v6.2.4 upstream stable release (LP: #2011428) + - Revert "blk-cgroup: synchronize pd_free_fn() from blkg_free_workfn() and + blkcg_deactivate_policy()" + - Revert "blk-cgroup: dropping parent refcount after pd_free_fn() is done" + - Linux 6.2.4 + + * Lunar update: v6.2.3 upstream stable release (LP: #2011425) + - HID: asus: use spinlock to protect concurrent accesses + - HID: asus: use spinlock to safely schedule workers + - iommu/amd: Fix error handling for pdev_pri_ats_enable() + - iommu/amd: Skip attach device domain is same as new domain + - iommu/amd: Improve page fault error reporting + - iommu: Attach device group to old domain in error path + - powerpc/mm: Rearrange if-else block to avoid clang warning + - ata: ahci: Revert "ata: ahci: Add Tiger Lake UP{3,4} AHCI controller" + - ARM: OMAP2+: Fix memory leak in realtime_counter_init() + - arm64: dts: qcom: qcs404: use symbol names for PCIe resets + - arm64: dts: qcom: msm8996-tone: Fix USB taking 6 minutes to wake up + - arm64: dts: qcom: sm6115: Fix UFS node + - arm64: dts: qcom: sm6115: Provide xo clk to rpmcc + - arm64: dts: qcom: sm8150-kumano: Panel framebuffer is 2.5k instead of 4k + - arm64: dts: qcom: pmi8950: Correct rev_1250v channel label to mv + - arm64: dts: qcom: sm6350: Fix up the ramoops node + - arm64: dts: qcom: sdm670-google-sargo: keep pm660 ldo8 on + - arm64: dts: qcom: Re-enable resin on MSM8998 and SDM845 boards + - arm64: dts: qcom: sm8350-sagami: Configure SLG51000 PMIC on PDX215 + - arm64: dts: qcom: sm8350-sagami: Add GPIO line names for PMIC GPIOs + - arm64: dts: qcom: sm8350-sagami: Rectify GPIO keys + - arm64: dts: qcom: sm6350-lena: Flatten gpio-keys pinctrl state + - arm64: dts: qcom: sm6125: Reorder HSUSB PHY clocks to match bindings + - arm64: dts: qcom: sm6125-seine: Clean up gpio-keys (volume down) + - arm64: dts: imx8m: Align SoC unique ID node unit address + - ARM: zynq: Fix refcount leak in zynq_early_slcr_init + - fs: dlm: fix return value check in dlm_memory_init() + - arm64: dts: mediatek: mt8195: Add power domain to U3PHY1 T-PHY + - arm64: dts: mediatek: mt8183: Fix systimer 13 MHz clock description + - arm64: dts: mediatek: mt8192: Fix systimer 13 MHz clock description + - arm64: dts: mediatek: mt8195: Fix systimer 13 MHz clock description + - arm64: dts: mediatek: mt8186: Fix systimer 13 MHz clock description + - arm64: dts: qcom: sdm845-db845c: fix audio codec interrupt pin name + - arm64: dts: qcom: sdm845-xiaomi-beryllium: fix audio codec interrupt pin + name + - x86/acpi/boot: Do not register processors that cannot be onlined for x2APIC + - arm64: dts: qcom: sc7180: correct SPMI bus address cells + - arm64: dts: qcom: sc7280: correct SPMI bus address cells + - arm64: dts: qcom: sc8280xp: correct SPMI bus address cells + - arm64: dts: qcom: sm8450: correct Soundwire wakeup interrupt name + - arm64: dts: qcom: sdm845: make DP node follow the schema + - arm64: dts: qcom: msm8996-oneplus-common: drop vdda-supply from DSI PHY + - arm64: dts: qcom: sc8280xp: Vote for CX in USB controllers + - arm64: dts: meson-gxl: jethub-j80: Fix WiFi MAC address node + - arm64: dts: meson-gxl: jethub-j80: Fix Bluetooth MAC node name + - arm64: dts: meson-axg: jethub-j1xx: Fix MAC address node names + - arm64: dts: meson-gx: Fix Ethernet MAC address unit name + - arm64: dts: meson-g12a: Fix internal Ethernet PHY unit name + - arm64: dts: meson-gx: Fix the SCPI DVFS node name and unit address + - cpuidle, intel_idle: Fix CPUIDLE_FLAG_IRQ_ENABLE *again* + - arm64: dts: ti: k3-am62-main: Fix clocks for McSPI + - arm64: tegra: Fix duplicate regulator on Jetson TX1 + - arm64: dts: qcom: msm8992-bullhead: Fix cont_splash_mem size + - arm64: dts: qcom: msm8992-bullhead: Disable dfps_data_mem + - arm64: dts: qcom: msm8956: use SoC-specific compat for tsens + - arm64: dts: qcom: ipq8074: correct USB3 QMP PHY-s clock output names + - arm64: dts: qcom: ipq8074: fix Gen2 PCIe QMP PHY + - arm64: dts: qcom: ipq8074: fix Gen3 PCIe QMP PHY + - arm64: dts: qcom: ipq8074: correct Gen2 PCIe ranges + - arm64: dts: qcom: ipq8074: fix Gen3 PCIe node + - arm64: dts: qcom: ipq8074: correct PCIe QMP PHY output clock names + - arm64: dts: meson: remove CPU opps below 1GHz for G12A boards + - ARM: OMAP1: call platform_device_put() in error case in + omap1_dm_timer_init() + - arm64: dts: mediatek: mt8192: Mark scp_adsp clock as broken + - ARM: bcm2835_defconfig: Enable the framebuffer + - ARM: s3c: fix s3c64xx_set_timer_source prototype + - arm64: dts: ti: k3-j7200: Fix wakeup pinmux range + - ARM: dts: exynos: correct wr-active property in Exynos3250 Rinato + - ARM: imx: Call ida_simple_remove() for ida_simple_get + - arm64: dts: amlogic: meson-gx: fix SCPI clock dvfs node name + - arm64: dts: amlogic: meson-axg: fix SCPI clock dvfs node name + - arm64: dts: amlogic: meson-gx: add missing SCPI sensors compatible + - arm64: dts: amlogic: meson-axg-jethome-jethub-j1xx: fix supply name of USB + controller node + - arm64: dts: amlogic: meson-gxl-s905d-sml5442tw: drop invalid clock-names + property + - arm64: dts: amlogic: meson-gx: add missing unit address to rng node name + - arm64: dts: amlogic: meson-gxl-s905w-jethome-jethub-j80: fix invalid rtc + node name + - arm64: dts: amlogic: meson-axg-jethome-jethub-j1xx: fix invalid rtc node + name + - arm64: dts: amlogic: meson-gxl: add missing unit address to eth-phy-mux node + name + - arm64: dts: amlogic: meson-gx-libretech-pc: fix update button name + - arm64: dts: amlogic: meson-sm1-bananapi-m5: fix adc keys node names + - arm64: dts: amlogic: meson-gxl-s905d-phicomm-n1: fix led node name + - arm64: dts: amlogic: meson-gxbb-kii-pro: fix led node name + - arm64: dts: amlogic: meson-g12b-odroid-go-ultra: fix rk818 pmic properties + - arm64: dts: amlogic: meson-sm1-odroid-hc4: fix active fan thermal trip + - locking/rwsem: Disable preemption in all down_read*() and up_read() code + paths + - arm64: tegra: Mark host1x as dma-coherent on Tegra194/234 + - arm64: dts: renesas: beacon-renesom: Fix gpio expander reference + - arm64: dts: meson: radxa-zero: allow usb otg mode + - arm64: dts: meson: bananapi-m5: switch VDDIO_C pin to OPEN_DRAIN + - ARM: dts: sun8i: nanopi-duo2: Fix regulator GPIO reference + - ublk_drv: remove nr_aborted_queues from ublk_device + - ublk_drv: don't probe partitions if the ubq daemon isn't trusted + - ARM: dts: imx7s: correct iomuxc gpr mux controller cells + - sbitmap: remove redundant check in __sbitmap_queue_get_batch + - sbitmap: correct wake_batch recalculation to avoid potential IO hung + - arm64: dts: mt8195: Fix CPU map for single-cluster SoC + - arm64: dts: mt8192: Fix CPU map for single-cluster SoC + - arm64: dts: mt8186: Fix CPU map for single-cluster SoC + - arm64: dts: mediatek: mt7622: Add missing pwm-cells to pwm node + - arm64: dts: mediatek: mt8186: Fix watchdog compatible + - arm64: dts: mediatek: mt8195: Fix watchdog compatible + - arm64: dts: mediatek: mt7986: Fix watchdog compatible + - ARM: dts: stm32: Update part number NVMEM description on stm32mp131 + - arm64: dts: qcom: sm8450-nagara: Correct firmware paths + - blk-mq: avoid sleep in blk_mq_alloc_request_hctx + - blk-mq: remove stale comment for blk_mq_sched_mark_restart_hctx + - blk-mq: wait on correct sbitmap_queue in blk_mq_mark_tag_wait + - blk-mq: Fix potential io hung for shared sbitmap per tagset + - blk-mq: correct stale comment of .get_budget + - arm64: dts: qcom: msm8996: support using GPLL0 as kryocc input + - arm64: dts: qcom: msm8996 switch from RPM_SMD_BB_CLK1 to RPM_SMD_XO_CLK_SRC + - arm64: dts: qcom: sm8350: drop incorrect cells from serial + - arm64: dts: qcom: sm8450: drop incorrect cells from serial + - arm64: dts: qcom: msm8992-lg-bullhead: Correct memory overlaps with the SMEM + and MPSS memory regions + - arm64: dts: qcom: msm8953: correct TLMM gpio-ranges + - arm64: dts: qcom: sm6115: correct TLMM gpio-ranges + - arm64: dts: qcom: msm8992-lg-bullhead: Enable regulators + - s390/dasd: Fix potential memleak in dasd_eckd_init() + - io_uring,audit: don't log IORING_OP_MADVISE + - sched/rt: pick_next_rt_entity(): check list_entry + - perf/x86/intel/ds: Fix the conversion from TSC to perf time + - x86/perf/zhaoxin: Add stepping check for ZXC + - KEYS: asymmetric: Fix ECDSA use via keyctl uapi + - block: ublk: check IO buffer based on flag need_get_data + - arm64: dts: qcom: pmk8350: Use the correct PON compatible + - erofs: relinquish volume with mutex held + - block: sync mixed merged request's failfast with 1st bio's + - block: Fix io statistics for cgroup in throttle path + - block: bio-integrity: Copy flags when bio_integrity_payload is cloned + - block: use proper return value from bio_failfast() + - wifi: mt76: mt7915: add missing of_node_put() + - wifi: mt76: mt7921s: fix slab-out-of-bounds access in sdio host + - wifi: mt76: mt7915: fix mt7915_rate_txpower_get() resource leaks + - wifi: mt76: mt7996: fix insecure data handling of mt7996_mcu_ie_countdown() + - wifi: mt76: mt7996: fix insecure data handling of + mt7996_mcu_rx_radar_detected() + - wifi: mt76: mt7996: fix integer handling issue of mt7996_rf_regval_set() + - wifi: mt76: mt7915: check return value before accessing free_block_num + - wifi: mt76: mt7996: check return value before accessing free_block_num + - wifi: mt76: mt7915: drop always true condition of __mt7915_reg_addr() + - wifi: mt76: mt7996: drop always true condition of __mt7996_reg_addr() + - wifi: mt76: mt7996: fix endianness warning in mt7996_mcu_sta_he_tlv + - wifi: mt76: mt76x0: fix oob access in mt76x0_phy_get_target_power + - wifi: mt76: mt7996: fix unintended sign extension of mt7996_hw_queue_read() + - wifi: mt76: mt7915: fix unintended sign extension of mt7915_hw_queue_read() + - wifi: mt76: fix coverity uninit_use_in_call in + mt76_connac2_reverse_frag0_hdr_trans() + - wifi: mt76: mt7921: resource leaks at mt7921_check_offload_capability() + - wifi: rsi: Fix memory leak in rsi_coex_attach() + - wifi: rtlwifi: rtl8821ae: don't call kfree_skb() under spin_lock_irqsave() + - wifi: rtlwifi: rtl8188ee: don't call kfree_skb() under spin_lock_irqsave() + - wifi: rtlwifi: rtl8723be: don't call kfree_skb() under spin_lock_irqsave() + - wifi: iwlegacy: common: don't call dev_kfree_skb() under spin_lock_irqsave() + - wifi: libertas: fix memory leak in lbs_init_adapter() + - wifi: rtl8xxxu: Fix assignment to bit field priv->pi_enabled + - wifi: rtl8xxxu: Fix assignment to bit field priv->cck_agc_report_type + - wifi: rtl8xxxu: don't call dev_kfree_skb() under spin_lock_irqsave() + - wifi: rtw89: 8852c: rfk: correct DACK setting + - wifi: rtw89: 8852c: rfk: correct DPK settings + - wifi: rtlwifi: Fix global-out-of-bounds bug in + _rtl8812ae_phy_set_txpower_limit() + - libbpf: Fix single-line struct definition output in btf_dump + - libbpf: Fix btf__align_of() by taking into account field offsets + - wifi: ipw2x00: don't call dev_kfree_skb() under spin_lock_irqsave() + - wifi: ipw2200: fix memory leak in ipw_wdev_init() + - wifi: wilc1000: fix potential memory leak in wilc_mac_xmit() + - wifi: wilc1000: add missing unregister_netdev() in wilc_netdev_ifc_init() + - wifi: brcmfmac: fix potential memory leak in brcmf_netdev_start_xmit() + - wifi: brcmfmac: unmap dma buffer in brcmf_msgbuf_alloc_pktid() + - wifi: libertas_tf: don't call kfree_skb() under spin_lock_irqsave() + - wifi: libertas: if_usb: don't call kfree_skb() under spin_lock_irqsave() + - wifi: libertas: main: don't call kfree_skb() under spin_lock_irqsave() + - wifi: libertas: cmdresp: don't call kfree_skb() under spin_lock_irqsave() + - wifi: wl3501_cs: don't call kfree_skb() under spin_lock_irqsave() + - libbpf: Fix invalid return address register in s390 + - crypto: x86/ghash - fix unaligned access in ghash_setkey() + - crypto: ux500 - update debug config after ux500 cryp driver removal + - ACPICA: Drop port I/O validation for some regions + - genirq: Fix the return type of kstat_cpu_irqs_sum() + - rcu-tasks: Improve comments explaining tasks_rcu_exit_srcu purpose + - rcu-tasks: Remove preemption disablement around srcu_read_[un]lock() calls + - rcu-tasks: Fix synchronize_rcu_tasks() VS zap_pid_ns_processes() + - lib/mpi: Fix buffer overrun when SG is too long + - crypto: ccp - Avoid page allocation failure warning for SEV_GET_ID2 + - platform/chrome: cros_ec_typec: Update port DP VDO + - ACPICA: nsrepair: handle cases without a return value correctly + - libbpf: Fix map creation flags sanitization + - bpf_doc: Fix build error with older python versions + - selftests/xsk: print correct payload for packet dump + - selftests/xsk: print correct error codes when exiting + - arm64/cpufeature: Fix field sign for DIT hwcap detection + - arm64/sysreg: Fix errors in 32 bit enumeration values + - kselftest/arm64: Fix syscall-abi for systems without 128 bit SME + - workqueue: Protects wq_unbound_cpumask with wq_pool_attach_mutex + - s390/early: fix sclp_early_sccb variable lifetime + - s390/vfio-ap: fix an error handling path in vfio_ap_mdev_probe_queue() + - x86/signal: Fix the value returned by strict_sas_size() + - thermal/drivers/tsens: Drop msm8976-specific defines + - thermal/drivers/tsens: Sort out msm8976 vs msm8956 data + - thermal/drivers/tsens: fix slope values for msm8939 + - thermal/drivers/tsens: limit num_sensors to 9 for msm8939 + - wifi: rtw89: fix potential leak in rtw89_append_probe_req_ie() + - wifi: rtw89: Add missing check for alloc_workqueue + - wifi: rtl8xxxu: Fix memory leaks with RTL8723BU, RTL8192EU + - wifi: orinoco: check return value of hermes_write_wordrec() + - wifi: rtw88: Use rtw_iterate_vifs() for rtw_vif_watch_dog_iter() + - wifi: rtw88: Use non-atomic sta iterator in rtw_ra_mask_info_update() + - thermal/drivers/imx_sc_thermal: Fix the loop condition + - wifi: ath9k: htc_hst: free skb in ath9k_htc_rx_msg() if there is no callback + function + - wifi: ath9k: hif_usb: clean up skbs if ath9k_hif_usb_rx_stream() fails + - wifi: ath9k: Fix potential stack-out-of-bounds write in + ath9k_wmi_rsp_callback() + - wifi: ath11k: Fix memory leak in ath11k_peer_rx_frag_setup + - wifi: cfg80211: Fix extended KCK key length check in + nl80211_set_rekey_data() + - ACPI: battery: Fix missing NUL-termination with large strings + - selftests/bpf: Fix build errors if CONFIG_NF_CONNTRACK=m + - crypto: ccp - Failure on re-initialization due to duplicate sysfs filename + - crypto: essiv - Handle EBUSY correctly + - crypto: seqiv - Handle EBUSY correctly + - powercap: fix possible name leak in powercap_register_zone() + - bpf: Fix state pruning for STACK_DYNPTR stack slots + - bpf: Fix missing var_off check for ARG_PTR_TO_DYNPTR + - bpf: Fix partial dynptr stack slot reads/writes + - x86/microcode: Add a parameter to microcode_check() to store CPU + capabilities + - x86/microcode: Check CPU capabilities after late microcode update correctly + - x86/microcode: Adjust late loading result reporting message + - net: ethernet: ti: am65-cpsw/cpts: Fix CPTS release action + - selftests/bpf: Fix vmtest static compilation error + - crypto: xts - Handle EBUSY correctly + - leds: led-class: Add missing put_device() to led_put() + - drm/nouveau/disp: Fix nvif_outp_acquire_dp() argument size + - s390/bpf: Add expoline to tail calls + - wifi: iwlwifi: mei: fix compilation errors in rfkill() + - kselftest/arm64: Fix enumeration of systems without 128 bit SME + - can: rcar_canfd: Fix R-Car V3U CAN mode selection + - can: rcar_canfd: Fix R-Car V3U GAFLCFG field accesses + - selftests/bpf: Initialize tc in xdp_synproxy + - crypto: ccp - Flush the SEV-ES TMR memory before giving it to firmware + - bpftool: profile online CPUs instead of possible + - wifi: mt76: mt7921: fix deadlock in mt7921_abort_roc + - wifi: mt76: mt7915: call mt7915_mcu_set_thermal_throttling() only after + init_work + - wifi: mt76: mt7915: rework mt7915_mcu_set_thermal_throttling + - wifi: mt76: mt7915: rework mt7915_thermal_temp_store() + - wifi: mt76: mt7921: fix channel switch fail in monitor mode + - wifi: mt76: mt7996: fix chainmask calculation in mt7996_set_antenna() + - wifi: mt76: mt7996: update register for CFEND_RATE + - wifi: mt76: connac: fix POWER_CTRL command name typo + - wifi: mt76: mt7921: fix invalid remain_on_channel duration + - wifi: mt76: mt7915: fix memory leak in mt7915_mcu_exit + - wifi: mt76: mt7996: fix memory leak in mt7996_mcu_exit + - wifi: mt76: dma: fix memory leak running mt76_dma_tx_cleanup + - wifi: mt76: fix switch default case in mt7996_reverse_frag0_hdr_trans + - wifi: mt76: mt7915: fix WED TxS reporting + - wifi: mt76: add memory barrier to SDIO queue kick + - wifi: mt76: mt7996: rely on mt76_connac2_mac_tx_rate_val + - net/mlx5: Enhance debug print in page allocation failure + - irqchip: Fix refcount leak in platform_irqchip_probe + - irqchip/alpine-msi: Fix refcount leak in alpine_msix_init_domains + - irqchip/irq-mvebu-gicp: Fix refcount leak in mvebu_gicp_probe + - irqchip/ti-sci: Fix refcount leak in ti_sci_intr_irq_domain_probe + - s390/mem_detect: fix detect_memory() error handling + - s390/vmem: fix empty page tables cleanup under KASAN + - s390/boot: cleanup decompressor header files + - s390/mem_detect: rely on diag260() if sclp_early_get_memsize() fails + - s390/boot: fix mem_detect extended area allocation + - net: add sock_init_data_uid() + - tun: tun_chr_open(): correctly initialize socket uid + - tap: tap_open(): correctly initialize socket uid + - rxrpc: Fix overwaking on call poking + - OPP: fix error checking in opp_migrate_dentry() + - cpufreq: davinci: Fix clk use after free + - Bluetooth: hci_conn: Refactor hci_bind_bis() since it always succeeds + - Bluetooth: L2CAP: Fix potential user-after-free + - Bluetooth: hci_qca: get wakeup status from serdev device handle + - net: ipa: generic command param fix + - s390: vfio-ap: tighten the NIB validity check + - s390/ap: fix status returned by ap_aqic() + - s390/ap: fix status returned by ap_qact() + - libbpf: Fix alen calculation in libbpf_nla_dump_errormsg() + - xen/grant-dma-iommu: Implement a dummy probe_device() callback + - rds: rds_rm_zerocopy_callback() correct order for list_add_tail() + - crypto: rsa-pkcs1pad - Use akcipher_request_complete + - m68k: /proc/hardware should depend on PROC_FS + - RISC-V: time: initialize hrtimer based broadcast clock event device + - clocksource/drivers/riscv: Patch riscv_clock_next_event() jump before first + use + - wifi: iwl3945: Add missing check for create_singlethread_workqueue + - wifi: iwl4965: Add missing check for create_singlethread_workqueue() + - wifi: brcmfmac: Rename Cypress 89459 to BCM4355 + - wifi: brcmfmac: pcie: Add IDs/properties for BCM4355 + - wifi: brcmfmac: pcie: Add IDs/properties for BCM4377 + - wifi: brcmfmac: pcie: Perform correct BCM4364 firmware selection + - wifi: mwifiex: fix loop iterator in mwifiex_update_ampdu_txwinsize() + - wifi: rtw89: fix parsing offset for MCC C2H + - selftests/bpf: Fix out-of-srctree build + - ACPI: resource: Add IRQ overrides for MAINGEAR Vector Pro 2 models + - ACPI: resource: Do IRQ override on all TongFang GMxRGxx + - crypto: octeontx2 - Fix objects shared between several modules + - crypto: crypto4xx - Call dma_unmap_page when done + - vfio/ccw: remove WARN_ON during shutdown + - wifi: mac80211: move color collision detection report in a delayed work + - wifi: mac80211: make rate u32 in sta_set_rate_info_rx() + - wifi: mac80211: fix non-MLO station association + - wifi: mac80211: Don't translate MLD addresses for multicast + - wifi: mac80211: avoid u32_encode_bits() warning + - wifi: mac80211: fix off-by-one link setting + - tools/lib/thermal: Fix thermal_sampling_exit() + - thermal/drivers/hisi: Drop second sensor hi3660 + - selftests/bpf: Fix map_kptr test. + - wifi: mac80211: pass 'sta' to ieee80211_rx_data_set_sta() + - bpf: Zeroing allocated object from slab in bpf memory allocator + - selftests/bpf: Fix xdp_do_redirect on s390x + - can: esd_usb: Move mislocated storage of SJA1000_ECC_SEG bits in case of a + bus error + - can: esd_usb: Make use of can_change_state() and relocate checking skb for + NULL + - xsk: check IFF_UP earlier in Tx path + - LoongArch, bpf: Use 4 instructions for function address in JIT + - bpf: Fix global subprog context argument resolution logic + - irqchip/irq-brcmstb-l2: Set IRQ_LEVEL for level triggered interrupts + - irqchip/irq-bcm7120-l2: Set IRQ_LEVEL for level triggered interrupts + - net/smc: fix potential panic dues to unprotected smc_llc_srv_add_link() + - net/smc: fix application data exception + - selftests/net: Interpret UDP_GRO cmsg data as an int value + - l2tp: Avoid possible recursive deadlock in l2tp_tunnel_register() + - net: bcmgenet: fix MoCA LED control + - net: lan966x: Fix possible deadlock inside PTP + - net/mlx4_en: Introduce flexible array to silence overflow warning + - net/mlx5e: Align IPsec ASO result memory to be as required by hardware + - selftest: fib_tests: Always cleanup before exit + - sefltests: netdevsim: wait for devlink instance after netns removal + - drm: Fix potential null-ptr-deref due to drmm_mode_config_init() + - drm/fourcc: Add missing big-endian XRGB1555 and RGB565 formats + - drm/bridge: ti-sn65dsi83: Fix delay after reset deassert to match spec + - drm: mxsfb: DRM_IMX_LCDIF should depend on ARCH_MXC + - drm: mxsfb: DRM_MXSFB should depend on ARCH_MXS || ARCH_MXC + - drm/bridge: megachips: Fix error handling in i2c_register_driver() + - drm/vkms: Fix memory leak in vkms_init() + - drm/vkms: Fix null-ptr-deref in vkms_release() + - drm/modes: Use strscpy() to copy command-line mode name + - drm/vc4: dpi: Fix format mapping for RGB565 + - drm/bridge: it6505: Guard bridge power in IRQ handler + - drm: tidss: Fix pixel format definition + - gpu: ipu-v3: common: Add of_node_put() for reference returned by + of_graph_get_port_by_id() + - drm/ast: Init iosys_map pointer as I/O memory for damage handling + - drm/vc4: drop all currently held locks if deadlock happens + - hwmon: (ftsteutates) Fix scaling of measurements + - drm/msm/dpu: check for null return of devm_kzalloc() in dpu_writeback_init() + - drm/msm/hdmi: Add missing check for alloc_ordered_workqueue + - pinctrl: qcom: pinctrl-msm8976: Correct function names for wcss pins + - pinctrl: stm32: Fix refcount leak in stm32_pctrl_get_irq_domain + - pinctrl: rockchip: Fix refcount leak in rockchip_pinctrl_parse_groups + - drm/vc4: hvs: Configure the HVS COB allocations + - drm/vc4: hvs: Set AXI panic modes + - drm/vc4: hvs: SCALER_DISPBKGND_AUTOHS is only valid on HVS4 + - drm/vc4: hvs: Correct interrupt masking bit assignment for HVS5 + - drm/vc4: hvs: Fix colour order for xRGB1555 on HVS5 + - drm/vc4: hdmi: Correct interlaced timings again + - drm/msm: clean event_thread->worker in case of an error + - drm/panel-edp: fix name for IVO product id 854b + - scsi: qla2xxx: Fix exchange oversubscription + - scsi: qla2xxx: Fix exchange oversubscription for management commands + - scsi: qla2xxx: edif: Fix clang warning + - ASoC: fsl_sai: initialize is_dsp_mode flag + - drm/bridge: tc358767: Set default CLRSIPO count + - drm/msm/adreno: Fix null ptr access in adreno_gpu_cleanup() + - ALSA: hda/ca0132: minor fix for allocation size + - drm/amdgpu: Use the sched from entity for amdgpu_cs trace + - drm/msm/gem: Add check for kmalloc + - drm/msm/dpu: Disallow unallocated resources to be returned + - drm/bridge: lt9611: fix sleep mode setup + - drm/bridge: lt9611: fix HPD reenablement + - drm/bridge: lt9611: fix polarity programming + - drm/bridge: lt9611: fix programming of video modes + - drm/bridge: lt9611: fix clock calculation + - drm/bridge: lt9611: pass a pointer to the of node + - regulator: tps65219: use IS_ERR() to detect an error pointer + - drm/mipi-dsi: Fix byte order of 16-bit DCS set/get brightness + - drm: exynos: dsi: Fix MIPI_DSI*_NO_* mode flags + - drm/msm/dsi: Allow 2 CTRLs on v2.5.0 + - scsi: ufs: exynos: Fix DMA alignment for PAGE_SIZE != 4096 + - drm/msm/dpu: sc7180: add missing WB2 clock control + - drm/msm: use strscpy instead of strncpy + - drm/msm/dpu: Add check for cstate + - drm/msm/dpu: Add check for pstates + - drm/msm/mdp5: Add check for kzalloc + - habanalabs: bugs fixes in timestamps buff alloc + - pinctrl: bcm2835: Remove of_node_put() in bcm2835_of_gpio_ranges_fallback() + - pinctrl: mediatek: Initialize variable pullen and pullup to zero + - pinctrl: mediatek: Initialize variable *buf to zero + - gpu: host1x: Fix mask for syncpoint increment register + - gpu: host1x: Don't skip assigning syncpoints to channels + - drm/tegra: firewall: Check for is_addr_reg existence in IMM check + - drm/i915/mtl: Add initial gt workarounds + - drm/i915/xehp: GAM registers don't need to be re-applied on engine resets + - pinctrl: renesas: rzg2l: Fix configuring the GPIO pins as interrupts + - drm/i915/xehp: Annotate a couple more workaround registers as MCR + - drm/msm/dpu: set pdpu->is_rt_pipe early in dpu_plane_sspp_atomic_update() + - drm/mediatek: dsi: Reduce the time of dsi from LP11 to sending cmd + - drm/mediatek: Use NULL instead of 0 for NULL pointer + - drm/mediatek: Drop unbalanced obj unref + - drm/mediatek: mtk_drm_crtc: Add checks for devm_kcalloc + - drm/mediatek: Clean dangling pointer on bind error path + - ASoC: soc-compress.c: fixup private_data on snd_soc_new_compress() + - dt-bindings: display: mediatek: Fix the fallback for mediatek,mt8186-disp- + ccorr + - gpio: pca9570: rename platform_data to chip_data + - gpio: vf610: connect GPIO label to dev name + - ASoC: topology: Properly access value coming from topology file + - spi: dw_bt1: fix MUX_MMIO dependencies + - ASoC: mchp-spdifrx: fix controls which rely on rsr register + - ASoC: mchp-spdifrx: fix return value in case completion times out + - ASoC: mchp-spdifrx: fix controls that works with completion mechanism + - ASoC: mchp-spdifrx: disable all interrupts in mchp_spdifrx_dai_remove() + - dm: improve shrinker debug names + - regmap: apply reg_base and reg_downshift for single register ops + - accel: fix CONFIG_DRM dependencies + - ASoC: rsnd: fixup #endif position + - ASoC: mchp-spdifrx: Fix uninitialized use of mr in mchp_spdifrx_hw_params() + - ASoC: dt-bindings: meson: fix gx-card codec node regex + - regulator: tps65219: use generic set_bypass() + - hwmon: (asus-ec-sensors) add missing mutex path + - hwmon: (ltc2945) Handle error case in ltc2945_value_store + - ALSA: hda: Fix the control element identification for multiple codecs + - drm/amdgpu: fix enum odm_combine_mode mismatch + - scsi: mpt3sas: Fix a memory leak + - scsi: aic94xx: Add missing check for dma_map_single() + - HID: multitouch: Add quirks for flipped axes + - HID: retain initial quirks set up when creating HID devices + - ASoC: qcom: q6apm-lpass-dai: unprepare stream if its already prepared + - ASoC: qcom: q6apm-dai: fix race condition while updating the position + pointer + - ASoC: qcom: q6apm-dai: Add SNDRV_PCM_INFO_BATCH flag + - ASoC: codecs: lpass: register mclk after runtime pm + - ASoC: codecs: lpass: fix incorrect mclk rate + - drm/amd/display: don't call dc_interrupt_set() for disabled crtcs + - HID: logitech-hidpp: Hard-code HID++ 1.0 fast scroll support + - spi: bcm63xx-hsspi: Fix multi-bit mode setting + - hwmon: (mlxreg-fan) Return zero speed for broken fan + - ASoC: tlv320adcx140: fix 'ti,gpio-config' DT property init + - dm: remove flush_scheduled_work() during local_exit() + - nfs4trace: fix state manager flag printing + - NFS: fix disabling of swap + - drm/i915/pvc: Implement recommended caching policy + - drm/i915/pvc: Annotate two more workaround/tuning registers as MCR + - drm/i915: Fix GEN8_MISCCPCTL + - spi: synquacer: Fix timeout handling in synquacer_spi_transfer_one() + - ASoC: soc-dapm.h: fixup warning struct snd_pcm_substream not declared + - HID: bigben: use spinlock to protect concurrent accesses + - HID: bigben_worker() remove unneeded check on report_field + - HID: bigben: use spinlock to safely schedule workers + - hid: bigben_probe(): validate report count + - ALSA: hda/hdmi: Register with vga_switcheroo on Dual GPU Macbooks + - drm/shmem-helper: Fix locking for drm_gem_shmem_get_pages_sgt() + - NFSD: enhance inter-server copy cleanup + - NFSD: fix leaked reference count of nfsd4_ssc_umount_item + - nfsd: fix race to check ls_layouts + - nfsd: clean up potential nfsd_file refcount leaks in COPY codepath + - NFSD: fix problems with cleanup on errors in nfsd4_copy + - nfsd: fix courtesy client with deny mode handling in nfs4_upgrade_open + - nfsd: don't fsync nfsd_files on last close + - NFSD: copy the whole verifier in nfsd_copy_write_verifier + - cifs: Fix lost destroy smbd connection when MR allocate failed + - cifs: Fix warning and UAF when destroy the MR list + - cifs: use tcon allocation functions even for dummy tcon + - gfs2: jdata writepage fix + - perf llvm: Fix inadvertent file creation + - leds: led-core: Fix refcount leak in of_led_get() + - leds: is31fl319x: Wrap mutex_destroy() for devm_add_action_or_rest() + - leds: simatic-ipc-leds-gpio: Make sure we have the GPIO providing driver + - tools/tracing/rtla: osnoise_hist: use total duration for average calculation + - perf inject: Use perf_data__read() for auxtrace + - perf intel-pt: Do not try to queue auxtrace data on pipe + - perf stat: Hide invalid uncore event output for aggr mode + - perf jevents: Correct bad character encoding + - perf test bpf: Skip test if kernel-debuginfo is not present + - perf tools: Fix auto-complete on aarch64 + - perf stat: Avoid merging/aggregating metric counts twice + - sparc: allow PM configs for sparc32 COMPILE_TEST + - selftests: find echo binary to use -ne options + - selftests/ftrace: Fix bash specific "==" operator + - selftests: use printf instead of echo -ne + - perf record: Fix segfault with --overwrite and --max-size + - printf: fix errname.c list + - perf tests stat_all_metrics: Change true workload to sleep workload for + system wide check + - objtool: add UACCESS exceptions for __tsan_volatile_read/write + - selftests/ftrace: Fix probepoint testcase to ignore __pfx_* symbols + - sysctl: fix proc_dobool() usability + - mfd: rk808: Re-add rk808-clkout to RK818 + - mfd: cs5535: Don't build on UML + - mfd: pcf50633-adc: Fix potential memleak in pcf50633_adc_async_read() + - dmaengine: idxd: Set traffic class values in GRPCFG on DSA 2.0 + - RDMA/erdma: Fix refcount leak in erdma_mmap + - dmaengine: HISI_DMA should depend on ARCH_HISI + - RDMA/hns: Fix refcount leak in hns_roce_mmap + - iio: light: tsl2563: Do not hardcode interrupt trigger type + - usb: gadget: fusb300_udc: free irq on the error path in fusb300_probe() + - i2c: designware: fix i2c_dw_clk_rate() return size to be u32 + - i2c: qcom-geni: change i2c_master_hub to static + - soundwire: cadence: Don't overflow the command FIFOs + - driver core: fix potential null-ptr-deref in device_add() + - kobject: Fix slab-out-of-bounds in fill_kobj_path() + - alpha/boot/tools/objstrip: fix the check for ELF header + - media: uvcvideo: Check for INACTIVE in uvc_ctrl_is_accessible() + - media: uvcvideo: Implement mask for V4L2_CTRL_TYPE_MENU + - media: uvcvideo: Refactor uvc_ctrl_mappings_uvcXX + - media: uvcvideo: Refactor power_line_frequency_controls_limited + - coresight: etm4x: Fix accesses to TRCSEQRSTEVR and TRCSEQSTR + - coresight: cti: Prevent negative values of enable count + - coresight: cti: Add PM runtime call in enable_store + - usb: typec: intel_pmc_mux: Don't leak the ACPI device reference count + - PCI/IOV: Enlarge virtfn sysfs name buffer + - PCI: switchtec: Return -EFAULT for copy_to_user() errors + - PCI: endpoint: pci-epf-vntb: Add epf_ntb_mw_bar_clear() num_mws kernel-doc + - hwtracing: hisi_ptt: Only add the supported devices to the filters list + - tty: serial: fsl_lpuart: disable Rx/Tx DMA in lpuart32_shutdown() + - tty: serial: fsl_lpuart: clear LPUART Status Register in lpuart32_shutdown() + - serial: tegra: Add missing clk_disable_unprepare() in tegra_uart_hw_init() + - Revert "char: pcmcia: cm4000_cs: Replace mdelay with usleep_range in + set_protocol" + - eeprom: idt_89hpesx: Fix error handling in idt_init() + - applicom: Fix PCI device refcount leak in applicom_init() + - firmware: stratix10-svc: add missing gen_pool_destroy() in + stratix10_svc_drv_probe() + - firmware: stratix10-svc: fix error handle while alloc/add device failed + - VMCI: check context->notify_page after call to get_user_pages_fast() to + avoid GPF + - mei: pxp: Use correct macros to initialize uuid_le + - misc/mei/hdcp: Use correct macros to initialize uuid_le + - misc: fastrpc: Fix an error handling path in fastrpc_rpmsg_probe() + - iommu/exynos: Fix error handling in exynos_iommu_init() + - driver core: fix resource leak in device_add() + - driver core: location: Free struct acpi_pld_info *pld before return false + - drivers: base: transport_class: fix possible memory leak + - drivers: base: transport_class: fix resource leak when + transport_add_device() fails + - firmware: dmi-sysfs: Fix null-ptr-deref in dmi_sysfs_register_handle + - selftests: iommu: Fix test_cmd_destroy_access() call in user_copy + - iommufd: Add three missing structures in ucmd_buffer + - fotg210-udc: Add missing completion handler + - dmaengine: dw-edma: Fix missing src/dst address of interleaved xfers + - fpga: microchip-spi: move SPI I/O buffers out of stack + - fpga: microchip-spi: rewrite status polling in a time measurable way + - usb: early: xhci-dbc: Fix a potential out-of-bound memory access + - tty: serial: fsl_lpuart: Fix the wrong RXWATER setting for rx dma case + - RDMA/cxgb4: add null-ptr-check after ip_dev_find() + - usb: musb: mediatek: don't unregister something that wasn't registered + - usb: gadget: configfs: Restrict symlink creation is UDC already binded + - phy: mediatek: remove temporary variable @mask_ + - PCI: mt7621: Delay phy ports initialization + - iommu/vt-d: Set No Execute Enable bit in PASID table entry + - power: supply: remove faulty cooling logic + - RDMA/siw: Fix user page pinning accounting + - RDMA/cxgb4: Fix potential null-ptr-deref in pass_establish() + - usb: max-3421: Fix setting of I/O pins + - RDMA/irdma: Cap MSIX used to online CPUs + 1 + - serial: fsl_lpuart: fix RS485 RTS polariy inverse issue + - tty: serial: imx: disable Ageing Timer interrupt request irq + - driver core: fw_devlink: Add DL_FLAG_CYCLE support to device links + - driver core: fw_devlink: Don't purge child fwnode's consumer links + - driver core: fw_devlink: Allow marking a fwnode link as being part of a + cycle + - driver core: fw_devlink: Consolidate device link flag computation + - driver core: fw_devlink: Improve check for fwnode with no device/driver + - driver core: fw_devlink: Make cycle detection more robust + - mtd: mtdpart: Don't create platform device that'll never probe + - usb: host: fsl-mph-dr-of: reuse device_set_of_node_from_dev + - dmaengine: dw-edma: Fix readq_ch() return value truncation + - PCI: Fix dropping valid root bus resources with .end = zero + - phy: rockchip-typec: fix tcphy_get_mode error case + - PCI: qcom: Fix host-init error handling + - iw_cxgb4: Fix potential NULL dereference in c4iw_fill_res_cm_id_entry() + - iommu: Fix error unwind in iommu_group_alloc() + - iommu/amd: Do not identity map v2 capable device when snp is enabled + - dmaengine: sf-pdma: pdma_desc memory leak fix + - dmaengine: dw-axi-dmac: Do not dereference NULL structure + - dmaengine: ptdma: check for null desc before calling pt_cmd_callback + - iommu/vt-d: Fix error handling in sva enable/disable paths + - iommu/vt-d: Allow to use flush-queue when first level is default + - RDMA/rxe: Cleanup mr_check_range + - RDMA/rxe: Move rxe_map_mr_sg to rxe_mr.c + - RDMA-rxe: Isolate mr code from atomic_reply() + - RDMA-rxe: Isolate mr code from atomic_write_reply() + - RDMA/rxe: Cleanup page variables in rxe_mr.c + - RDMA/rxe: Replace rxe_map and rxe_phys_buf by xarray + - Subject: RDMA/rxe: Handle zero length rdma + - RDMA/mana_ib: Fix a bug when the PF indicates more entries for registering + memory on first packet + - RDMA/rxe: Fix missing memory barriers in rxe_queue.h + - IB/hfi1: Fix math bugs in hfi1_can_pin_pages() + - IB/hfi1: Fix sdma.h tx->num_descs off-by-one errors + - Revert "remoteproc: qcom_q6v5_mss: map/unmap metadata region before/after + use" + - remoteproc: qcom_q6v5_mss: Use a carveout to authenticate modem headers + - media: ti: cal: fix possible memory leak in cal_ctx_create() + - media: platform: ti: Add missing check for devm_regulator_get + - media: imx: imx7-media-csi: fix missing clk_disable_unprepare() in + imx7_csi_init() + - powerpc: Remove linker flag from KBUILD_AFLAGS + - s390/vdso: Drop '-shared' from KBUILD_CFLAGS_64 + - builddeb: clean generated package content + - media: max9286: Fix memleak in max9286_v4l2_register() + - media: ov2740: Fix memleak in ov2740_init_controls() + - media: ov5675: Fix memleak in ov5675_init_controls() + - media: i2c: tc358746: fix missing return assignment + - media: i2c: tc358746: fix ignoring read error in g_register callback + - media: i2c: tc358746: fix possible endianness issue + - media: ov5640: Fix soft reset sequence and timings + - media: ov5640: Handle delays when no reset_gpio set + - media: mc: Get media_device directly from pad + - media: i2c: ov772x: Fix memleak in ov772x_probe() + - media: i2c: imx219: Split common registers from mode tables + - media: i2c: imx219: Fix binning for RAW8 capture + - media: platform: mtk-mdp3: Fix return value check in mdp_probe() + - media: camss: csiphy-3ph: avoid undefined behavior + - media: platform: mtk-mdp3: fix Kconfig dependencies + - media: v4l2-jpeg: correct the skip count in jpeg_parse_app14_data + - media: v4l2-jpeg: ignore the unknown APP14 marker + - media: hantro: Fix JPEG encoder ENUM_FRMSIZE on RK3399 + - media: imx-jpeg: Apply clk_bulk api instead of operating specific clk + - media: amphion: correct the unspecified color space + - media: drivers/media/v4l2-core/v4l2-h264 : add detection of null pointers + - media: rc: Fix use-after-free bugs caused by ene_tx_irqsim() + - media: atomisp: fix videobuf2 Kconfig depenendency + - media: atomisp: Only set default_run_mode on first open of a stream/asd + - media: i2c: ov7670: 0 instead of -EINVAL was returned + - media: usb: siano: Fix use after free bugs caused by do_submit_urb + - media: saa7134: Use video_unregister_device for radio_dev + - rpmsg: glink: Avoid infinite loop on intent for missing channel + - rpmsg: glink: Release driver_override + - ARM: OMAP2+: omap4-common: Fix refcount leak bug + - arm64: dts: qcom: msm8996: Add additional A2NoC clocks + - udf: Define EFSCORRUPTED error code + - context_tracking: Fix noinstr vs KASAN + - exit: Detect and fix irq disabled state in oops + - ARM: dts: exynos: Use Exynos5420 compatible for the MIPI video phy + - fs: Use CHECK_DATA_CORRUPTION() when kernel bugs are detected + - blk-iocost: fix divide by 0 error in calc_lcoefs() + - blk-cgroup: dropping parent refcount after pd_free_fn() is done + - blk-cgroup: synchronize pd_free_fn() from blkg_free_workfn() and + blkcg_deactivate_policy() + - trace/blktrace: fix memory leak with using debugfs_lookup() + - btrfs: scrub: improve tree block error reporting + - arm64: zynqmp: Enable hs termination flag for USB dwc3 controller + - cpuidle, intel_idle: Fix CPUIDLE_FLAG_INIT_XSTATE + - x86/fpu: Don't set TIF_NEED_FPU_LOAD for PF_IO_WORKER threads + - cpuidle: drivers: firmware: psci: Dont instrument suspend code + - cpuidle: lib/bug: Disable rcu_is_watching() during WARN/BUG + - perf/x86/intel/uncore: Add Meteor Lake support + - wifi: ath9k: Fix use-after-free in ath9k_hif_usb_disconnect() + - wifi: ath11k: fix monitor mode bringup crash + - wifi: brcmfmac: Fix potential stack-out-of-bounds in brcmf_c_preinit_dcmds() + - rcu: Make RCU_LOCKDEP_WARN() avoid early lockdep checks + - rcu: Suppress smp_processor_id() complaint in + synchronize_rcu_expedited_wait() + - srcu: Delegate work to the boot cpu if using SRCU_SIZE_SMALL + - rcu-tasks: Make rude RCU-Tasks work well with CPU hotplug + - rcu-tasks: Handle queue-shrink/callback-enqueue race condition + - wifi: ath11k: debugfs: fix to work with multiple PCI devices + - thermal: intel: Fix unsigned comparison with less than zero + - timers: Prevent union confusion from unexpected restart_syscall() + - x86/bugs: Reset speculation control settings on init + - bpftool: Always disable stack protection for BPF objects + - wifi: brcmfmac: ensure CLM version is null-terminated to prevent stack-out- + of-bounds + - wifi: rtw89: fix assignation of TX BD RAM table + - wifi: mt7601u: fix an integer underflow + - inet: fix fast path in __inet_hash_connect() + - ice: restrict PTP HW clock freq adjustments to 100, 000, 000 PPB + - ice: add missing checks for PF vsi type + - Compiler attributes: GCC cold function alignment workarounds + - ACPI: Don't build ACPICA with '-Os' + - bpf, docs: Fix modulo zero, division by zero, overflow, and underflow + - thermal: intel: intel_pch: Add support for Wellsburg PCH + - clocksource: Suspend the watchdog temporarily when high read latency + detected + - crypto: hisilicon: Wipe entire pool on error + - net: bcmgenet: Add a check for oversized packets + - m68k: Check syscall_trace_enter() return code + - s390/mm,ptdump: avoid Kasan vs Memcpy Real markers swapping + - netfilter: nf_tables: NULL pointer dereference in nf_tables_updobj() + - can: isotp: check CAN address family in isotp_bind() + - gcc-plugins: drop -std=gnu++11 to fix GCC 13 build + - tools/power/x86/intel-speed-select: Add Emerald Rapid quirk + - platform/x86: dell-ddv: Add support for interface version 3 + - wifi: mt76: dma: free rx_head in mt76_dma_rx_cleanup + - ACPI: video: Fix Lenovo Ideapad Z570 DMI match + - net/mlx5: fw_tracer: Fix debug print + - coda: Avoid partial allocation of sig_inputArgs + - uaccess: Add minimum bounds check on kernel buffer size + - s390/idle: mark arch_cpu_idle() noinstr + - time/debug: Fix memory leak with using debugfs_lookup() + - PM: domains: fix memory leak with using debugfs_lookup() + - PM: EM: fix memory leak with using debugfs_lookup() + - Bluetooth: Fix issue with Actions Semi ATS2851 based devices + - Bluetooth: btusb: Add new PID/VID 0489:e0f2 for MT7921 + - Bluetooth: btusb: Add VID:PID 13d3:3529 for Realtek RTL8821CE + - wifi: rtw89: debug: avoid invalid access on RTW89_DBG_SEL_MAC_30 + - hv_netvsc: Check status in SEND_RNDIS_PKT completion message + - s390/kfence: fix page fault reporting + - devlink: Fix TP_STRUCT_entry in trace of devlink health report + - scm: add user copy checks to put_cmsg() + - drm: panel-orientation-quirks: Add quirk for Lenovo Yoga Tab 3 X90F + - drm: panel-orientation-quirks: Add quirk for DynaBook K50 + - drm/amd/display: Reduce expected sdp bandwidth for dcn321 + - drm/amd/display: Revert Reduce delay when sink device not able to ACK 00340h + write + - drm/amd/display: Fix potential null-deref in dm_resume + - drm/omap: dsi: Fix excessive stack usage + - HID: Add Mapping for System Microphone Mute + - drm/tiny: ili9486: Do not assume 8-bit only SPI controllers + - drm/amd/display: Defer DIG FIFO disable after VID stream enable + - drm/radeon: free iio for atombios when driver shutdown + - drm/amd: Avoid BUG() for case of SRIOV missing IP version + - drm/amdkfd: Page aligned memory reserve size + - scsi: lpfc: Fix use-after-free KFENCE violation during sysfs firmware write + - Revert "fbcon: don't lose the console font across generic->chip driver + switch" + - drm/amd: Avoid ASSERT for some message failures + - drm: amd: display: Fix memory leakage + - drm/amd/display: fix mapping to non-allocated address + - HID: uclogic: Add frame type quirk + - HID: uclogic: Add battery quirk + - HID: uclogic: Add support for XP-PEN Deco Pro SW + - HID: uclogic: Add support for XP-PEN Deco Pro MW + - drm/msm/dsi: Add missing check for alloc_ordered_workqueue + - drm: rcar-du: Add quirk for H3 ES1.x pclk workaround + - drm: rcar-du: Fix setting a reserved bit in DPLLCR + - drm/drm_print: correct format problem + - drm/amd/display: Set hvm_enabled flag for S/G mode + - drm/client: Test for connectors before sending hotplug event + - habanalabs: extend fatal messages to contain PCI info + - habanalabs: fix bug in timestamps registration code + - docs/scripts/gdb: add necessary make scripts_gdb step + - drm/msm/dpu: Add DSC hardware blocks to register snapshot + - ASoC: soc-compress: Reposition and add pcm_mutex + - ASoC: kirkwood: Iterate over array indexes instead of using pointer math + - regulator: max77802: Bounds check regulator id against opmode + - regulator: s5m8767: Bounds check id indexing into arrays + - Revert "drm/amdgpu: TA unload messages are not actually sent to psp when + amdgpu is uninstalled" + - drm/amd/display: fix FCLK pstate change underflow + - gfs2: Improve gfs2_make_fs_rw error handling + - hwmon: (coretemp) Simplify platform device handling + - hwmon: (nct6775) Directly call ASUS ACPI WMI method + - hwmon: (nct6775) B650/B660/X670 ASUS boards support + - pinctrl: at91: use devm_kasprintf() to avoid potential leaks + - drm/amd/display: Do not commit pipe when updating DRR + - scsi: snic: Fix memory leak with using debugfs_lookup() + - scsi: ufs: core: Fix device management cmd timeout flow + - HID: logitech-hidpp: Don't restart communication if not necessary + - drm/amd/display: Enable P-state validation checks for DCN314 + - drm: panel-orientation-quirks: Add quirk for Lenovo IdeaPad Duet 3 10IGL5 + - drm/amd/display: Disable HUBP/DPP PG on DCN314 for now + - drm/amd/display: disable SubVP + DRR to prevent underflow + - dm thin: add cond_resched() to various workqueue loops + - dm cache: add cond_resched() to various workqueue loops + - nfsd: zero out pointers after putting nfsd_files on COPY setup error + - nfsd: don't hand out delegation on setuid files being opened for write + - cifs: prevent data race in smb2_reconnect() + - drm/i915/mtl: Correct implementation of Wa_18018781329 + - drm/shmem-helper: Revert accidental non-GPL export + - driver core: fw_devlink: Avoid spurious error message + - wifi: rtl8xxxu: fixing transmisison failure for rtl8192eu + - firmware: coreboot: framebuffer: Ignore reserved pixel color bits + - block: don't allow multiple bios for IOCB_NOWAIT issue + - block: clear bio->bi_bdev when putting a bio back in the cache + - block: be a bit more careful in checking for NULL bdev while polling + - rtc: pm8xxx: fix set-alarm race + - ipmi: ipmb: Fix the MODULE_PARM_DESC associated to 'retry_time_ms' + - ipmi:ssif: resend_msg() cannot fail + - ipmi_ssif: Rename idle state and check + - ipmi:ssif: Add a timer between request retries + - io_uring: Replace 0-length array with flexible array + - io_uring: use user visible tail in io_uring_poll() + - io_uring: handle TIF_NOTIFY_RESUME when checking for task_work + - io_uring: add a conditional reschedule to the IOPOLL cancelation loop + - io_uring: add reschedule point to handle_tw_list() + - io_uring/rsrc: disallow multi-source reg buffers + - io_uring: remove MSG_NOSIGNAL from recvmsg + - io_uring/poll: allow some retries for poll triggering spuriously + - io_uring: fix fget leak when fs don't support nowait buffered read + - s390/extmem: return correct segment type in __segment_load() + - s390: discard .interp section + - s390/kprobes: fix irq mask clobbering on kprobe reenter from post_handler + - s390/kprobes: fix current_kprobe never cleared after kprobes reenter + - KVM: s390: disable migration mode when dirty tracking is disabled + - cifs: improve checking of DFS links over STATUS_OBJECT_NAME_INVALID + - cifs: Fix uninitialized memory read in smb3_qfs_tcon() + - cifs: Fix uninitialized memory reads for oparms.mode + - cifs: fix mount on old smb servers + - cifs: introduce cifs_io_parms in smb2_async_writev() + - cifs: split out smb3_use_rdma_offload() helper + - cifs: don't try to use rdma offload on encrypted connections + - cifs: Check the lease context if we actually got a lease + - cifs: return a single-use cfid if we did not get a lease + - scsi: mpi3mr: Fix missing mrioc->evtack_cmds initialization + - scsi: mpi3mr: Fix issues in mpi3mr_get_all_tgt_info() + - scsi: mpi3mr: Remove unnecessary memcpy() to alltgt_info->dmi + - btrfs: hold block group refcount during async discard + - btrfs: sysfs: update fs features directory asynchronously + - locking/rwsem: Prevent non-first waiter from spinning in down_write() + slowpath + - ksmbd: fix wrong data area length for smb2 lock request + - ksmbd: do not allow the actual frame length to be smaller than the rfc1002 + length + - ksmbd: fix possible memory leak in smb2_lock() + - torture: Fix hang during kthread shutdown phase + - ARM: dts: exynos: correct HDMI phy compatible in Exynos4 + - io_uring: mark task TASK_RUNNING before handling resume/task work + - hfs: fix missing hfs_bnode_get() in __hfs_bnode_create + - fs: hfsplus: fix UAF issue in hfsplus_put_super + - exfat: fix reporting fs error when reading dir beyond EOF + - exfat: fix unexpected EOF while reading dir + - exfat: redefine DIR_DELETED as the bad cluster number + - exfat: fix inode->i_blocks for non-512 byte sector size device + - fs: dlm: start midcomms before scand + - fs: dlm: fix use after free in midcomms commit + - fs: dlm: be sure to call dlm_send_queue_flush() + - fs: dlm: fix race setting stop tx flag + - fs: dlm: don't set stop rx flag after node reset + - fs: dlm: move sending fin message into state change handling + - fs: dlm: send FIN ack back in right cases + - f2fs: fix information leak in f2fs_move_inline_dirents() + - f2fs: retry to update the inode page given data corruption + - f2fs: fix cgroup writeback accounting with fs-layer encryption + - f2fs: fix kernel crash due to null io->bio + - f2fs: Revert "f2fs: truncate blocks in batch in __complete_revoke_list()" + - ocfs2: fix defrag path triggering jbd2 ASSERT + - ocfs2: fix non-auto defrag path not working issue + - fs/cramfs/inode.c: initialize file_ra_state + - selftests/landlock: Skip overlayfs tests when not supported + - selftests/landlock: Test ptrace as much as possible with Yama + - udf: Truncate added extents on failed expansion + - udf: Do not bother merging very long extents + - udf: Do not update file length for failed writes to inline files + - udf: Preserve link count of system files + - udf: Detect system inodes linked into directory hierarchy + - udf: Fix file corruption when appending just after end of preallocated + extent + - md: don't update recovery_cp when curr_resync is ACTIVE + - KVM: Destroy target device if coalesced MMIO unregistration fails + - KVM: VMX: Fix crash due to uninitialized current_vmcs + - KVM: Register /dev/kvm as the _very_ last thing during initialization + - KVM: x86: Purge "highest ISR" cache when updating APICv state + - KVM: x86: Blindly get current x2APIC reg value on "nodecode write" traps + - KVM: x86: Don't inhibit APICv/AVIC on xAPIC ID "change" if APIC is disabled + - KVM: x86: Don't inhibit APICv/AVIC if xAPIC ID mismatch is due to 32-bit ID + - KVM: SVM: Flush the "current" TLB when activating AVIC + - KVM: SVM: Process ICR on AVIC IPI delivery failure due to invalid target + - KVM: SVM: Don't put/load AVIC when setting virtual APIC mode + - KVM: x86: Inject #GP if WRMSR sets reserved bits in APIC Self-IPI + - KVM: x86: Inject #GP on x2APIC WRMSR that sets reserved bits 63:32 + - KVM: SVM: Fix potential overflow in SEV's send|receive_update_data() + - KVM: SVM: hyper-v: placate modpost section mismatch error + - selftests: x86: Fix incorrect kernel headers search path + - x86/virt: Force GIF=1 prior to disabling SVM (for reboot flows) + - x86/crash: Disable virt in core NMI crash handler to avoid double shootdown + - x86/reboot: Disable virtualization in an emergency if SVM is supported + - x86/reboot: Disable SVM, not just VMX, when stopping CPUs + - x86/kprobes: Fix __recover_optprobed_insn check optimizing logic + - x86/kprobes: Fix arch_check_optimized_kprobe check within optimized_kprobe + range + - x86/microcode/amd: Remove load_microcode_amd()'s bsp parameter + - x86/microcode/AMD: Add a @cpu parameter to the reloading functions + - x86/microcode/AMD: Fix mixed steppings support + - x86/speculation: Allow enabling STIBP with legacy IBRS + - Documentation/hw-vuln: Document the interaction between IBRS and STIBP + - virt/sev-guest: Return -EIO if certificate buffer is not large enough + - brd: mark as nowait compatible + - brd: return 0/-error from brd_insert_page() + - brd: check for REQ_NOWAIT and set correct page allocation mask + - ima: fix error handling logic when file measurement failed + - ima: Align ima_file_mmap() parameters with mmap_file LSM hook + - selftests/powerpc: Fix incorrect kernel headers search path + - selftests/ftrace: Fix eprobe syntax test case to check filter support + - selftests: sched: Fix incorrect kernel headers search path + - selftests: core: Fix incorrect kernel headers search path + - selftests: pid_namespace: Fix incorrect kernel headers search path + - selftests: arm64: Fix incorrect kernel headers search path + - selftests: clone3: Fix incorrect kernel headers search path + - selftests: pidfd: Fix incorrect kernel headers search path + - selftests: membarrier: Fix incorrect kernel headers search path + - selftests: kcmp: Fix incorrect kernel headers search path + - selftests: media_tests: Fix incorrect kernel headers search path + - selftests: gpio: Fix incorrect kernel headers search path + - selftests: filesystems: Fix incorrect kernel headers search path + - selftests: user_events: Fix incorrect kernel headers search path + - selftests: ptp: Fix incorrect kernel headers search path + - selftests: sync: Fix incorrect kernel headers search path + - selftests: rseq: Fix incorrect kernel headers search path + - selftests: move_mount_set_group: Fix incorrect kernel headers search path + - selftests: mount_setattr: Fix incorrect kernel headers search path + - selftests: perf_events: Fix incorrect kernel headers search path + - selftests: ipc: Fix incorrect kernel headers search path + - selftests: futex: Fix incorrect kernel headers search path + - selftests: drivers: Fix incorrect kernel headers search path + - selftests: dmabuf-heaps: Fix incorrect kernel headers search path + - selftests: vm: Fix incorrect kernel headers search path + - selftests: seccomp: Fix incorrect kernel headers search path + - irqdomain: Fix association race + - irqdomain: Fix disassociation race + - irqdomain: Look for existing mapping only once + - irqdomain: Drop bogus fwspec-mapping error handling + - irqdomain: Refactor __irq_domain_alloc_irqs() + - irqdomain: Fix mapping-creation race + - irqdomain: Fix domain registration race + - crypto: qat - fix out-of-bounds read + - mm/damon/paddr: fix missing folio_put() + - ALSA: ice1712: Do not left ice->gpio_mutex locked in aureon_add_controls() + - ALSA: hda/realtek: Add quirk for HP EliteDesk 800 G6 Tower PC + - jbd2: fix data missing when reusing bh which is ready to be checkpointed + - ext4: optimize ea_inode block expansion + - ext4: refuse to create ea block when umounted + - cxl/pmem: Fix nvdimm registration races + - Input: exc3000 - properly stop timer on shutdown + - mtd: spi-nor: sfdp: Fix index value for SCCR dwords + - mtd: spi-nor: spansion: Consider reserved bits in CFR5 register + - dm: send just one event on resize, not two + - dm: add cond_resched() to dm_wq_work() + - dm: add cond_resched() to dm_wq_requeue_work() + - wifi: rtw88: use RTW_FLAG_POWERON flag to prevent to power on/off twice + - wifi: rtl8xxxu: Use a longer retry limit of 48 + - wifi: ath11k: allow system suspend to survive ath11k + - wifi: cfg80211: Fix use after free for wext + - wifi: cfg80211: Set SSID if it is not already set + - cpuidle: add ARCH_SUSPEND_POSSIBLE dependencies + - qede: fix interrupt coalescing configuration + - thermal: intel: powerclamp: Fix cur_state for multi package system + - dm flakey: fix logic when corrupting a bio + - dm cache: free background tracker's queued work in btracker_destroy + - dm flakey: don't corrupt the zero page + - dm flakey: fix a bug with 32-bit highmem systems + - hwmon: (peci/cputemp) Fix off-by-one in coretemp_label allocation + - hwmon: (nct6775) Fix incorrect parenthesization in nct6775_write_fan_div() + - spi: intel: Check number of chip selects after reading the descriptor + - ARM: dts: qcom: sdx65: Add Qcom SMMU-500 as the fallback for IOMMU node + - ARM: dts: qcom: sdx55: Add Qcom SMMU-500 as the fallback for IOMMU node + - ARM: dts: exynos: correct TMU phandle in Exynos4210 + - ARM: dts: exynos: correct TMU phandle in Exynos4 + - ARM: dts: exynos: correct TMU phandle in Odroid XU3 family + - ARM: dts: exynos: correct TMU phandle in Exynos5250 + - ARM: dts: exynos: correct TMU phandle in Odroid XU + - ARM: dts: exynos: correct TMU phandle in Odroid HC1 + - arm64: acpi: Fix possible memory leak of ffh_ctxt + - arm64: mm: hugetlb: Disable HUGETLB_PAGE_OPTIMIZE_VMEMMAP + - arm64: Reset KASAN tag in copy_highpage with HW tags only + - fuse: add inode/permission checks to fileattr_get/fileattr_set + - rbd: avoid use-after-free in do_rbd_add() when rbd_dev_create() fails + - ceph: update the time stamps and try to drop the suid/sgid + - regulator: core: Use ktime_get_boottime() to determine how long a regulator + was off + - panic: fix the panic_print NMI backtrace setting + - mm/hwpoison: convert TTU_IGNORE_HWPOISON to TTU_HWPOISON + - genirq/msi, platform-msi: Ensure that MSI descriptors are unreferenced + - genirq/msi: Take the per-device MSI lock before validating the control + structure + - spi: spi-sn-f-ospi: fix duplicate flag while assigning to mode_bits + - alpha: fix FEN fault handling + - dax/kmem: Fix leak of memory-hotplug resources + - mips: fix syscall_get_nr + - media: ipu3-cio2: Fix PM runtime usage_count in driver unbind + - remoteproc/mtk_scp: Move clk ops outside send_lock + - vfio: Fix NULL pointer dereference caused by uninitialized group->iommufd + - docs: gdbmacros: print newest record + - mm: memcontrol: deprecate charge moving + - mm/thp: check and bail out if page in deferred queue already + - ktest.pl: Give back console on Ctrt^C on monitor + - kprobes: Fix to handle forcibly unoptimized kprobes on freeing_list + - ktest.pl: Fix missing "end_monitor" when machine check fails + - ktest.pl: Add RUN_TIMEOUT option with default unlimited + - memory tier: release the new_memtier in find_create_memory_tier() + - ring-buffer: Handle race between rb_move_tail and rb_check_pages + - tools/bootconfig: fix single & used for logical condition + - tracing/eprobe: Fix to add filter on eprobe description in README file + - iommu/amd: Add a length limitation for the ivrs_acpihid command-line + parameter + - scsi: aacraid: Allocate cmd_priv with scsicmd + - scsi: qla2xxx: Fix link failure in NPIV environment + - scsi: qla2xxx: Check if port is online before sending ELS + - scsi: qla2xxx: Fix DMA-API call trace on NVMe LS requests + - scsi: qla2xxx: Remove unintended flag clearing + - scsi: qla2xxx: Fix erroneous link down + - scsi: qla2xxx: Remove increment of interface err cnt + - scsi: ses: Don't attach if enclosure has no components + - scsi: ses: Fix slab-out-of-bounds in ses_enclosure_data_process() + - scsi: ses: Fix possible addl_desc_ptr out-of-bounds accesses + - scsi: ses: Fix possible desc_ptr out-of-bounds accesses + - scsi: ses: Fix slab-out-of-bounds in ses_intf_remove() + - RISC-V: add a spin_shadow_stack declaration + - riscv: Avoid enabling interrupts in die() + - riscv: mm: fix regression due to update_mmu_cache change + - riscv: jump_label: Fixup unaligned arch_static_branch function + - riscv: ftrace: Fixup panic by disabling preemption + - riscv, mm: Perform BPF exhandler fixup on page fault + - riscv: ftrace: Remove wasted nops for !RISCV_ISA_C + - riscv: ftrace: Reduce the detour code size to half + - MIPS: DTS: CI20: fix otg power gpio + - PCI/PM: Observe reset delay irrespective of bridge_d3 + - PCI: Unify delay handling for reset and resume + - PCI: hotplug: Allow marking devices as disconnected during bind/unbind + - PCI: Avoid FLR for AMD FCH AHCI adapters + - PCI/DPC: Await readiness of secondary bus after reset + - bus: mhi: ep: Only send -ENOTCONN status if client driver is available + - bus: mhi: ep: Move chan->lock to the start of processing queued ch ring + - bus: mhi: ep: Save channel state locally during suspend and resume + - iommufd: Make sure to zero vfio_iommu_type1_info before copying to user + - iommufd: Do not add the same hwpt to the ioas->hwpt_list twice + - iommu/vt-d: Avoid superfluous IOTLB tracking in lazy mode + - iommu/vt-d: Fix PASID directory pointer coherency + - vfio/type1: exclude mdevs from VFIO_UPDATE_VADDR + - vfio/type1: prevent underflow of locked_vm via exec() + - vfio/type1: track locked_vm per dma + - vfio/type1: restore locked_vm + - drm/amd: Fix initialization for nbio 7.5.1 + - drm/i915/quirks: Add inverted backlight quirk for HP 14-r206nv + - drm/radeon: Fix eDP for single-display iMac11,2 + - drm/i915: Don't use stolen memory for ring buffers with LLC + - drm/i915: Don't use BAR mappings for ring buffers with LLC + - drm/gud: Fix UBSAN warning + - drm/edid: fix AVI infoframe aspect ratio handling + - drm/edid: fix parsing of 3D modes from HDMI VSDB + - qede: avoid uninitialized entries in coal_entry array + - brd: use radix_tree_maybe_preload instead of radix_tree_preload + - net: avoid double iput when sock_alloc_file fails + - Linux 6.2.3 + + * Miscellaneous Ubuntu changes + - [Config] update annotations after applying 6.2.3 stable patches + - [Config] update annotations after applying 6.2.6 stable patches + + -- Andrea Righi Tue, 14 Mar 2023 16:43:44 +0100 + +linux (6.2.0-16.16) lunar; urgency=medium + + * lunar/linux: 6.2.0-16.16 -proposed tracker (LP: #2009914) + + * linux-libc-dev is no longer multi-arch safe (LP: #2009355) + - Revert "UBUNTU: [Packaging] install headers to debian/linux-libc-dev + directly" + + * linux: CONFIG_SERIAL_8250_MID=y (LP: #2009283) + - [Config] enable CONFIG_SERIAL_8250_MID=y + + * cpufreq: intel_pstate: Update Balance performance EPP for Sapphire Rapids + (LP: #2008519) + - cpufreq: intel_pstate: Adjust balance_performance EPP for Sapphire Rapids + + -- Andrea Righi Fri, 10 Mar 2023 18:34:28 +0100 + +linux (6.2.0-15.15) lunar; urgency=medium + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: document annotations headers + + -- Andrea Righi Fri, 10 Mar 2023 07:36:59 +0100 + +linux (6.2.0-14.14) lunar; urgency=medium + + * lunar/linux: 6.2.0-14.14 -proposed tracker (LP: #2009856) + + * Miscellaneous Ubuntu changes + - [Packaging] rust: add rust build dependencies to all arches + - [Packaging] Support skipped dkms modules + - [Packaging] actually enforce set -e in dkms-build--nvidia-N + - [Packaging] Preserve the correct log file variable value + - [Packaging] update getabis + + -- Andrea Righi Thu, 09 Mar 2023 16:40:36 +0100 + +linux (6.2.0-13.13) lunar; urgency=medium + + * lunar/linux: 6.2.0-13.13 -proposed tracker (LP: #2009704) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/master) + + * mt7921: add support of MTFG table (LP: #2009642) + - wifi: mt76: mt7921: add support to update fw capability with MTFG table + + -- Andrea Righi Wed, 08 Mar 2023 14:40:25 +0100 + +linux (6.2.0-12.12) lunar; urgency=medium + + * lunar/linux: 6.2.0-12.12 -proposed tracker (LP: #2009698) + + * Miscellaneous Ubuntu changes + - SAUCE: enforce rust availability only on x86_64 + - [Config] update CONFIG_RUST_IS_AVAILABLE + + -- Andrea Righi Wed, 08 Mar 2023 12:50:15 +0100 + +linux (6.2.0-11.11) lunar; urgency=medium + + * lunar/linux: 6.2.0-11.11 -proposed tracker (LP: #2009697) + + * Miscellaneous Ubuntu changes + - [Packaging] do not stop the build if rust is not available + + -- Andrea Righi Wed, 08 Mar 2023 12:24:55 +0100 + +linux (6.2.0-10.10) lunar; urgency=medium + + * lunar/linux: 6.2.0-10.10 -proposed tracker (LP: #2009673) + + * Packaging resync (LP: #1786013) + - debian/dkms-versions -- update from kernel-versions (main/master) + + * enable Rust support in the kernel (LP: #2007654) + - [Packaging] propagate makefile variables to kernelconfig + - SAUCE: rust: fix regexp in scripts/is_rust_module.sh + - SAUCE: scripts: rust: drop is_rust_module.sh + - SAUCE: rust: allow to use INIT_STACK_ALL_ZERO + - SAUCE: scripts: Exclude Rust CUs with pahole + - SAUCE: modpost: support arbitrary symbol length in modversion + - SAUCE: allows to enable Rust with modversions + - SAUCE: rust: properly detect the version of libclang used by bindgen + - [Packaging] rust: add the proper make flags to enable rust support + - [Packaging] add rust dependencies + - [Packaging] bpftool: always use vmlinux to generate headers + - [Packaging] run rustavailable target as debugging before build + - [Config] enable Rust support + + * Fail to output sound to external monitor which connects via docking station + (LP: #2009024) + - [Config] Enable CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM + + * Miscellaneous Ubuntu changes + - SAUCE: Makefile: replace rsync with tar + + -- Andrea Righi Wed, 08 Mar 2023 12:01:56 +0100 + +linux (6.2.0-1.1) lunar; urgency=medium + + * lunar/linux: 6.2.0-1.1 -proposed tracker (LP: #2009621) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + - debian/dkms-versions -- update from kernel-versions (main/master) + + * kinetic: apply new apparmor and LSM stacking patch set (LP: #1989983) + - SAUCE: apparmor: Add fine grained mediation of posix mqueues + - SAUCE: apparmor: add user namespace creation mediation + + * Lunar update: v6.2.2 upstream stable release (LP: #2009358) + - ALSA: hda: cs35l41: Correct error condition handling + - crypto: arm64/sm4-gcm - Fix possible crash in GCM cryption + - bpf: bpf_fib_lookup should not return neigh in NUD_FAILED state + - vc_screen: don't clobber return value in vcs_read + - drm/amd/display: Move DCN314 DOMAIN power control to DMCUB + - drm/amd/display: Properly reuse completion structure + - scripts/tags.sh: fix incompatibility with PCRE2 + - wifi: rtw88: usb: Set qsel correctly + - wifi: rtw88: usb: send Zero length packets if necessary + - wifi: rtw88: usb: drop now unnecessary URB size check + - usb: dwc3: pci: add support for the Intel Meteor Lake-M + - USB: serial: option: add support for VW/Skoda "Carstick LTE" + - usb: gadget: u_serial: Add null pointer check in gserial_resume + - arm64: dts: uniphier: Fix property name in PXs3 USB node + - usb: typec: pd: Remove usb_suspend_supported sysfs from sink PDO + - USB: core: Don't hold device lock while reading the "descriptors" sysfs file + - Linux 6.2.2 + + * Lunar update: v6.2.1 upstream stable release (LP: #2009127) + - uaccess: Add speculation barrier to copy_from_user() + - x86/alternatives: Introduce int3_emulate_jcc() + - x86/alternatives: Teach text_poke_bp() to patch Jcc.d32 instructions + - x86/static_call: Add support for Jcc tail-calls + - HID: mcp-2221: prevent UAF in delayed work + - wifi: mwifiex: Add missing compatible string for SD8787 + - audit: update the mailing list in MAINTAINERS + - platform/x86/amd/pmf: Add depends on CONFIG_POWER_SUPPLY + - platform/x86: nvidia-wmi-ec-backlight: Add force module parameter + - ext4: Fix function prototype mismatch for ext4_feat_ktype + - randstruct: disable Clang 15 support + - bpf: add missing header file include + - Linux 6.2.1 + + * Fix mediatek wifi driver crash when loading wrong SAR table (LP: #2009118) + - wifi: mt76: mt7921: fix error code of return in mt7921_acpi_read + + * overlayfs mounts as R/O over idmapped mount (LP: #2009065) + - SAUCE: overlayfs: handle idmapped mounts in ovl_do_(set|remove)xattr + + * RaptorLake: Fix the Screen is shaking by onboard HDMI port in mirror mode + (LP: #1993561) + - drm/i915/display: Drop check for doublescan mode in modevalid + - drm/i915/display: Prune Interlace modes for Display >=12 + + * screen flicker after PSR2 enabled (LP: #2007516) + - SAUCE: drm/i915/display/psr: Disable PSR2 sel fetch on panel SHP 5457 + + * [23.04 FEAT] Support for new IBM Z Hardware (IBM z16) - Reset DAT-Protection + facility support (LP: #1982378) + - s390/mm: add support for RDP (Reset DAT-Protection) + + * [23.04 FEAT] zcrypt DD: AP command filtering (LP: #2003637) + - s390/zcrypt: introduce ctfm field in struct CPRBX + + * rtcpie in timers from ubuntu_kernel_selftests randomly failing + (LP: #1814234) + - SAUCE: selftest: rtcpie: Force passing unreliable subtest + + * [23.04 FEAT] Support for List-Directed IPL and re-IPL from ECKD DASD + (LP: #2003394) + - s390/ipl: add DEFINE_GENERIC_LOADPARM() + - s390/ipl: add loadparm parameter to eckd ipl/reipl data + + * Miscellaneous Ubuntu changes + - SAUCE: drm/i915/sseu: fix max_subslices array-index-out-of-bounds access + - SAUCE: mtd: spi-nor: Fix shift-out-of-bounds in spi_nor_set_erase_type + - SAUCE: Revert "fbdev: Make registered_fb[] private to fbmem.c" + - [Packaging] disable signing for ppc64el + - [Config] define CONFIG_SECURITY_APPARMOR_RESTRICT_USERNS + - SAUCE: Revert "arm64/fpsimd: Make kernel_neon_ API _GPL" + + -- Andrea Righi Tue, 07 Mar 2023 18:45:31 +0100 + +linux (6.2.0-0.0) lunar; urgency=medium + + * Empty entry + + -- Andrea Righi Fri, 03 Mar 2023 08:42:43 +0100 + +linux-unstable (6.2.0-10.10) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-10.10 -proposed tracker (LP: #2007818) + + * Built-in camera device dies after runtime suspended (LP: #2007530) + - SAUCE: usb: xhci: Workaround for runpm issue on AMD xHC + + * Miscellaneous Ubuntu changes + - [Config] update annotations after rebase to v6.2 + + [ Upstream Kernel Changes ] + + * Rebase to v6.2 + + -- Andrea Righi Mon, 20 Feb 2023 10:36:20 +0100 + +linux-unstable (6.2.0-9.9) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-9.9 -proposed tracker (LP: #2007069) + + * Move kernel ADT tests to python3 (LP: #2004429) + - [Debian] Use a python3 compatable kernel-testing repo + + * Mediatek FM350-GL wwan module failed to init: Invalid device status 0x1 + (LP: #2002089) + - SAUCE: Revert "net: wwan: t7xx: Add AP CLDMA" + - SAUCE: net: wwan: t7xx: Add AP CLDMA + - SAUCE: net: wwan: t7xx: Infrastructure for early port configuration + - SAUCE: net: wwan: t7xx: PCIe reset rescan + - SAUCE: net: wwan: t7xx: Enable devlink based fw flashing and coredump + collection + - SAUCE: net: wwan: t7xx: Devlink documentation + + * LXD containers using shiftfs on ZFS or TMPFS broken on 5.15.0-48.54 + (LP: #1990849) + - SAUCE: shiftfs: fix -EOVERFLOW inside the container + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: do not drop undefined configs in derivatives + - [Packaging]: annotations: fix _remove_entry() logic + - [Packaging] rsync no longer available on lunar + - [Packaging] annotations: Handle single-line annoation rules + - [Packaging] annotations: Preserve single-line annotation rules + - [Packaging] annotations: Fix linter errors + - [Packaging] annotations: Clean up policy writes + - [Packaging] annotations: Handle tabs in annotations file + - [Packaging] annotations: Fail on invalid lines + - [Packaging] annotations: Write out annotations with notes first + - [Packaging] annotations: Check validity of FLAVOUR_DEP + - [Config] update annotations to split configs with/without notes + - [Packaging] annotations: various code cleanups + - [Config] update annotations after rebase to v6.2-rc8 + + * Miscellaneous upstream changes + - selftests/net: mv bpf/nat6to4.c to net folder + + [ Upstream Kernel Changes ] + + * Rebase to v6.1-rc8 + + -- Andrea Righi Mon, 13 Feb 2023 09:32:18 +0100 + +linux-unstable (6.2.0-8.8) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-8.8 -proposed tracker (LP: #2004229) + + * Miscellaneous Ubuntu changes + - [Packaging] re-enable signing for ppc64el and s390x + - SAUCE: s390/decompressor: specify __decompress() buf len to avoid overflow + + -- Andrea Righi Tue, 31 Jan 2023 08:21:21 +0100 + +linux-unstable (6.2.0-7.7) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-7.7 -proposed tracker (LP: #2004142) + + -- Andrea Righi Mon, 30 Jan 2023 10:23:15 +0100 + +linux-unstable (6.2.0-6.6) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-6.6 -proposed tracker (LP: #2004138) + + * Miscellaneous Ubuntu changes + - [Packaging] debian/rules: Bring back 'editconfigs' + - [Packaging] debian/rules: 1-maintainer.mk -- Use make's if-else + - [Packaging] annotations: make sure to always drop undefined configs + - [Config] update annotations after rebase to v6.2-rc6 + + [ Upstream Kernel Changes ] + + * Rebase to v6.1-rc6 + + -- Andrea Righi Mon, 30 Jan 2023 09:20:26 +0100 + +linux-unstable (6.2.0-5.5) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-5.5 -proposed tracker (LP: #2003682) + + * [23.04] Kernel 6.2 does not boot on s390x (LP: #2003348) + - SAUCE Revert "zstd: import usptream v1.5.2" + - SAUCE: Revert "zstd: Move zstd-common module exports to + zstd_common_module.c" + + * Revoke & rotate to new signing key (LP: #2002812) + - [Packaging] Revoke and rotate to new signing key + + * CVE-2023-0179 + - netfilter: nft_payload: incorrect arithmetics when fetching VLAN header bits + + * [23.04] net/smc: Alibaba patches about tunable buffer sizes may cause errors + and need to be removed (kernel 6.2) (LP: #2003547) + - SAUCE: Revert "net/smc: Unbind r/w buffer size from clcsock and make them + tunable" + - SAUCE: Revert "net/smc: Introduce a specific sysctl for TEST_LINK time" + + * 5.15 stuck at boot on c4.large (LP: #1956780) + - SAUCE: Revert "PCI/MSI: Mask MSI-X vectors only on success" + + * Miscellaneous Ubuntu changes + - [Packaging] scripts/misc/kernelconfig: Disable config checks for mainline + builds + - [Packaging] annotations: add CONFIG_GCC_VERSION to the list of ignored + configs + + -- Andrea Righi Mon, 23 Jan 2023 08:20:26 +0100 + +linux-unstable (6.2.0-4.4) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-4.4 -proposed tracker (LP: #2003051) + + * Miscellaneous Ubuntu changes + - [Packaging] add python3 as a build dependency + - [Packaging] scripts/misc/kernelconfig: Rewrite + + -- Andrea Righi Tue, 17 Jan 2023 09:18:54 +0100 + +linux-unstable (6.2.0-3.3) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-3.3 -proposed tracker (LP: #2002939) + + * Enable kernel config for P2PDMA (LP: #1987394) + - [Config] Enable CONFIG_HSA_AMD_P2P + + * Miscellaneous Ubuntu changes + - SAUCE: (no-up) Remove obj- += foo.o hack + - SAUCE: (no-up) re-add ubuntu/ directory + - [Config] enable EFI handover protocol + - [Packaging] Fix module-check error when modules are compressed + - SAUCE: (no-up) do not remove debian directory by 'make mrproper' + - [Packaging] debian/rules: Drop AUTOBUILD + - [Packaging] debian/rules: Drop NOKERNLOG and PRINTSHAS env variables + - [Packaging] debian/rules: Replace skip variables with skip_checks + - [Packaging] checks/retpoline-check: Make 'skipretpoline' argument optional + - [Packaging] checks/module-signature-check: Add 'skip_checks' argument + - [Packaging] debian/rules: Rename 'skip_dbg' to 'do_dbgsym_package' + - [Packaging] debian/rules: Rename 'skip_checks' to 'do_skip_checks' + - [Packaging] debian/rules: Rename 'full_build' to 'do_full_build' + - [Packaging] debian/rules: Fix PPA debug package builds + - [Packaging] debian/rules: Remove debug package install directory earlier + - [Packaging] debian/rules: Remove unnecessary 'lockme_' variables + - [Packaging] debian/rules: Remove unused target 'diffupstream' + - [Packaging] debian/rules: Mark PHONY targets individually + - [Packaging] debian/rules: Clean up 'help' target output + - [Packaging] debian/rules: Clean up 'printenv' target output + - [Packaging] debian/rules: Add missing 'do_' variables to 'printenv' + - [Config] update annotations after rebase to v6.2-rc4 + + [ Upstream Kernel Changes ] + + * Rebase to v6.1-rc4 + + -- Andrea Righi Mon, 16 Jan 2023 16:01:40 +0100 + +linux-unstable (6.2.0-2.2) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-2.2 -proposed tracker (LP: #2001892) + + * Soundwire support for the Intel RPL Gen 0C40/0C11 platforms (LP: #2000030) + - SAUCE: ASoC: Intel: soc-acpi: add configuration for variant of 0C40 product + - SAUCE: ASoC: Intel: soc-acpi: add configuration for variant of 0C11 product + + * Miscellaneous Ubuntu changes + - [Config] update toolchain version in annotations + + * Miscellaneous upstream changes + - Revert "UBUNTU: [Packaging] Support skipped dkms modules" + + [ Upstream Kernel Changes ] + + * Rebase to v6.1-rc2 + + -- Andrea Righi Thu, 05 Jan 2023 09:19:55 +0100 + +linux-unstable (6.2.0-1.1) lunar; urgency=medium + + * lunar/linux-unstable: 6.2.0-1.1 -proposed tracker (LP: #2000904) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: remove configs that are undefined across all + arches/flavours + - SAUCE: Revert "apparmor: make __aa_path_perm() static" + - [Packaging] abi-check: ignore failures when abi check is skipped + - [Packaging] temporarily disable zfs dkms + - [Config] update annotations after rebase to 6.2-rc1 + + [ Upstream Kernel Changes ] + + * Rebase to v6.1-rc1 + + -- Andrea Righi Wed, 04 Jan 2023 12:08:32 +0100 + +linux-unstable (6.2.0-0.0) lunar; urgency=medium + + * Empty entry + + -- Andrea Righi Sun, 01 Jan 2023 10:16:00 +0100 + +linux (6.1.0-11.11) lunar; urgency=medium + + * lunar/linux: 6.1.0-11.11 -proposed tracker (LP: #2000704) + + * Packaging resync (LP: #1786013) + - [Packaging] update helper scripts + + * Lunar update: v6.1.1 upstream stable release (LP: #2000706) + - x86/vdso: Conditionally export __vdso_sgx_enter_enclave() + - libbpf: Fix uninitialized warning in btf_dump_dump_type_data + - PCI: mt7621: Add sentinel to quirks table + - mips: ralink: mt7621: define MT7621_SYSC_BASE with __iomem + - mips: ralink: mt7621: soc queries and tests as functions + - mips: ralink: mt7621: do not use kzalloc too early + - irqchip/ls-extirq: Fix endianness detection + - udf: Discard preallocation before extending file with a hole + - udf: Fix preallocation discarding at indirect extent boundary + - udf: Do not bother looking for prealloc extents if i_lenExtents matches + i_size + - udf: Fix extending file within last block + - usb: gadget: uvc: Prevent buffer overflow in setup handler + - USB: serial: option: add Quectel EM05-G modem + - USB: serial: cp210x: add Kamstrup RF sniffer PIDs + - USB: serial: f81232: fix division by zero on line-speed change + - USB: serial: f81534: fix division by zero on line-speed change + - xhci: Apply XHCI_RESET_TO_DEFAULT quirk to ADL-N + - staging: r8188eu: fix led register settings + - igb: Initialize mailbox message for VF reset + - usb: typec: ucsi: Resume in separate work + - usb: dwc3: pci: Update PCIe device ID for USB3 controller on CPU sub-system + for Raptor Lake + - cifs: fix oops during encryption + - KEYS: encrypted: fix key instantiation with user-provided data + - Linux 6.1.1 + + * Expose built-in trusted and revoked certificates (LP: #1996892) + - [Packaging] Expose built-in trusted and revoked certificates + + * Fix System cannot detect bluetooth after running suspend stress test + (LP: #1998727) + - wifi: rtw88: 8821c: enable BT device recovery mechanism + + * Gnome doesn't run smooth when performing normal usage with RPL-P CPU + (LP: #1998419) + - drm/i915/rpl-p: Add stepping info + + * Mute/mic LEDs no function on a HP platfrom (LP: #1998882) + - ALSA: hda/realtek: fix mute/micmute LEDs for a HP ProBook + + * Add additional Mediatek MT7922 BT device ID (LP: #1998885) + - Bluetooth: btusb: Add a new VID/PID 0489/e0f2 for MT7922 + + * Support Icicle Kit reference design v2022.10 (LP: #1993148) + - SAUCE: riscv: dts: microchip: Disable PCIe on the Icicle Kit + + * Add iommu passthrough quirk for Intel IPU6 on RaptorLake (LP: #1989041) + - SAUCE: iommu: intel-ipu: use IOMMU passthrough mode for Intel IPUs on Raptor + Lake + + * Enable Intel FM350 wwan CCCI driver port logging (LP: #1997686) + - net: wwan: t7xx: use union to group port type specific data + - net: wwan: t7xx: Add port for modem logging + + * TEE Support for CCP driver (LP: #1991608) + - crypto: ccp - Add support for TEE for PCI ID 0x14CA + + * Kinetic update: v5.19.17 upstream stable release (LP: #1994179) + - Revert "fs: check FMODE_LSEEK to control internal pipe splicing" + - kbuild: Add skip_encoding_btf_enum64 option to pahole + + * Kinetic update: v5.19.15 upstream stable release (LP: #1994078) + - Revert "clk: ti: Stop using legacy clkctrl names for omap4 and 5" + + * support independent clock and LED GPIOs for Intel IPU6 platforms + (LP: #1989046) + - SAUCE: platform/x86: int3472: support independent clock and LED GPIOs + + * Kernel livepatch support for for s390x (LP: #1639924) + - [Config] Enable EXPOLINE_EXTERN on s390x + + * Kinetic update: v5.19.7 upstream stable release (LP: #1988733) + - Revert "PCI/portdrv: Don't disable AER reporting in + get_port_device_capability()" + + * Kinetic update: v5.19.3 upstream stable release (LP: #1987345) + - Revert "mm: kfence: apply kmemleak_ignore_phys on early allocated pool" + + * Fix non-working e1000e device after resume (LP: #1951861) + - SAUCE: Revert "e1000e: Add polling mechanism to indicate CSME DPG exit" + + * Add additional Mediatek MT7921 WiFi/BT device IDs (LP: #1937004) + - SAUCE: Bluetooth: btusb: Add support for Foxconn Mediatek Chip + + * Fix system sleep on TGL systems with Intel ME (LP: #1919321) + - SAUCE: PCI: Serialize TGL e1000e PM ops + + * Fix broken e1000e device after S3 (LP: #1897755) + - SAUCE: e1000e: Increase polling timeout on MDIC ready bit + + * Fix unusable USB hub on Dell TB16 after S3 (LP: #1855312) + - SAUCE: USB: core: Make port power cycle a seperate helper function + - SAUCE: USB: core: Attempt power cycle port when it's in eSS.Disabled state + + * Set explicit CC in the headers package (LP: #1999750) + - [Packaging] Set explicit CC in the headers package + + * commit cf58599cded35cf4affed1e659c0e2c742d3fda7 seems to be missing in + kinetic master to remove "hio" reference from Makefile (LP: #1999556) + - SAUCE: remove leftover reference to ubuntu/hio driver + + * Miscellaneous Ubuntu changes + - [Packaging] kernelconfig: always complete all config checks + - [Packaging] annotations: unify same rule across all flavour within the same + arch + - [Config] annotations: compact annotations file + - [Config] disable EFI_ZBOOT + - SAUCE: input: i8042: fix section mismatch warning + - debian/dkms-versions -- re-enable zfs + - [Packaging] old-kernelconfig: update config-check path + - [Packaging] update getabis + - [Packaging] update Ubuntu.md + + * Miscellaneous upstream changes + - Revert "drm/i915/opregion: check port number bounds for SWSCI display power + state" + + -- Andrea Righi Fri, 30 Dec 2022 11:23:16 +0100 + +linux (6.1.0-10.10) lunar; urgency=medium + + * lunar/linux: 6.1.0-10.10 -proposed tracker (LP: #1999569) + + * Soundwire support for the Intel RPL Gen platforms (LP: #1997944) + - ASoC: Intel: sof_sdw: Add support for SKU 0C10 product + - ASoC: Intel: soc-acpi: add SKU 0C10 SoundWire configuration + - ASoC: Intel: sof_sdw: Add support for SKU 0C40 product + - ASoC: Intel: soc-acpi: add SKU 0C40 SoundWire configuration + - ASoC: Intel: sof_sdw: Add support for SKU 0C4F product + - ASoC: rt1318: Add RT1318 SDCA vendor-specific driver + - ASoC: intel: sof_sdw: add rt1318 codec support. + - ASoC: Intel: sof_sdw: Add support for SKU 0C11 product + - ASoC: Intel: soc-acpi: add SKU 0C11 SoundWire configuration + - SAUCE: ASoC: Intel: soc-acpi: update codec addr on 0C11/0C4F product + - [Config] enable CONFIG_SND_SOC_RT1318_SDW + + * Virtual GPU driver packaging regression (LP: #1996112) + - [Packaging] Reintroduce VM DRM drivers into modules + + -- Andrea Righi Tue, 13 Dec 2022 22:14:08 +0100 + +linux (6.1.0-9.9) lunar; urgency=medium + + * Empty entry (ABI bump) + + -- Andrea Righi Tue, 13 Dec 2022 21:31:08 +0100 + +linux (6.1.0-3.3) lunar; urgency=medium + + * lunar/linux: 6.1.0-3.3 -proposed tracker (LP: #1999534) + + * [DEP-8] Run ADT regression suite for lowlatency kernels Jammy and later + (LP: #1999528) + - [DEP-8] Fix regression suite to run on lowlatency + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: do not add constraints on toolchain versions + + -- Andrea Righi Tue, 13 Dec 2022 16:45:59 +0100 + +linux (6.1.0-2.2) lunar; urgency=medium + + * lunar/linux: 6.1.0-2.2 -proposed tracker (LP: #1999411) + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: do not enforce toolchain versions + + -- Andrea Righi Mon, 12 Dec 2022 17:05:59 +0100 + +linux (6.1.0-1.1) lunar; urgency=medium + + * lunar/linux: 6.1.0-1.1 -proposed tracker (LP: #1999373) + + * Packaging resync (LP: #1786013) + - [Packaging] update variants + + * Miscellaneous Ubuntu changes + - [Packaging] annotations: set and delete configs from command line + - [Packaging] migrateconfigs: ignore README.rst if it doesn't exist + - [Packaging] migrate-annotations: properly determine arches in derivatives + - [Packaging] annotations: allow to set note to config options directly + - [Packaging] annotations: assume --query as default command + - [Packaging] annotations: allow to query using CONFIG_